前言
最近使用Navicat打开表或者设计表都很慢,需要等十几秒才能打开,一开始我以为是我电脑老了,配置比较差,慢点就慢点吧,好像慢的也比较合理,想到这里我也就没有追究先忍了。
但是这几天公司给我配置的新电脑到了,今天开发的时候,发现又出现这个问题了,电脑配置是不错的,所以我断定不是电脑的问题,要么是数据库的问题,要么是Navicat的问题。
但是我问了同事,他是没有这个问题,所以我断定是Navicat的问题,这下我直接忍不了,今天高低得把这个问题解决掉,哎嘿,你别说,让我这一套瞎折腾,还真解决了,并且还真的有效果!
下面就把我解决问题的步骤分享给大家
问题描述
Mysql服务器端会定时清理长时间不活跃空闲的数据库连接,依次优化数据库的性能。
Navicat客户端有一个设置:保持连接间隔,默认是240秒,意思是客户端在用户无任何交互性操作时,会每隔240秒给Mysql服务端发送一次数据请求,以此来保持数据库连接活跃。
然而Navicat设置的心跳包间隔太长了,Mysql服务端直接将连接清理掉了。当我们打开一张表的时候,Navicat还是使用旧连接去请求数据,发现旧的链接超时不能用了,最后又申请一个新的链接,再去请求数据。所以导致我们打开一张表需要一些时间!
解决问题
综上所述,我们只需要修改设置即可!
下面开始操作:
1 右键想设置的数据库
选择要优化的链接,右键选择编辑。
2 修改连接间隔属性
编辑弹窗选择高级,选择高级 - 勾选保持连接间隔 - 输入框设置30 - 点击确定。
3 重启Navicat
重启navicat,这里小声bb一句:Navicat所有的设置都要重启才能生效!
总结
这一套组合拳下来,确实优化了不少速度,我是亲测有效的!
暂时没有发现什么其他影响,如果有什么影响我会及时来更新,希望对您有所帮助!