我正在尝试在c#中编写一个MySQL客户端来访问MySQl远程服务器以获取一些数据并且我不断收到此错误:
host 192.168.2.1 is not allowed to connect to this mysql server
我找到了解决方案:
mysql> GRANT ALL ON *.* to root@'192.168.2.1' IDENTIFIED BY 'your-root-password';
mysql> FLUSH PRIVILEGES;
这意味着对于每个IP我都应该这样做吗?
我会在游戏中使用它,所以有没有更好的解决方案?
答案 0 :(得分:2)
对所有IP使用%
。
GRANT ALL ON *.* to root@'%' IDENTIFIED BY 'your-root-password';
您应该考虑创建/使用除root
之外的其他用户。可以创建一个特定于您的应用程序,只能访问特定数据库。
答案 1 :(得分:1)
你真的不应该有root @'%'用户。除此之外,您可以在主机中使用%作为通配符。
如果您想要所有主机,请使用'user'@'%',如果您希望所有使用host1的主机使用'user'@'host1-%'等等。