服務器程序經常要訪問數據庫,並且服務器程序是長時間保持運行的,mysql有一個特點,當連接上數據庫後不做任何操作,默認8小時候會自動關閉休眠的連接!一般情況下很難預料什麼時候程序會執行數據庫操作,如果連接被mysql斷開了,會出現意想不到的問題,這在服務器程序中是一種災難!保持服務器程序與Mysql的連接一種方式是修改默認的休眠時間,但這種方式治標不治本;另一種方式很顯然就是定期的執行數據庫操作來保持與mysql的連接。
查看默認休眠時間的方式:
登錄mysql後輸入命令 show variables like '%timeout%' 會出現mysql中的關於休眠超時的一些變量
其中 wait_timeout 變量為28800,即28800秒,也就是默認的8小時;
查看連接狀況,使用show processlist命令
Time字段指出了當前連接的時間,默認情況下,當長時間不做任何操作,Time字段值會隨著時間增大,大於28800秒時就會關閉當前連接;相反,在這默認的8小時內,如果執行了數據庫操作,就會從0開始計時。