開發某應用系統連接公司的測試服務器的mysql數據庫連接打開的很慢,但是連接本地的mysql數據庫很快,剛開始認為可能是網絡連接問題導致的,在進行 ping和route后發現網絡通信都是正常的,而且在mysql機器上進行本地連接發現是很快的,所以網絡問題基本上被排除了,所以想看看是不是mysql的配置問題。在查詢mysql相關文檔和網絡搜索后,發現了一個配置似乎可以解決這樣的問題,就是在mysql的配置文件(/etc/my.cnf)中增加如下配置參數:
[mysqld]
skip-name-resolve
然后重啟mysql並遠程連接測試,一切恢復如初。
service mysqld restart
原因:你的mysql主機查詢DNS很慢或是有很多客戶端主機時會導致連接很慢,請注意在增加該配置參數后,mysql的授權表中的host字段就不能夠使用域名而只能夠使用ip地址了,因為這是禁止了域名解析的結果。