Създаване на Mysql база данни и потребител през команден ред

Помощен център

Създаване на Mysql база данни и потребител през команден ред

За да може да работи коректно MySQL трябва да има създадена база данни, потребител с парола и на потребителя да са присвоени права в базата данни.

В статията ще ви покажем колко бързо и лесно всичко това може да бъде направено само няколко команди през команден ред.

Най-напред трябва да се логнете в сървъра, на който е инсталиран MySQL, с root привилегии (потребител с пълни права).

След това се логваме в MySQL сървъра чрез потребителско име и парола, използвайки следната команда:

mysql -u user -p

  • след аргумента -u трябва да въведем името на MySQL потребителя.
  • аргумента -p показва на сървъра, че потребителя има парола.

При въвеждане на коректни данни за достъп ще се логнем успешно в MySQL сървъра:

VirtualBox:~$ mysql -u root -p
Enter password: 
mysql>

(Служебната информация, която сървъра показва при логване, е изтрита във всички примери).

Създаваме MySQL база данни със следната команда:

CREATE DATABASE database;

mysql> CREATE DATABASE clidata;
Query OK, 1 row affected (0.01 sec)

Създаваме MySQL потребител и парола:

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';

mysql> CREATE USER 'cliuser'@'localhost' IDENTIFIED BY 'cli098passwd';
Query OK, 0 rows affected (0.00 sec)`

Даваме пълни права на потребителя в базата данни:

GRANT ALL ON database.* TO 'username'@'localhost';

mysql> GRANT ALL ON clidata.* TO 'cliuser'@'localhost';
Query OK, 0 rows affected (0.00 sec)

Важно: внимавайте да не изтриете единичните кавички около името на потребителя, localhost и паролата тъй като ако го направите, сървъра ще отговори с грешка.

Сървърът кешира информация в паметта като резултат от командите GRANT, CREATE USER и др. За да освободим кешираната памет и да активираме промените трябва да изпълним командата:

flush privileges;

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

Сега ще проверим дали наистина имаме създадена нова база данни с потребител и парола, като изпълним няколко основни команди.

Командата show databases ни показва всички бази данни в MySQL сървъра, а командата show tables ни показва таблиците в база данни, ако има създадени такива:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| clidata            |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.00 sec)

mysql> show tables;
ERROR 1046 (3D000): No database selected
mysql> Bye

В списъка е и базата данни clidata, която ние създадохме. Втората команда върна грешка, защото не сме избрали конкретна база данни. Умишлено изпълнихме тази команда заради втората част от нашия тест.

Излизаме от mysql с CTRL+D и се логваме отново в новата база данни със създадените от нас потребител и парола:

VirtualBox:~$ mysql -ucliuser -p clidata
Enter password: 
mysql> show tables;
Empty set (0.00 sec)

Този път сървъра ни отговори, че в базата данни няма създадени таблици - т.е. успешно се логнахме в новата база данни clidata с новия потребител cliuser и неговата парола cli098passwd.

В следващи статии ще ви покажем как може да управлявате MySQL база данни през команден ред.