如何解決mysql數據庫8小時無連接自動關閉
windows下打開my.ini,增加:
interactive_timeout=28800000 wait_timeout=28800000 |
關于mysql自動關閉服務的現象,可以通過mysql服務器端程序mysql Administrator調整連接參數。將max_connections max_updates max_questions三項數據調整到很大的數字,那么你有限的操作將不會導致數據庫服務的終止了在MySQL數據庫中,如果一個連接8小時沒有請求和操作,就會自動斷開,從而導致一些基于數據庫連接的應用程序,特別是 WEB 應用程序出錯。解決mysql數據庫自動關閉服務三個方法:
方法一:這個參數的名稱是 wait_timeout,其默認值為 28800秒(8小時)。其意義為關閉一個連接之前在這個連接上等到行動的秒數,也就是說,如果一個連接閑置超過這個選項所設置的秒數,MySQL 會主動斷開這個連接。
修改操作:
linux下打開/etc/my.cnf,在屬性組mysqld下面添加參數如下:
interactive_timeout=28800000 wait_timeout=28800000 |
windows下打開my.ini,增加:
interactive_timeout=28800000 wait_timeout=28800000 |
有實踐表明,沒有辦法把這個值設置成無限大,即永久。因此如果你無法保證你的應用程序必定在設定的秒數內至少有一次操作,那么最好用第二個方法解決這個問題。
方法二:修改如下JDBC連接的 URL:
jdbc:mysql://hostaddress:3306/schemaname?autoReconnect=true
添加 autoReconnect=true 這個參數,即能解決這個問題。
方法三:配置文件(proxool.xml):
mysql
jdbc:mysql://localhost/yourDatebase?useUnicode=true&characterEncoding=UTF-8 com.mysql.jdbc.Driver 90000 20 3 20 3 true true SELECT CURRENT_USER |
專家建議關于mysql自動關閉服務的三個方法,用戶最好采取第一個辦法最為徹底解決。
posted on 2014-02-27 10:18 順其自然EVO 閱讀(1022) 評論(0) 編輯 收藏 所屬分類: 數據庫