我是靠谱客的博主 听话心情,最近开发中收集的这篇文章主要介绍不停机迁移数据库方案,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、方案思路

使用xtrabackup做全量备份,然后使用主从复制进行同步

https://www.percona.com/doc/percona-xtrabackup/2.4/installation/yum_repo.html

参考博客:https://segmentfault.com/a/1190000003063874?utm_medium=referral&utm_source=tuicool

参考博客:https://www.cnblogs.com/chenqs/p/7799417.html

参考博客:https://www.cnblogs.com/superfat/p/5267449.html

二、准备

1、安装xtrabackup(数据库源服务器和目标服务器都要安装)

 

三、实施

1、源服务器备份

innobackupex --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock --user=root --password=123456 --parallel=4 --database=dyb.liveniao.com /data/test

2、保持事务一直性

innobackupex --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock --user=root --password=123456 --parallel=4 --database=dyb.liveniao.com --apply-log /data/test/{备份的文件夹}

3、将备份好的文件夹复制到目标服务器上

4、目标服务器关闭mysql:systemctl stop mysqld

5、目标服务器数据库数据文件夹清空

mv /data/mysql  /data/mysql_bak

6、创建mysql文件夹

mkdir /data/mysql

chown -R mysql:mysql mysql

7、目标恢复备份

innobackupex --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock --user=root --password=Mysql123456@
--copy-back /data/test/2019-06-19_18-22-00/

恢复备份以后,再运行:chown -R mysql:mysql mysql

防止服务器启动不起来

8、进行主从复制

(1)、先在源服务器上授权同步账号

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave_passport';

(2)、获取二进制日志信息

cat /data/test/{备份文件夹}/xtrabackup_binlog_info

(3)、设置从服务器

CHANGE MASTER TO
MASTER_HOST='****',
MASTER_USER='slave',
MASTER_PASSWORD='****',
MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin.000347',
MASTER_LOG_POS=444732;

(4)、启动slave

start slave;

show slave statusG;

验证

注意:在配置主从的时候,两台服务器的sever_id一定不能一样,否则主从有问题!

最后

以上就是听话心情为你收集整理的不停机迁移数据库方案的全部内容,希望文章能够帮你解决不停机迁移数据库方案所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(76)

评论列表共有 0 条评论

立即
投稿
返回
顶部