: java.sql.SQLException: null, message from server: "Host 'skylong' is not allo

1。 改表法。

可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

mysql -u root -p123456>use mysql;

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

mysql>select host, user from user;

2. 授权法。

例如,你想root使用123456从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

FLUSH   PRIVILEGES;

如果你想允许用户muser从ip为192.168.1.116的主机连接到mysql服务器,并使用123456作为密码

GRANT ALL PRIVILEGES ON *.* TO 'muser'@'192.168.1.116' IDENTIFIED BY '123456' WITH GRANT OPTION;

FLUSH   PRIVILEGES;

如果你想允许用户muser从ip为192.168.1.116的主机连接到mysql服务器的test数据库,并使用123456作为密码

GRANT ALL PRIVILEGES ON dk.* TO 'muser'@'192.168.1.116' IDENTIFIED BY '123456' WITH GRANT OPTION;

FLUSH   PRIVILEGES;

猜你喜欢

转载自crelon2012.iteye.com/blog/1982147