解决远程链接mysql错误1130代码的方法
今天在用远程链接Mysql服务器的数据库,无论怎么弄都是链接不到,错误代码是1130,ERROR 1130: Host 192.168.2.159 is not allowed to connect to this MySQL server
猜测是没法给远程链接的用户权限问题。结果这样子操做mysql库,便可解决。在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。。
mysql -u root -p
mysql>use mysql;
mysql>select 'host' from user where user='root';
mysql>update user set host = '%' where user ='root';
mysql>flush privileges;
mysql>select 'host' from user where user='root';
第一句是以权限用户root登陆
第二句:选择mysql库
第三句:查看mysql库中的user表的host值(便可进行链接访问的主机/IP名称)
第四句:修改host值(以通配符%的内容增长主机/IP地址),固然也能够直接增长IP地址
第五句:刷新MySQL的系统权限相关表
第六句:再从新查看user表时,有修改。。
重起mysql服务便可完成。 mysql
============================================================== sql
本机的mysql数据库中有两条user='root'的记录,将其中一条host='localhost'的host修改成'%'后,虽然能够经过远程访问数据库了,可是使用localhost或者127.0.0.1又没法访问数据库了。 数据库
通过一番折腾,发现能够经过建立用户的方法来解决这个问题。不须要修改user表中的任何数据,在本地用root登录mysql后,执行下面的语句,建立用户名为'root',密码为'123456'的用户。执行完之后,查看user表,发现新增了一条host='%',user='root'的记录,而且各项权限与其它'root'同样,再次使用192.168.1.13进行访问,发现能够正常访问了。 服务器
grant all
on *.*
to root identified by '123456'
with grant option;
若是访问还有问题,能够执行一下flush privileges; ide