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