x86节点全量备份
在已部署MySQL主从复制的x86从库节点上进行MySQL的全量备份,包括备份前准备、执行备份、检查备份一致性以及将备份数据传输到另一台鲲鹏从库服务器。
若MySQL为主从复制部署,则可以在任意从库进行MySQL的全量备份;若MySQL为单机部署,则建议在服务器空闲时进行MySQL的全量备份。本文以MySQL主从复制场景下的从库备份为例进行说明。
- 在x86从库服务器上创建一个用于存放备份数据的目录。
1
mkdir -p /data/mysql/data.bak/full
- 确认x86从库MySQL服务为开启状态。
可以通过以下命令检查mysqld进程是否存在。
1
ps -ef | grep mysqld
预期结果:能看到mysqld进程即MySQL服务为开启状态。
如果找不到mysqld进程,需要启动MySQL服务。启动MySQL服务的操作步骤请参见3。
- 修改系统允许打开文件数目的上限。
1
ulimit -n 10240
由于数据库文件可能较多,备份过程中可能会达到系统允许打开的文件数上限。因此建议临时提高这一限制。
- 在x86从库执行全量备份。
1
/home/percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17/bin/xtrabackup --defaults-file=/etc/my.cnf --user=root --password=123456 --socket=/data/mysql/run/mysql.sock --backup --target-dir=/data/mysql/data.bak/full
上述Percona XtraBackup命令行的参数说明如表1所示。
表1 Percona XtraBackup命令行参数说明 参数
说明
--defaults-file
数据库默认配置文件路径。
--user
用户,可选root或注册专用于备份操作的用户。
--password
数据库密码。
--databases
库,可以选择某个库进行备份,不指定库则表示备份所有库。如果指定库名,则备份文件不包含mysql、sys和performance_schema三个系统库,从库恢复时需要先手动初始化生成系统库。
--action
操作选项,“action”可选backup备份、prepare准备、copy-back/move-back恢复等。
--target-dir
输出备份文件的路径。
--datadir
配合--copy-back使用,恢复数据时指定数据库的data目录。
预期结果:
- 检查备份一致性。
备份完成后,需要通过xtrabackup --prepare命令校验备份数据的一致性,确保备份日志文件与当前数据库日志文件一致。
在x86从库执行下述命令。
1
/home/percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17/bin/xtrabackup --prepare --target-dir=/data/mysql/data.bak/full
预期结果:
如果发现备份数据与数据库的最新数据不一致,建议重新执行备份操作。
- 传输备份数据。
- 若需要将备份数据传输到鲲鹏从库服务器,首先在该服务器上创建相应的目录。
1
mkdir /data/mysql/data.bak/
- 从x86从库服务器使用scp命令将备份数据传输到鲲鹏从库服务器。
1
scp -r /data/mysql/data.bak/full 192.168.0.3:/data/mysql/data.bak/
192.168.0.3为从库2(鲲鹏从库)服务器的IP地址,请根据实际情况修改。
- 若需要将备份数据传输到鲲鹏从库服务器,首先在该服务器上创建相应的目录。