场景
常见有以下两种场景:
- 主从复制中断,主
binlog
缺失,需要重新搭建从库 - 单主模式,升级为主从模式
方案
主从同版本场景,使用 Percona XtraBackup 工具不停机不锁表在线搭建从库
操作步骤
- 主从服务器,安装 XtraBackup
备份主库
1 | $ innobackupex --defaults-file=/etc/my.cnf --user='xx' --password='xx' --no-timestamp /data/backup |
Tips:备份目录要依据服务器磁盘分配,否则会占满磁盘,影响业务。
- 将备份传输至从库
1 | $ scp -r /data/backup/* root@x.x.x.x:/data/backup |
- 恢复备份至从库数据目录
1 | $ mysqladmin -uroot -p'xx' shutdown |
- 启动 mysqld
1 | $ chown -R mysql:mysql mysql |
- 配置主从复制关系
1 | # 获取Master binlog位置 |
- 检查是否配置成功
1 | mysql> show slave status\G |
实践案例
信息 | 说明 |
---|---|
项目 | COSMOHCE |
数据库版本 | MySQL 5.7.23 |
数据量 | 62 GB |
传输速度 | 100 M/s |
操作 | 耗时 |
---|---|
安装 Xtrabackup | 10 min |
备份 | 15 min |
传输 | 10 min |
恢复 | 8 min |
其他 | 30 min |