我是 MySQL 新手,正在寻找一些数据库维护技巧。
我有一个较旧的网站,它有一个 MySQL 数据库版本 5.1.29,其中混合了 MyISAM 和 InnoDB 表。 99% 的表是 MyISAM,其中两个是 InnoDB。
我发现这篇好文章MySQL Maintenance Tasks for InnoDB with MySQL 5.1描述了 InnoDB 的一些维护任务。
对于我的环境中的数据库维护,您有何建议?
最佳答案
这取决于您的表格的使用方式。那些附加和更新的通常是尽可能最佳的。添加和删除大量记录的情况可能会变得更加低效,但针对这些记录的OPTIMIZE TABLE
会收紧它们。
虽然“如果没有损坏就不要修复它”规则在这里适用,但如果您可以在测试实例上执行此操作并且不会出现任何问题,那么将 MyISAM 表转换为 InnoDB 是值得的。 MyISAM 表有许多缺陷,但最主要的缺陷是它们没有记录日志,如果您在不幸的时候遭遇服务器崩溃,它们可能会被损坏而无法修复。
对 MySQL 最好的维护就是保持版本最新。 5.1 落后了许多版本,迁移到 5.5 将提供显着的性能优势。
关于使用 MyISAM 和 InnoDB 表维护 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19596151/