参考文章:
在使用 mariabackup
前, 先安装
apt install mariabackup
完全备份
通过使用 mariabackup
进行完全备份
# 执行完整备份
mariabackup --backup \
--target-dir=存放备份文件的目录 \
--user=用户 \
--password=密码
恢复数据
从完全备份恢复之前,首先需要 --prepare
选项以使数据文件保持一致
mariabackup --prepare \
--target-dir=已备份的目录
恢复备份(需要以下步骤):
- 停止数据库进程
- 确保存储数据的目录为空
存储数据目录一般为/var/lib/mysql/
选项:
--copy-back
保留原始备份文件--move-back
将备份文件移动到存储数据目录(备份目录将为空)
mariabackup --copy-back \
--target-dir=存放备份文件的目录
当 mariabackup
恢复数据库时,它会保留备份的文件和目录的权限
保险起见, 手动修改目录及其文件的权限
chown -R mysql:mysql 数据目录
增量备份
进行增量备份前, 首先得进行一次完全备份
开始备份增量更改:
--target-dir
存放增量更改的目录--incremental-basedir
基于的完整备份目录
mariabackup --backup \
--target-dir=存放增量更改的目录 \
--incremental-basedir=完整备份目录 \
--user=用户 \
--password=密码
如果还要进行额外的增量备份
可以将上一次增量备份的目标目录作为下一次增量备份的增量基目录
mariabackup --backup \
--target-dir=存放增量更改的目录 \
--incremental-basedir=上一次备份增量更改的目录 \
--user=用户 \
--password=密码
恢复数据
(适用于 MariaDB 10.2 及后续版本)
恢复前的准备操作:
- 准备基础备份
- 将增量更改应用到基本完整备份 (重复此操作, 依次进行, 直到最后一个增量备份)
# 准备基础备份
mariabackup --prepare \
--target-dir=基础的完全备份目录
# 将增量更改应用到基本完整备份
mariabackup --prepare \
--target-dir=基础完整备份目录 \
--incremental-dir=增量备份目录
开始恢复:
通过上述的准备工作, 增量更改已全部合并到完全备份中
因此, 这里恢复数据的操作与完全备份数据操作一致
- 停止数据库进程
- 确保存储数据的目录为空
存储数据目录一般为/var/lib/mysql/
选项:
--copy-back
保留原始备份文件--move-back
将备份文件移动到存储数据目录(备份目录将为空)
mariabackup --copy-back \
--target-dir=存放备份文件的目录
当 mariabackup
恢复数据库时,它会保留备份的文件和目录的权限
保险起见, 手动修改目录及其文件的权限
chown -R mysql:mysql 数据目录