mysql ldata_mysql data目录迁移

本文详细介绍了如何在两台MySQL主从服务器之间进行数据目录的迁移,包括停服、数据复制、配置修改、服务重启和验证数据同步的一致性。确保在迁移过程中服务状态正常,避免影响业务。
摘要由CSDN通过智能技术生成

百胜主机房mysql data目录迁移

mysql信息:

主机IP

VIP

角色

数据目录

迁移后目录

172.25.203.41

\

Masetr-1

/mnt/disk1/mysql

/opt/k8s/mysql/data/

172.25.203.40

172.25.203.254

Master-2

/mnt/disk1/mysql

/opt/k8s/mysql/data/

项目描述:

操作前先确认两边状态正常,服务器运行正常,防止出现问题,增加排场工作量!!!

172.25.203.41mysql数据目录迁移:

分别再40和41上执行:

~]# show slave status\G  #确保状态为yes,再继续往下操作。

b4317daffd65664a7374ba01a4fa51c5.png

172.25.203.40上执行:

~]# /mnt/disk1/mysql/bin/mysql -uroot -h127.0.0.1 -proot

停止数据同步:

mysql>stop slave;

172.25.203.41上执行:

停止定时任务:

~]# */15 * * * * /bin/sh /opt/purge_binlog/purge_binlog.sh > /dev/null 2>&1

69cfa3922b22e2bc64649a15b2304126.png

停止keepalived和mysql服务。

~]# systemctl status keepalived

~]# systemctl stop  keepalived

~]# service mysql stop  && service mysql status

~]# ps -aux | grep mysql  #确认返回没有进程存在,确认mysql优雅停止运行

创建数据目录迁移数据:

~]# mkdir /opt/k8s/mysql/data/ -p

~]# chown mysql.mysql /opt/k8s/mysql/data/  -R

~]# cp -r -p  /mnt/disk1/mysql/data/* /opt/k8s/mysql/data/

~]# ll /opt/k8s/mysql/data/ #需要确认下copy过去后文件和目录的属主和数组都是mysql。

761e714dbd704c781acc9f03c51ec092.png

修改/etc/my.cnf配置文件:

350ed3a3754c0464cb3159c30f91f6e4.png

只需要把配置文件中第6行数据目录修改即可:

原:

6  datadir=/mnt/disk1/mysql/data/

修改后:

6  datadir=/opt/k8s/mysql/data/

启动mysql和keepalived服务:

~]# service mysql start  && service mysql status

~]# systemctl start  keepalived

~]# systemctl status keepalived

查看状态:

当两个状态同时为yes和Seconds_Behind_Master: 0时,说明数据同步一致并且服务状态正常;同时也说明我们数据目录迁移成功。

f1a71103abf44deda6b726e2836b56ad.png

启动定时任务:

~]# crontab -l

~]# */15 * * * * /bin/sh /opt/purge_binlog/purge_binlog.sh > /dev/null 2>&1

172.25.203.40上执行:

~]# /mnt/disk1/mysql/bin/mysql -uroot -h127.0.0.1 -proot

启动数据同步:

mysql>start slave;

172.25.203.41mysql数据目录迁移完成。

模拟写入数据,验证同步状态正常,此步骤可以省略。

在41上创建一个测试库,到40上查看是否同步成功。

mysql> show databases;

mysql> CREATE DATABASE test_db_aa;

mysql> drop database test_db_aa;

172.25.203.40mysql数据目录迁移:

172.25.203.40上执行:

~]# systemctl status keepalived

~]# systemctl stop  keepalived

172.25.203.41上执行:

~]# ip add | grep 254  #验证vip漂移成功。

d433d6d2ee76865707dc60da870510fc.png

~]# /mnt/disk1/mysql/bin/mysql -uroot -h127.0.0.1 -proot

停止数据同步:

mysql>stop slave;

172.25.203.40上执行:

停止定时任务:

~]# */15 * * * * /bin/sh /opt/purge_binlog/purge_binlog.sh > /dev/null 2>&1

49c2fa15efbcccc043103ac0b923be68.png

停止mysql服务。

~]# service mysql stop  && service mysql status

~]# ps -aux | grep mysql  #确认返回没有进程存在,确认mysql优雅停止运行

创建数据目录迁移数据:

~]# mkdir /opt/k8s/mysql/data/ -p

~]# chown mysql.mysql /opt/k8s/mysql/data/  -R

~]# cp -r -p  /mnt/disk1/mysql/data/* /opt/k8s/mysql/data/

~]# ll /opt/k8s/mysql/data/ #需要确认下copy过去后文件和目录的属主和数组都是mysql。

d70ce87e51eebce58a670654470acd0a.png

修改/etc/my.cnf配置文件:

315df9bb5715c093a9b6e6ab2f6b1072.png

只需要把配置文件中第6行数据目录修改即可:

原:

6  datadir=/mnt/disk1/mysql/data/

修改后:

6  datadir=/opt/k8s/mysql/data/

启动mysql服务:

~]# service mysql start  && service mysql status

查看状态:

当两个状态同时为yes和Seconds_Behind_Master: 0时,说明数据同步一致并且服务状态正常;同时也说明我们数据目录迁移成功。

88816dc082e16ae3ce7e80ee692db255.png

启动定时任务:

~]# crontab -l

~]# */15 * * * * /bin/sh /opt/purge_binlog/purge_binlog.sh > /dev/null 2>&1

172.25.203.41上执行:

~]# /mnt/disk1/mysql/bin/mysql -uroot -h127.0.0.1 -proot

恢复数据同步:

mysql>start slave;

启动keepalived服务:

~]# systemctl start  keepalived

~]# systemctl status keepalived

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值