将root用户对我的数据库的访问权限授予另一台计算机以进行远程访问

时间:2019-05-08 16:43:32

标签: mysql phpmyadmin

我想从位于不同网络下的计算机连接到SQL数据库,由于某种原因,在SQL控制台中它告诉我语法错误,我试图以不同的方式键入它而没有结果而且我看不到我在哪里搞乱

错误1064(42000):您的SQL语法有错误;在第1行的“ IDENTIFIED BY'mypassword'WITH GRANT OPTION”附近使用与您的MySQL服务器版本相对应的手册以获取正确的语法 mysql>

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

错误1064(42000):您的SQL语法有错误;在第1行的“ IDENTIFIED BY'mypassword'WITH GRANT OPTION”附近使用与您的MySQL服务器版本对应的手册以获取正确的语法

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY mypassword WITH GRANT OPTION;

错误1064(42000):您的SQL语法有错误;在第1行的“ IDENTIFIED BY'mypassword'WITH GRANT OPTION”附近使用与您的MySQL服务器版本对应的手册以获取正确的语法

GRANT ALL PRIVILEGES ON *.* TO 'root'@'ipv4 adress from the other computer' IDENTIFIED BY mypassword WITH GRANT OPTION;

错误1064(42000):您的SQL语法有错误;在第1行的“ IDENTIFIED BY'mypassword'WITH GRANT OPTION”附近使用与您的MySQL服务器版本对应的手册以获取正确的语法

GRANT ALL PRIVILEGES ON *.* TO 'root'@'ipv4 adress from the other computer' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

此外,如果我无权访问另一台计算机,该如何验证它是否已从另一台计算机连接到数据库?

1 个答案:

答案 0 :(得分:-1)

如果这是MySQL 8+,则需要执行两步帐户初始化。 GRANT语句已been changedauth_option已被删除,因此它不再接受IDENTIFIED BY作为语法的一部分。

GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' WITH GRANT OPTION;
SET PASSWORD FOR 'user'@'%' = 'user_password';

SET PASSWORD现在作为单独的操作是必需的。