博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

雾里看花

Linux,FreeBSD.,C/C++ ,JAVA ,perl,Networksecurity Mysql,Oracle,DB2 懒惰只能使人更加愚蠢!
  ghan.cublog.cn

关于作者
姓名:ghan
职业:计算机业
年龄:23
位置:广东省--梅州
E-mail:6220104@qq.com
免责声明:本站文章,大部份为网上收集整理,转载请注明出处
|| << >> ||
我的分类


无法远程登入MySQL Server解决
无法远程登入MySQL Server解决    
如果你想连接你的mysql的时候发生这个错误:
ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server
解决方法:
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数
据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -pvmware;
mysql>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' 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,本机链接的时候却老是报192.168.0.4 is not allowed to connect to this mysql server.很是郁闷。
原以为是iptables把端口给屏蔽了,但是用netstat看了一下,3306是开着的,然后又修改了etc/sysconfig/iptables中的配置。
加入了下面一段:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
重启服务后,以为OK了,可还是没有用。不得不上网差了资料,找到了解决办法:
1、进入mysql,创建一个新用户xuys:
格式:grant 权限 on 数据库名.表名 用户@登录主机 identified by "用户密码";
grant select,update,insert,delete on *.* to xuys@192.168.88.234 identified by "xuys1234";
查看结果,执行:
use mysql;
select host,user,password from user;
可以看到在user表中已有刚才创建的xuys用户。host字段表示登录的主机,其值可以用IP,也可用主机名,
将host字段的值改为%就表示在任何客户端机器上能以xuys用户登录到mysql服务器,建议在开发时设为%。
update user set host = '%' where user = 'xuys';
2、 ./mysqladmin -uroot -p21century reload
./mysqladmin -uroot -p21century shutdown
3、./mysqld_safe --user-root &
记住:对授权表的任何修改都需要重新reload,即执行第3步。
如果经过以上3个步骤还是无法从客户端连接,请执行以下操作,在mysql数据库的db表中插入一条记录:
use mysql;
insert into db values('192.168.88.234','%','xuys','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
update db set host = '%' where user = 'xuys';
重复执行上面的第2、3步。
如果有phpMyAdmin的话,可以直接在phpMyAdmin中操作

发表于: 2007-11-17,修改于: 2007-11-17 20:53,已浏览187次,有评论0条 推荐 投诉


网友评论
 发表评论