MySQL與SSH框架,項目隔天就會失效的緣由。

上面的錯誤,我仔細看了代碼,查了網上資料,第一次認爲是數據庫連接池配置錯誤,而後把連接池配置好以後,隔天又出這個問題。第二次是同事說架包衝突,可是我果斷排除了。由於引用的架包都沒引用。第三次,發現是MySQL數據庫的問題。由於數據庫默認連接時間8個小時後就會斷開。sql

用一下代碼:數據庫

《在黑窗體下》測試

show global variables  like 'wait_timeout' //查詢Mysql的鏈接時間it

+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| connect_timeout | 5 |
| delayed_insert_timeout | 300 |
| innodb_lock_wait_timeout | 50 |
| interactive_timeout | 28800 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| slave_net_timeout | 3600 |
| wait_timeout | 28800 |
+--------------------------+-------+innodb

同一時間,這兩個參數只有一個起做用。究竟是哪一個參數起做用,和用戶鏈接時指定的鏈接參數相關,缺省狀況下是使用wait_timeout。我建議是將這兩個參數都修改,以避免引發沒必要要的麻煩。

這兩個參數的默認值是8小時(60*60*8=28800)。我測試過將這兩個參數改成0,結果出人意料,系統自動將這個值設置爲8小時。換句話說,不能將該值設置爲永久。
將這2個參數設置爲24小時(60*60*24=604800);配置

修改方法: 
set interactive_timeout=604800;
set wait_timeout=604800;
以上就是內容僅供參考!引用

相關文章
相關標籤/搜索