本文連接:https://blog.csdn.net/MDWJJ/article/details/105663714
mysql數據庫默認的連接超時時間是8小時,如果不注意程序在連接msql的時候會報錯。
我們來看一下這個屬性,進入msql客戶端輸入:
show variables like '%timeout%';
我們可以看到屬性wait_time和interactive_timeout,默認值爲28800,它們的單位是秒s,即8小時(8 * 60 * 60秒)。
我們來看一下mysql官網是怎麼解釋這兩個數據的:mysql官網
1. wait_timeout
服務器在關閉非交互連接之前等待其活動的秒數。
在線程啓動時,會話wait_timeout值根據客戶端類型(由mysql_real_connect()的client_interactive connect選項定義)從全局wait_timeout值或全局interactive_timeout值初始化。另請參見交互超時。
2. interactive_timeout
服務器在關閉交互連接之前等待活動的秒數。交互客戶端定義爲使用mysql_real_connect()的client_interactive選項的客戶端。另請參見等待超時。
交互連接和非交互連接
通過MySQL 客戶端連接數據庫的是交互會話,通過jdbc等程序連接數據庫的是非交互會話。
修改mysql連接8小時超時的方法:
修改Mysql安裝目錄下my.ini文件添加屬性(假如設置180秒)
interactive_timeout=180
wait_timeout=180
然後重啓mysql即可生效
停止mysql命令:
net stop mysql;
啓動mysql命令:
net start mysql;