開發中數據庫使用Navicat打開表非常慢接近卡死的問題!
Navicat打開一張表會非常慢!即使是表中沒數據也是慢!
直接用SQL語句查詢結果也是非常快的!
所以排除網絡問題。
解決原理:
Mysql服務器端會定時清理長時間不活躍空閑的數據庫連接,以此優化數據庫的性能。
Navicat客戶端有一個設置:保持連接間隔,默認是240秒!意思是,客戶端在用戶無任何交互性操作時,會每隔240秒給Mysql服務端發送一次數據請求。以此來保持數據庫連接活躍!
然而Navicat設置的心跳包間隔太長了,Mysql服務端直接將連接清理掉了。當我們打開一張表的時候,Navicat還是使用舊的連接去請求數據,發現舊的連接超時不能用了,最后又申請了一個新的連接,再去請求數據!
所以導致我們打開一張表時間需要挺久的!
解決方式:
Navicat – 編輯數據庫連接 – 高級 – 勾選保持連接間隔 – 輸入框設置為30 – 點擊確定!
開啟你的流暢開發吧。。。