我在我的 OS X 10.9.5 上使用 MySQL Workbench 6.3 来管理多个云数据库(托管在 Rackspace 上),我遇到了以下问题:
当5分钟不活动时,会出现以下问题:
- 我无法运行任何查询(错误 2013:查询期间与 MySQL 服务器的连接丢失)
- 在尝试浏览我的数据库中的表格时,我收到诸如“无法获取表格”、“无法获取 View ”等消息
- 刷新左侧面板时,我收到“错误代码:2006 MySQL 服务器已消失”
所以基本上连接已经消失了。
这真的很烦人,因为它仅在 5 分钟不活动后发生。因此,我每次都需要关闭连接并重新打开它。
我也试过这个:MySQL Workbench: How to keep the connection alive ,这并没有改变任何东西。 在我的 Workbench Preferences 选项卡中,我有以下设置:
- DBMS 连接保持事件间隔(以秒为单位):600
- DBMS 连接读取超时(以秒为单位):600
- DBMS 连接超时(以秒为单位):60
请注意,恰好在 5 分钟不活动后发生此问题!如果我在 4'59 分钟的间隔内运行两个查询,它工作得非常好。 我的同事在他们的 Workbench 上连接到同一个数据库也没有这个问题。
有人对此有解决方案吗?
最佳答案
转到编辑 -> 首选项 -> SQL 编辑器,你会看到:
DBMS connection keep-alive interval (in seconds): 600
DBMS connection read time out (in seconds): 600
DBMS connection time out (in seconds): 60
DBMS 连接保持事件间隔表示 Workbench 向服务器发送保持事件请求以保持连接事件的频率。
由于 5 分钟 == 300 秒, 设置 DBMS 连接保持事件间隔 < 300 (e.g. 250)
这意味着“每 250 秒发送一次保持事件请求”。点击确定。
然后退出 MySQL Workbench 并重新启动它以使更改生效。
如果您使用标准 TCP/IP over SSH 连接方法,那么配置 ssh ServerAliveInterval 也很有帮助。
关于MySQL Workbench 在空闲时断开连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31811517/