有没有办法无需重新启动 MySQL 即可加载大型 BLOB?

有没有办法无需重新启动 MySQL 即可加载大型 BLOB?

我正在尝试将最后几个数据库从旧的 mysql 服务器上移走,但有一个特别让我困惑:

错误 1118 (42000),位于第 595 行:一个事务中插入的 BLOB/TEXT 数据的大小大于重做日志大小的 10%。使用 innodb_log_file_size 增加重做日志大小。

正在迁移到的服务器正在运行5.6.29-76.2-log Percona Server,似乎解决方法针对大型 BLOB 的事务一致性错误。

由于修改 innodb_log_file_size 需要重新启动服务,是否有办法导入禁用事务的数据库?SQL*Loader 有许多选项可用于在导入时禁用事务,也许 MySQL 也有类似的工具和设置?

答案1

这里没有解决方法。您需要重新启动。

InnoDB 中的所有操作都在事务中完成。有时它是隐式的(启用自动提交时,从技术上讲,每个执行的语句都会启动并提交自己的事务),但从相关意义上讲它仍然是一个事务。

重做日志是一个关键组件,只有通过重新启动才能调整大小。

相关内容