【发布时间】:2014-10-09 14:01:48
【问题描述】:
我有一个膨胀的 mysql 5.0 声纳数据库(360gb 而不是平均 30gb)
这个链接说为了修复它我需要导出数据库,安装mysql 5.6,导入和导出,它应该恢复到原来的大小..:SonarQube : How to reduce size of measures_data.ibd?
所以我们有一个虚拟机来测试,安装 Centos 5.6 和 mysql 5.6,并开始导入... 不幸的是,我总是在某些导入中遇到错误...
[ERROR] InnoDB: 总 blob 数据长度 (39220742) 大于 重做日志文件大小的 10% (3072)。请增加 innodb_log_file_size。
这将我带到了 innodb_log_file_size 的许多链接,如下所示: Issue changing innodb_log_file_size
我没有错误地关闭了 mysql。 我修改了my.cnf
innodb_log_file_size=64M(出于示例目的,尽管我也尝试了更高的值以尝试像 600M 6G 等。)
我删除了 /var/lib/mysql 中的 ib_logfile0 和 ib_logfile1 日志,然后重新启动了服务 ,但没有任何改变..(即使从我读到的内容在 5.6 中应该无关紧要)
2014-10-09 13:05:09 18205 [注意] InnoDB: 缓冲池初始化完成
2014-10-09 13:05:10 18205 [注意] InnoDB:将日志文件 ./ib_logfile101 大小设置为 48 MB
2014-10-09 13:05:10 18205 [注意] InnoDB:将日志文件 ./ib_logfile1 大小设置为 48 MB
2014-10-09 13:05:10 18205 [注意] InnoDB:将日志文件 ./ib_logfile101 重命名为 ./ib_logfile0
2014-10-09 13:05:10 18205 [警告] InnoDB:已创建新日志文件,LSN=36443469334
在导入失败后,我截断了所有表数据,并将它们中的每一个都更改为使用 key_block_size 8k 进行压缩。我还从我要导入的备份中删除了所有“DROP TABLE IF EXISTS”,这样我就可以保持表格的压缩状态,但这也不起作用......
active_rule_changes |数据库 | 10 |压缩 | 379 | 86 | 32768 >| 0 | 8192 | 0 |第566章2014-10-08 18:03:45 |空 | >NULL | utf8_bin |空 | row_format=COMPRESSED KEY_BLOCK_SIZE=8 | |
我不知道该怎么办...我的日志没有出错,从我读到的内容来看,这应该很简单。
这是用于数据导入的 my.cnf 文件。
innodb_file_per_table = 1
innodb_file_format = 梭子鱼
innodb_file_format_max = 梭子鱼
innodb_file_format_check = 开启
我们将不胜感激。 谢谢。
【问题讨论】:
-
您可能更有可能在 superuser.com 或 dba.stackexchange.com 上得到很好的答案,因为这个问题与编程无关。
-
谢谢!我会在那里发帖。
-
请不要交叉发布(除非您删除此问题)。如果我们投票支持,我们可以自动将问题移到那里。我刚刚投票决定搬到 dba.stackexchange.com,我们只需要再投两票。给它几分钟。