【发布时间】:2015-11-25 21:54:40
【问题描述】:
我正在使用 innodb。我的应用程序性能有问题。当我运行mysqlturner.pl 时,我得到:
[--] InnoDB 表中的数据:8G(表:1890) [!!] 碎片表总数:1890
好的,我已经运行了 mysqlcheck -p --optimize db。 我已经禁用了 innodb_file_per_table 。过去 2 年没有重新索引数据库。我该怎么做?
- 制作mysqldump?
- 停止mysql服务?
- 将启用 innodb_file_per_table 插入到 my.cnf 中?
- 启动mysql服务?
- 从 mysqldump 导入?
- 运行 mysqlcheck -p --optimize db?
一切都会好吗?
【问题讨论】:
-
很确定您需要在转储之后但在恢复之前删除表;并且很确定共享的 ibdata 不会缩小。
-
如何确定共享的 ibdata 不会缩小?
-
我已经有几年没有深入研究细节了,但最后我记得缩小主要
ibdata1文件的唯一受支持的方法是备份您的数据,卸载并重新安装 MySQL 服务器,然后恢复。
标签: mysql performance