Aks*_*ani 17 mysql sql database
我使用MySQL已有好几年了,创建新用户的命令直到MySQL 5.x版本如下:
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password';
Run Code Online (Sandbox Code Playgroud)
最近我安装了MySQL 8.在那,这个命令不起作用.
在触发上述命令时抛出以下错误:
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 'password'' at line 1
Run Code Online (Sandbox Code Playgroud)
MySQL 8中的语法有什么变化吗?在MySQL 8中创建新用户命令的正确语法是什么?
注意:我在MySQL 5.x版本中尝试了这种语法.它正常工作.
小智 29
试试这个:
use mysql;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON *.* TO 'username'@'localhost';
flush privileges;
Run Code Online (Sandbox Code Playgroud)
小智 7
从 MySQL 最新版本来看 -
创建用户 -
CREATE USER 'newuser1'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Password@123';
GRANT ALL ON *.* TO 'newuser1'@'localhost';
Run Code Online (Sandbox Code Playgroud)
这是创建新用户并授予权限的两行代码。
使用 MySQL 社区服务器版本8.0.26Windows 10 x64 位服务器。