如何获取 MySql 备份大小?
我必须每天备份数据库,并且我使用 mysql dump 和 shell 命令来从数据库获取备份 我想知道备份过程的进度。 所以我需要知道备份文件的大小以及作为备份创建的文件。 我怎样才能拥有这些? 任何答案将不胜感激。
I have to get a backup of my database everyday and I use mysql dump with shell commands to get backup from database
I want to know the progress of backup process .
so I need to know to the backup file size and also the file which is being created as the backup.
how can I have these ?
any answers will be appreciated .
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
MySQL
information_schema
表将为您提供有关数据库的元信息,包括每个表的总大小。请参阅: http://dev.mysql.com/doc/refman /5.0/en/tables-table.html第一条评论中有一个计算整个数据库大小的示例。
但请注意,您的 mysqldump 输出将产生开销,具体取决于您的输出格式:整数值表示为文本,您将有额外的 SQL 或 XML 内容等。
您可能需要采用提供的大小并通过模糊因子将它们放大,以获得转储大小的估计值。
对于转储文件名:由您(或您正在使用的 shell 脚本)选择作为 mysqldump 的参数
The MySQL
information_schema
table will give you meta-information about a database, including the total size for each table. See: http://dev.mysql.com/doc/refman/5.0/en/tables-table.htmlThere is an example in first comment of calculating the size for an entire database.
Note however that your
mysqldump
output will have overhead depending on your output format: integer values are represented as text, you'll have extra SQL or XML stuff, etc.You may need to take the sizes provided and scale them up by a fudge factor to get an estimate for the dump size.
And for the dump file name: that's chosen by you (or the shell script you're using) as an argument to
mysqldump
您可以使用 mysqldump.exe 的参数 --show-progress-size 并定期读取标准输出。
you can use the argument --show-progress-size of mysqldump.exe and read periodically the standard output.