Mysql串連錯誤:Lost connection to Mysql server at 'waiting for initial communication packet'

來源:互聯網
上載者:User

標籤:sys   log   err   mysql授權   主機名稱   ima   提高   alt   禁用   

 

在遠端連線mysql的時候,串連不上,出現如下報錯:
Lost connection to MySQL server at ‘waiting for initial communication packet‘, system error: 0
如下:

原因分析:
mysql開啟了DNS的反向解析功能,這樣mysql對串連的用戶端會進行DNS主機名稱尋找。
mysql處理用戶端解析過程:
1)當mysql的client連過來的時候,伺服器會主動去查client的網域名稱。
2)首先尋找 /etc/hosts 檔案,搜尋網域名稱和IP的對應關係。
3)如果hosts檔案沒有,則尋找DNS設定,進行DNS反向解析,直到timeout串連失敗。
mysql的DNS反向解析:
1)mysql接收到串連請求後,獲得的是用戶端的ip,為了更好的匹配mysql.user裡的許可權記錄(某些是用hostname定義的)。
2)如果mysql伺服器設定了dns伺服器,並且用戶端ip在dns上並沒有相應的hostname,那麼這個過程很慢,導致串連等待。

解決方案:
1)把client的ip寫在mysql伺服器的/etc/hosts檔案裡,隨便給個名字做主機映射即可。
2)在my.cnf設定檔中的[mysqld]地區添加skip-name-resolve,即跳過mysql串連的DNS反向解析功能,這樣能很好地提高mysql效能。在這種情況下,就只能使用MySQL授權表中的IP來串連mysql服務了。
對於第一種方法顯然比較笨,也不實用!強烈推薦第二種方法,添加skip-name-resolve選項可以禁用dns解析,這樣的話,就不能在mysql的授權表中使用主機名稱了,只能使用IP。
--------------------------------------------------------------------------------------------------------------
另外:
如果在my.cnf檔案中配置了bind-address地址綁定的地址(說明只能通過這個綁定的地址來串連mysql),可以將其注釋掉。
例如:
bind-address = 127.0.0.1
--------------------------------------------------------------------------------------------------------------

my.cnf配置的幾個參數:
skip-name-resolve         跳過DNS反向解析過程
skip-grant-tables           跳過授權表(當mysql登陸密碼忘記時的解決辦法)
skip-networking             跳過TCP/IP串連
skip-host-cache             禁用主機名稱緩衝;要想清除主機名稱緩衝,執行FLUSH HOSTS語句或執行mysqladmin flush-hosts命令

Mysql串連錯誤:Lost connection to Mysql server at 'waiting for initial communication packet'

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.