我想在mysql中创建新的数据库。
我以root身份登录。我为root用户设置了密码。
mysql> SHOW GRANTS FOR root;
+---------------------------------------------------------------------------------------------+
| Grants for root@% |
+---------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY PASSWORD <secret> WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'%' WITH GRANT OPTION
|
+---------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
mysql> create database xxx;
ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'xxx'
有一点我注意到我没有mysql db
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| info_schema |
| sms_auto |
| smstest |
+--------------------+
请你帮帮我
答案 0 :(得分:0)
确保正确设置用户权限 喜欢-host localhost -user root和-pass {你的密码}
在上授予所有特权。通过密码识别''%'@'%'。将用户权限设置为像人一样的特定用户,然后按照示例授予所有人权限。*到'root'@'localhost'由'PASSWORD'标识;
答案 1 :(得分:0)
我已经在安全模式下启动了MySQL,然后分配了适当的权限(参考here)
在此之后,我更新了mysql.user表中适当主机和用户的权限。同花顺特权;
现在这对我有用 您也可以参考update privilages
的答案