MySQL 8 — Предоставление прав на БД

В предыдущих версиях MySQL создание пользователя и предоставление ему прав на базу выполнялось командой, использующей сочетание GRANT и IDENTIFIED BY. В восьмой версии этот синтаксис выдает ошибку:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY 'secret'' at line 1

 

В MySQL 8 эти действия следует выполнять двумя командами:

mysql> CREATE USER 'yourhostdbuser'@'localhost' IDENTIFIED BY 'mypassword';
mysql> GRANT ALL ON yourhostdb.* TO 'yourhostdbuser'@'localhost';