我安装的mysql和apache不在同一个服务器上,并且两个服务器地址也不在同一个域上,通过apache上的程序连接mysql总是出现如下提示:Can't connect to wme.lzu.edu.cn. Errorcode: Can't connect to MySQL server on 'wme.lzu.edu.cn' (4) (mysql就在wme.lzu.edu.cn这个服务器上)
我已经试过一下办法了,也不行,希望哪位高手能帮帮小弟,先谢过了!改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" mysql -u root -pvmwaremysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql>select host, user from user; 2、授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WI TH GRANT OPTION; 如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 我用的第一个方法,刚开始发现不行,在网上查了一下,少执行一个语句 mysql>FLUSH RIVILEGES 使修改生效,就可以了
我已经试过一下办法了,也不行,希望哪位高手能帮帮小弟,先谢过了!改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" mysql -u root -pvmwaremysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql>select host, user from user; 2、授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WI TH GRANT OPTION; 如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 我用的第一个方法,刚开始发现不行,在网上查了一下,少执行一个语句 mysql>FLUSH RIVILEGES 使修改生效,就可以了
mysql> select user,host from mysql.user;
+-------------+------------------------+
| user | host |
+-------------+------------------------+
| dbadmin | % |
| mice | % |
| root | % |
| root | lancelot.math.kent.edu |
| mice | localhost |
| root | localhost |
| wme | localhost |
| wme_back | localhost |
| wme_cn | localhost |
| wme_kimpton | localhost |
+-------------+------------------------+
10 rows in set (0.08 sec)
另外出错信息看上去是不是网络根本不通? 有可能的话, ping 一下。
| dbadmin | % |
| mice | % |
| root | %