关于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数据库慢内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐