Създаване на 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 база данни през команден ред.