Host 'xxx' is not allowed to connect to this MySQL server

最近将项目移到品高云和阿里云遇到的问题数据库问题。

java.sql.SQLException: null,  message from server: "Host 'xxx' is not allowed to connect to this MySQL server":

java.sql.SQLException: Access denied for user 'root'@'xxx.xxx.xxx.xxx' at (数据库名)


表示该对象不是远程对象,不能通过该对象远程访问数据

解决:

方案一:改表:

use mysql ;select user,host,password from user;

update user set host = '%' where user='root';

方案二:授权法:

例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
无论使用哪种方案,请重启Mysql服务。

猜你喜欢

转载自dxl-xiaoli.iteye.com/blog/2254652