简介
Mariabackup是MariaDB提供的一个开源工具,用于对InnoDB,Aria和MyISAM表进行物理在线备份。这个工具是基于Percona的XtraBackup(版本2.3.8)的解决方案。
这里有一点需要注意,在MariaDB10.3.x及以上的版本建议用mariabackup,用Percona XtraBackup工具会有问题。
语法格式:
mariabackup [–defaults-file=#] [–backup | --prepare | --copy-back | --move-back] [OPTIONS]
1.完全备份与恢复
1.1备份
假设mariadb数据库用户名为root,密码为centos
执行如下命令:
mariabackup --backup --target-dir /data/mariadbbackup/$(date ‘+%y-%m-%d’)_fullbackup --user root --password centos
注:备份到目录/data/mariadbbackup/$(date ‘+%y-%m-%d’)_fullbackup 这里的$(date ‘+%y-%m-%d’)_fullbackup目录会自动创建。
1.2恢复
第一步:准备全备数据

cd /data/mariadbbackup

mariabackup --prepare --target-dir /data/mariadbbackup/20-11-11_fullbackup --user root --password centos

第二步:还原数据 (保证要还原的数据库服务器的data目录为空)

mariabackup --copy-back --target-dir /data/mariadbbackup/20-11-11_fullbackup --user root --password centos

第三步:修改data目录权限
因为备份的用户是root,还原过去的时候属主没有变化,所以要把还原过去的数据的属主和属组修改一下。

chown -R mysql:mysql /data/mysqldb/3306/data

2.增量备份与还原
2.1备份
2.1.1完全备份

mariabackup --backup --target-dir /data/mariadbbackup/fullbackup --user root --password centos

2.1.2 增量备份

mariabackup --backup --target-dir /data/mariadbbackup/inc1 --incremental-basedir /data/mariadbbackup/fullbackup --user root --password centos

这里的 /data/mariadbbackup/fullbackup表示基于全备做的增量备份
2.2恢复
现在我们有2个备份,一个是全备一个是增量备份,具体步骤如下
第一步:准备全备数据

mariabackup --prepare --target-dir /data/mariadbbackup/fullbackup/ --user root --password centos --apply-log-only

第二步:将增量备份与全备合并

mariabackup --prepare --target-dir /data/mariadbbackup/fullbackup/ --user root --password centos --incremental-dir /data/mariadbbackup/inc1 --apply-log-only

注:若有多个增量备份,则依次将增量备份与全备合并。
第三步:还原(保证data目录为空)

mariabackup --copy-back --target-dir /data/mariadbbackup/fullbackup/ --user root --password centos

第四步:修改属主属组

chown -R mysql:mysql /data/mysqldb/3306/data

————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                    

原文链接:https://blog.csdn.net/my1114/article/details/109679130

标签: none

评论已关闭