我使用 mysqltuner 来调整 mysql 服务器。它建议“运行 OPTIMIZE TABLE 对表进行碎片整理以获得更好的性能”。我以前在单个数据库上做过这个,我没有看到任何问题。现在,我在这台服务器上有几个客户的数据库,我对是否对所有数据库进行优化和修复犹豫不决。这样做安全吗?我应该优化他们的数据库还是让他们这样做?谢谢。
我使用 mysqltuner 来调整 mysql 服务器。它建议“运行 OPTIMIZE TABLE 对表进行碎片整理以获得更好的性能”。我以前在单个数据库上做过这个,我没有看到任何问题。现在,我在这台服务器上有几个客户的数据库,我对是否对所有数据库进行优化和修复犹豫不决。这样做安全吗?我应该优化他们的数据库还是让他们这样做?谢谢。
OPTIMIZE TABLE
如果只是因为在操作期间锁定表的原因,我宁愿把它留给客户。我从来没有遇到过问题。我会说它和 MySQL 中的其他任何东西一样安全。
我肯定会将此安排在安静/非高峰时间,并在之前和之后立即进行数据库转储,并在可能的情况下进行比较。
当然,您可能需要考虑是否存在数据库性能下降的原因,并查看 mysql 慢查询日志以查看新的表布局是否可以防止问题发生。