怎么處理Mysql局限連接報1130的問題
發表時間:2023-07-20 來源:明輝站整理相關軟件相關文章人氣:
[摘要]遠程連接Mysql服務器的數據庫,錯誤代碼是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQ...
遠程連接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
$ vi /etc/sysconfig/iptables
打開后在配置文件中增加一行
-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
mysql -u root -p
選擇mysql數據庫
mysql;use mysql;
查看mysql庫中的user表的host值(即可進行連接訪問的主機/IP名稱)
mysql;select 'host' from user where user='root';
修改host值(以通配符%的內容增加主機/IP地址),當然也可以直接增加IP地址
如果這步出錯”ERROR 1062 (23000): Duplicate entry ‘%-root’ for key ‘PRIMARY’” 由說明該記錄有了,跳過這步
mysql;update user set host = '%' where user ='root';
更改權限(root為賬戶名,%為主機名(任意主機),525099302為密碼 密碼可以自己選擇)
GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY "525099302";
刷新權限,mysql直接生效
flush privileges;
重起mysql服務即可完成。
以上就是如何解決Mysql限制連接報1130的問題的詳細內容,更多請關注php中文網其它相關文章!
學習教程快速掌握從入門到精通的SQL知識。