mysql之xtrabackup备份
xtrabackup
xtrabackup用法
innobackupex [option] BACKUP-ROOT-DIR
–user:该选项表示备份账号
–password:该选项表示备份的密码
–host:该选项表示备份数据库的地址
–databases:该选项接受的参数为数据库名,如果要指定多个数据库,彼此间需要以空格隔开;如:“xtra_test dba_test”,同时,在指定某数据库时,也可以只指定其中的某张表。如:“mydatabase.mytable”。该选项对innodb引擎表无效,还是会备份所有innodb表
–defaults-file:该选项指定从哪个文件读取MySQL配置,必须放在命令行第一个选项位置
–incremental:该选项表示创建一个增量备份,需要指定–incremental-basedir
–incremental-basedir:该选项指定为前一次全备份或增量备份的目录,与–incremental同时使用
–incremental-dir:该选项表示还原时增量备份的目录
–include=name:指定表名,格式:databasename.tablename
备份生成的相关文件
- xtrabackup_info
innobackupex工具执行时的相关信息,包括版本,备份选项,备份时长,备份LSN(log sequence number日志序列号),BINLOG的位置 - xtrabackup_checkpoints
备份类型(如完全或增量)、备份状态(如是否已经为prepared状态)和LSN范围信息,每个InnoDB页(通常为16k大小)都会包含一个日志序列号LSN。LSN是整个数据库系统的系统版本号,每个页面相关的LSN能够表明此页面最近是如何发生改变的 - xtrabackup_binlog_info
MySQL服务器当前正在使用的二进制日志文件及至备份这一刻为止二进制日志事件的位置,可利用实现基于binlog的恢复 - backup-my.cnf
备份命令用到的配置选项信息 - xtrabackup_logfile
备份生成的日志文件
xtrabackup完全备份及还原
xtrabackup --backup --target-dir=/backup/
scp -r /backup/ 192.168.160.129:/ #把整个文件拷贝到目标设备的根目录下
xtrabackup --prepare --target-dir=/backup/ #对备份的数据库数据确保一致,提交完成的事务,回滚未完成的事务
xtrabackup --copy-back --target-dir=/backup/ #复制到数据库目录,数据库服务不能启动,且数据库目录必须为空,数据库目录路径即使更改命令也能自动找到
chown -R mysql:mysql /var/lib/mysql #还原属性
systemctl start mariadb #启动数据库
xtrabackup完全,增量备份及还原
xtrabackup --backup --target-dir=/backup/base #做一次完全备份
xtrabackup --backup --target-dir=/backup/inc1 --incrementalbasedir=/backup/base #基于完全备份做一次增量备份
xtrabackup --backup --target-dir=/backup/inc2 --incrementalbasedir=/backup/inc1 #基于上一次增量备份做第二次增量备份
scp -r /backup/ 192.168.160.129:/ #把整个文件拷贝到目标设备的根目录下
xtrabackup --prepare --apply-log-only --target-dir=/backup/base #整理备份文件,apply-log-only可以不让未完成的事务回滚
xtrabackup --prepare --apply-log-only --target-dir=/backup/base --incremental-dir=/backup/inc1 #合并第1次增量备份到完全备份
xtrabackup --prepare --target-dir=/backup/base --incremental-dir=/backup/inc2 #合并第2次增量备份到完全备份:最后一次还原不需要加选项--apply-log-only
xtrabackup --copy-back --target-dir=/backup/base #复制到数据库目录,数据库服务不能启动,且数据库目录必须为空,数据库目录路径即使更改命令也能自动找到
chown -R mysql:mysql /var/lib/mysql #还原属性
systemctl start mariadb #启动数据库
本文详细介绍了Xtrabackup工具用于MySQL数据库的完全备份、增量备份及其还原方法。涵盖了xtrabackup命令选项、备份过程生成的关键文件解析及备份策略实施步骤。

4547

被折叠的 条评论
为什么被折叠?



