Answers:
新版本的MySQL WorkBench具有更改特定超时的选项。
对我来说,它位于编辑→首选项→SQL编辑器→DBMS连接读取超时(以秒为单位):600
将值更改为6000。
也没有检查限制行,因为每次我要搜索整个数据集时都会设置限制,这很麻烦。
使用comandline选项net_read_timeout
/ wait_timeout
和一个合适的值(以秒为单位)启动数据库服务器,例如:--net_read_timeout=100
。
mysqld
。
如果您的查询包含Blob数据,则可以通过应用此答案中建议的my.ini
更改来解决此问题:
[mysqld]
max_allowed_packet=16M
默认情况下,这将是1M(允许的最大值是1024M)。如果提供的值不是1024K的倍数,它将自动舍入为最接近的1024K倍数。
虽然所引用的线程与MySQL错误2006有关,但将max_allowed_packet
1M 设置为16M 确实解决了2013错误,该错误在运行长查询时显示给我。
对于WAMP用户:您将在[wampmysqld]
部分中找到该标志。
SET @@local.net_read_timeout=360;
警告:在远程连接中应用以下内容时,它们将不起作用:
SET @@global.net_read_timeout=360;
此错误信息的三个可能原因
有关更多详细信息, 请阅读>>
原因2:
SET GLOBAL interactive_timeout=60;
从默认的30秒到60秒或更长时间
原因3:
SET GLOBAL connect_timeout=60;
只需执行一个MySQL升级,将重新构建InnoDB引擎进行MySQL等的正常运作所需的许多表的重建一起performance_schema
,information_schema
等等。
从您的shell发出以下命令:
sudo mysql_upgrade -u root -p
我知道它的老但在Mac上
1. Control-click your connection and choose Connection Properties.
2. Under Advanced tab, set the Socket Timeout (sec) to a larger value.
如果您在还原大转储文件的过程中遇到此问题,并且可以排除与网络有关的问题(例如在localhost上执行),那么我的解决方案可能会有所帮助。
我的mysqldump至少包含一个INSERT,对于mysql来说太大了,无法进行计算。您可以通过show variables like "net_buffer_length";
在mysql-cli中键入来查看此变量。您有三种可能性:
--skip-extended-insert
,每个插入使用一行->尽管这些转储更易于阅读,但不适用于大于1GB的大转储,因为它往往很慢--net-buffer_length NR_OF_BYTES
其中NR_OF_BYTES小于服务器的net_buffer_length->我认为这是最好的解决方案,尽管不需要重新启动服务器就比较慢。我使用以下mysqldump命令:
mysqldump --skip-comments --set-charset --default-character-set=utf8 --single-transaction --net-buffer_length 4096 DBX > dumpfile
加载.csv文件时出现相同的问题。将文件转换为.sql。
使用以下命令,我设法解决此问题。
mysql -u <user> -p -D <DB name> < file.sql
希望这会有所帮助。
如果此处所有其他解决方案均失败,请检查系统日志(/ var / log / syslog或类似日志),以查看服务器在查询期间是否内存不足。
在将innodb_buffer_pool_size设置为与物理内存距离太近而未配置交换文件时发生此问题。MySQL建议数据库特定服务器将innodb_buffer_pool_size设置为最大物理内存的80%左右,而我将其设置为90%左右,因为内核正在杀死mysql进程。将innodb_buffer_pool_size移回大约80%,这解决了该问题。
我遇到了同样的问题。我相信,当您有指向较大表的外键(这需要时间)时,就会发生这种情况。
我试图在没有外键声明的情况下再次运行create table语句,并发现它可以工作。
然后,在创建表之后,我使用ALTER TABLE查询添加了外键约束。
希望这会帮助某人。
转到工作台编辑→首选项→SQL编辑器→DBMS连接读取超时:最多3000个。不再发生该错误。
首先检查索引是否到位。
SELECT *
FROM INFORMATION_SCHEMA.STATISTICS
WHERE TABLE_SCHEMA = '<schema>'
这通常意味着您“与当前版本的MySQL Server不兼容”,请参见mysql_upgrade。我遇到了同样的问题,只需要运行:
mysql_upgrade --password文档指出,“每次升级MySQL时应执行mysql_upgrade”。
DBMS connection read time out
字段最多只能接受5个数字,将字段设置为0等效于默认参数(600秒)。(Windows 7 64位旗舰版,MySQL Workbench 5.2.47 CE)