这个真是让人莫名其妙。我希望我没有做愚蠢的事情,但这没有意义。我在 Ubuntu 上安装了一个新的 MySQL 5.7,以 root 身份在本地登录到 mysql 并运行以下命令:
CREATE USER 'root'@'%' IDENTIFIED BY 'password';
Run Code Online (Sandbox Code Playgroud)
成功!
接下来,我运行了这个:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
Run Code Online (Sandbox Code Playgroud)
没有布埃诺。这导致了以下错误:
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 '*.* TO 'root'@'%' WITH GRANT OPTION' at line 1
Run Code Online (Sandbox Code Playgroud)
跆拳道?我已经在 MySQL 服务器上运行该命令 2 年了。为什么不起作用?正如任何优秀的小开发人员都会做的那样,我决定使用 RTM。这是 5.7 手册中给出的示例(http://dev.mysql.com/doc/refman/5.7/en/adding-users.html):
mysql> GRANT ALL PRIVILEGES ON *.* TO 'finley'@'%'
-> WITH GRANT OPTION;
Run Code Online (Sandbox Code Playgroud)
我在服用疯狂的药丸吗?除了用户名,这正是我所做的。这应该可以正常工作,对吧???互联网上报告这个问题的其他人令人困惑地缺乏,所以我认为我必须只是掩盖一些明显的事情,但我已经深入研究了 2 个小时,只是无法弄清楚。提前致谢。
脑补了几分钟,想起来了,在新安装中,默认情况下,用户“root@%”不存在,必须单独创建。
这必须为您工作:
CREATE USER 'root'@'%' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9981 次 |
| 最近记录: |