1. 程式人生 > >遠端連線mysql“Lost connection to MySQL server at 'waiting for initial communication packet', system err”

遠端連線mysql“Lost connection to MySQL server at 'waiting for initial communication packet', system err”

 

現象

使用Navicat遠端連線mysql。無法連線成功。

這裡發個帖總結一下mysql配置遠端連線相關的一些東西。

 

1.開啟遠端連線(在mysql下操作)

授權root使用者

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '資料庫密碼' WITH GRANT OPTION;
  1. root:授權的mysql使用者名稱
  2. %:所有ip
  3. *.*:所有資料庫和所有資料庫下的所有表

使授權立即生效

flush privileges;​

2.開啟防火牆的3306埠

[[email protected] /]# vim /etc/sysconfig/iptables

補充上一條3306的tcp

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

3.重啟防火牆

service iptables restart

 

行了,到此為止!現在去試試可以遠端連線了沒?

如果還不行?那麼我們接著往下

 

 

4.修改my.cnf。

不知道my.cnf在哪的同學,先find一下

find / -name my.cnf
vim /etc/my.cnf

將bind-address=127.0.0.1給註釋掉,註釋完執行重啟一下mysql或者重新編譯一下

service mysql reload
或者
service mysql restart

 

現在再試試唄,如果還不行,那接著往下

 

5.跳過mysql的DNS反向解析,修改my.cnf檔案

[mysqld]
skip-name-resolve

新增一條:skip-name-resolve

6.修改完成之後,重啟或編譯一下mysql

service mysql reload
或者
service mysql restart

 

還不行?哇!我也沒轍了兄弟!我的就是反向解析的問題。