Mariabackup 热备份工具
最后更新于:2022-04-02 03:57:06
[TOC]
## 语法
```
-backup 备份数据库
-prepare 准备现有备份以还原到 MariaDB 服务器
-copy-back 将备份还原到数据目录
必须停止 MariaDB 服务器。数据目录必须为空
如果要使用备份覆盖数据目录 使用 --force-non-empty-directories
-incremental-basedir 定义是否要增加备份
-incremental-dir 定义是否要增加准备好的备份
-move-back 将备份还原到数据目录
-defaults-file 定义包含默认配置的文件的路径
-H,--host
-p, –password
-P, –port
-S, –socket
-u, --user
```
## 场景
### 全量备份
```
mariabackup --uroot --p123456 --backup \
--target-dir=/home/back/$(date '+%y-%m-%d')_fullbackup
```
### 增量备份
```
mariabackup --uroot --p123456 --backup \
--target-dir=/backup/inc1 \
--incremental-basedir=/backup/fullbackupcentos
/backup/inc1 为增量备份目录
/backup/fullbackup 为全备份目录
```
### 全量恢复
```
> mariabackup --uroot --p123456 --copy-back--target-dir=全量备份目录
> chown -R mysql:mysql data目录 #修改 data 目录权限
```
### 增量恢复
```
// 将增量备份与全备合并,如果有多个增量备份,则多次执行该命令
> mariabackup --uroot --p123456
--target-dir=全量备份目录 \
--incremental-dir=增量备份目录 --apply-log-only
// 还原数据 (保证要还原的数据库服务器的 data 目录为空)
> mariabackup --uroot --p123456 --copy-back --target-dir=全量备份目录
// 修改 data 目录权限
chown -R mysql:mysql /usr/local/mariadb/data
```
';