gpt4 book ai didi

MySQL:mysqlcheck 占用太多磁盘空间来执行操作

转载 作者:搜寻专家 更新时间:2023-10-30 22:25:54 25 4
gpt4 key购买 nike

每个星期六早上 8 点,我都会使用以下 sh 脚本对我的所有数据库进行维护。我使用 --check--optimize--analyze 运行 mysqlcheck

这是脚本:

# check: checks table for integrity errors
mysqlcheck -u root -h mydbendpoint.com -p'mypass' --check --all-databases

# optimize: reorganizes physical storage of table and index data
mysqlcheck -u root -h mydbendpoint.com -p'mypass' --optimize --all-databases

# analyze: rebuild and optimize the performance of indexes
mysqlcheck -u root -h -h mydbendpoint.com -p'mypass' --analyze --all-databases

问题是,当这个 .sh 运行时,它会占用大量 磁盘空间。这是我的 Amazon RDS 可用磁盘空间的屏幕截图:

enter image description here

这三个命令中的哪一个占用了如此多的磁盘空间来进行那些mysqlchecks--检查--优化还是--分析?还是他们三个?

我在 official documentation 上找不到任何相关信息.

提前致谢。

最佳答案

--optimize 使用了所有空间。如果您已使用 innodb_file_per_table 配置服务器,它基本上会重建所有表以重新获得未使用的空间(已删除的数据)。

这很少需要,你可以跳过。

就是说,您真的在所有数据库 上都这样做了吗?这应该也是没有必要的。我只有一个数据库,我每周检查一次,这个主机的目的只是为了验证我的备份是否有效。每周在此主机上恢复一次备份,然后 mysqlcheck 验证所有表是否正常工作。就是这样。如果我在生产服务器上这样做,我的老板会解雇我:)

关于MySQL:mysqlcheck 占用太多磁盘空间来执行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52295226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com