最近在使用java操作遠程的mysql資料庫的時候,第一次請求非常的慢,而且極其容易引起系統的崩潰報錯連接超時 下麵就這個問題來解決下把 大部分我們的mysql中的配置信息時這樣的(本人的修改過,自查宿主的mysql信息) 其中的配置信息,網上也有很多的介紹,這裡邊就不詳細的介紹了, 其中有一個(我 ...
最近在使用java操作遠程的mysql資料庫的時候,第一次請求非常的慢,而且極其容易引起系統的崩潰報錯連接超時
下麵就這個問題來解決下把
-----------------------------------------------------------------
大部分我們的mysql中的配置信息時這樣的(本人的修改過,自查宿主的mysql信息)
其中的配置信息,網上也有很多的介紹,這裡邊就不詳細的介紹了,
其中有一個(我這裡沒有配置)極其重要
wait_timeout 這個屬性代表著在多長時間內,mysql不會斷開連接,預設的預設值是8小時(28800秒),如果這個值設置小了的話就會導致第一次連接失敗,或者很容易斷開連接!
如果遠程伺服器的mysql出現了以上的問題就可以用以下的方案來解決(親測有效!):
show global variables like 'wait_timeout';//查詢你當前的mysql的預設超時時間為多少 set global wait_timeout = 604800;//設置超時時間為7天
設置後的樣子:
還有一個參數也非常重要 禁止功能變數名稱解析
在/etc/my.cnf的mysqlid下麵添加這樣的欄位:
skip-name-resolve
重啟資料庫
功能變數名稱解析也可以導致網路程式慢,, mysql還有DNS反向解析的問題, 也可能導致速度慢, 可以在mysql的配置文件中, 使用以上命令把DNS反向解析關掉.
至此,完美解決!