如何解决Mysql限制连接报1130的问题


本文摘自PHP中文网,作者一个新手,侵删。

远程连接Mysql服务器的数据库,错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server
猜想两种原因:一个是因为MySQL的限制,一个是防火墙的限制。
1.解决防火墙限制:
在MySQL服务主机上将防火墙关闭或者在防火墙高级设置里面加入出入站规则,加上MySQL的端口,允许通过MySQL的端口进行访问主机。

修改防火墙配置 (系统不一样,防火墙配置文件不一样) 博主的是centos7下安装的iptables

1

$ vi /etc/sysconfig/iptables

打开后在配置文件中增加一行

1

-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

然后保存并退出

重启防火墙(centos7)

systemctlrestart iptables.service

2.解决MySQL的限制,在MySQL服务主机上执行下列sql

在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称’%’即可

登录mysql

1

mysql -u root -p

选择mysql数据库

1

mysql;use mysql;

查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)

1

mysql;select 'host' from user where user='root';

修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址
如果这步出错”ERROR 1062 (23000): Duplicate entry ‘%-root’ for key ‘PRIMARY’” 由说明该记录有了,跳过这步

1

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

更改权限(root为账户名,%为主机名(任意主机),525099302为密码 密码可以自己选择

1

GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY "525099302";

刷新权限,mysql直接生效

1

flush privileges;

重起mysql服务即可完成。

以上就是如何解决Mysql限制连接报1130的问题的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

mysql启动报错的解决方法

mysql中的join操作实例分享

如何在mysql中利用数据库表创建视图?

mysql并列排名和顺序排名查询

mysql中使用group by 是总是出现1055的错误(推荐)

详解分析mysql8.0的内存消耗

一个单引号会引发mysql性能损失吗

mysql数据备份方法的选择与思考

怎么修改phpmyadmin的上传文件大小限制

mysql主从复制是什么?如何配置实现?

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...