本文共 1734 字,大约阅读时间需要 5 分钟。
mydumper 是一款适合在 CPU 资源充足且数据库表量较大的场景下进行全库或部分表备份的工具。它主要用于从库或单个实例进行恢复。在以下文中,我们将详细介绍 mydumper 的使用方法、压缩备份特性以及恢复示例。
mydumper 可以用于执行全库备份。以下是一个示例命令:
mydumper -u automng -p Automng_123 -h 127.0.0.1 -P 3306 -o /data/backup/full_20180928
此命令将备份所有数据库中的数据。如果需要压缩备份文件,可以在 -c
选项中指定:
mydumper -u automng -p Automng_123 -h 127.0.0.1 -P 3306 -c -o /data0/backup/full_20180928
此外,可以通过 -t
参数指定线程数,默认值为 4。在高负载环境下,mydumper 的备份速度远快于 mysqldump。
如果需要将备份文件按大小分割,可以通过 -F
选项指定单个文件的最大值(单位:M)。例如:
mydumper -u automng -p rootroot -h db48 -P 3309 -e -c -t 10 -F 256 -o /data0/backup/full_20180928
此命令会将备份文件分割为多个 256M 的文件。
要备份特定库或表,可以使用 -B
和 -T
选项。例如,备份指定库:
mydumper -u automng -p rootroot -h db48 -P 3309 -B diandidb -e -t 10 -o /data/backup/full_20180929
要备份特定表:
mydumper -u automng -p rootroot -h db48 -P 3309 -B vodb -T test -e -t 2 -o /data/backup/full_20180929
还可以同时指定多个表:
mydumper -u automng -p rootroot -h db48 -P 3309 -T vodb.test,diandidb.test -e -t 2 -o /data/backup/full_20180929
压缩备份可以显著减少存储空间。使用 gunzip 解压后,可以通过 myloader
恢复数据。例如,全库压缩备份:
mydumper -u automng -p Automng_123 -h 127.0.0.1 -P 3306 -c -o /data0/backup/full_20180928
此外,还可以指定单个备份文件的最大数据量(默认为 300 万条记录):
mydumper -u automng -p rootroot -h db48 -P 3309 -e -c -t 10 -r 3000000 -o /data0/backup/full_20180928
恢复备份文件时,可以使用 myloader
工具。例如,全库恢复:
myloader -u automng -p rootroot -h db48 -P 3309 -t 2 -o -d /data/backup/full_20180928
通过以上方法,您可以高效地使用 mydumper 进行数据库备份,并在需要时快速恢复数据。