我正在试图复制一个数据库,并已能够做到这样做了几个月,没有问题。然而,今天我遇到了一个错误:“指定的批量大小必须增加”。我正在使用SQLYog。
关于这一点,我在谷歌上没有发现多少,但似乎很难通过“SET SESSION bulk_insert_buffer_size = 1024 * 1024 *256”这样的方式增加bulk_insert_buffer_size。(尝试使用全局会话而不是会话)
这是不起作用的,我仍然很不幸地得到了错误。我发现的唯一其他信息是生成消息的源代码,如下所示:

从这个页面:https://github.com/Fale/sqlyog/blob/master/src/CopyDatabase.cpp。不幸的是,我真的不知道该如何处理这些信息。我试着查看代码,找出哪些mysql变量(比如bulk_insert_buffer_size)绑定到源代码中使用的变量,但是没有能够有效地遵循它。
任何帮助都将不胜感激。
发布于 2019-01-02 17:03:52
http://faq.webyog.com/content/24/101/en/about-chunks-and-bulks.html说您可以指定批量大小:
“导出”工具的设置可从“首选项”中获得,而“备份”“powertool”选项则由备份向导提供。
您应该确保批量大小不大于MySQL服务器的max_allowed_packet配置选项。它的默认值为1MB、4MB或64 4MB,这取决于您的MySQL版本。
我不是SQLYog的用户,但我知道mysqldump也有类似的概念。Mysqldump自动读取max_allowed_packet来计算最大批量大小。
就其价值而言,大小与您无关,除非您要复制到MyISAM表中。但总的来说,您不应该使用MyISAM表。
https://stackoverflow.com/questions/54009986
复制相似问题