關於Navicat連接MySql數據庫慢的問題
項目場景:
操作MySql數據庫
問題描述:
通過Navicat連接MySql數據庫表,第一次打開表都還挺正常的,但是一段時間沒操作Navicat之後再打開其他表的時候就會出現卡死,要等很久才會響應。
原因分析:
我的數據庫是放在最近買的騰訊服務器上,我懷疑是不是剛安裝的MySql數據庫是不是什麼配置沒有配置好,所以上網搜索瞭這類的問題,說是MySql默認開啟瞭Dns反向解析,我就以下配置方法進行嘗試
在/etc/my.cnf的mysqlid下面添加這樣的字段:
skip-name-resolve
配置後發現問題依舊存在,之後再通過查詢發現有一個文章說是Navicat客戶端有保持連接間隔的機制,默認是240秒,意思就是客戶端在用戶無任何操作時,每隔240秒會給MySql服務器發送一次請求,用於保持數據庫的活躍。
但是因為Navicat設置的間隔時間過長,導致之前的數據庫連接已經斷開瞭,當我們打開新的表的時候,Navicat會拿著舊的連接去請求,發現舊的不可用後才申請一個新的連接去請求,所以才會導致我們打開一個表的時間會那麼長
解決方案:
修改Navicat的保持連接間隔時間
Navicat – 編輯數據庫連接 – 高級 – 勾選保持連接間隔 – 輸入框設置為30 – 點擊確定!
知識點補充:
解決Navicat遠程連接mysql很慢的方法
開發某應用系統連接公司的測試服務器的mysql數據庫連接打開的很慢,但是連接本地的mysql數據庫很快,剛開始認為可能是網絡連接問題導致的,在進行 ping和route後發現網絡通信都是正常的,而且在mysql機器上進行本地連接發現是很快的,所以網絡問題基本上被排除瞭,所以想看看是不是mysql的配置問題。在查詢mysql相關文檔和網絡搜索後,發現瞭一個配置似乎可以解決這樣的問題,就是在mysql的配置文件中增加如下配置參數:
[mysqld]
skip-name-resolve
在linux下配置文件是/etc/my.cnf,在windows下配置文件是mysql安裝目錄下的my.ini文件。註意該配置是加在 [mysqld]下面,在更改配置並保存後,然後重啟mysql並遠程連接測試,一切恢復如初。
到此這篇關於關於Navicat連接MySql數據庫慢的問題的文章就介紹到這瞭,更多相關Navicat連接MySql數據庫慢內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 解決mac上Navicat新建數據庫3680錯誤問題
- 學習手冊–Linux基礎篇
- MySQL圖形化管理工具Navicat安裝步驟
- 解決Navicat for Mysql連接報錯1251的問題(連接失敗)
- mayfly-go部署和使用詳解