項目場景:
操作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數據庫慢內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 解決Navicat無法連接 VMware中Centos系統中的 MySQL服務器的問題
- 完美解決docker安裝mysql后Navicat連接不上的問題
- Navicat for MySQL 15注冊激活詳細教程
- Navicat Premium遠程連接MySQL數據庫的方法
- 解決navicat遠程連接mysql報錯10038的問題
- Navicat for MySQL 11注冊碼\激活碼匯總
- 詳解Navicat遠程連接mysql很慢
- Navicat Premium操作MySQL數據庫(執行sql語句)
- Navicat連接虛擬機mysql常見錯誤問題及解決方法
- Navicat premium連接數據庫出現:2003 Can''t connect to MySQL server on''localhost''(10061)
- navicat創建MySql定時任務的方法詳解
- Navicat出現無法遠程連接MySql服務器問題的解決辦法
- 如何用Navicat操作MySQL