mysql mha 切换_MySQL MHA switchover在线切换过程

MySQL MHA switchover在线切换过程

发布时间:2020-08-08 00:01:41

来源:51CTO

阅读:288

作者:xingzhehxiang

1、切换过程,注意需要关闭masterha_manager[root@es3 ~]#  masterha_master_switch --master_state=alive --conf=/root/app1.cnf --new_master_host=es3 --orig_master_is_new_slave

Tue Aug 20 10:12:02 2019 - [info] MHA::MasterRotate version 0.58.

Tue Aug 20 10:12:02 2019 - [info] Starting online master switch..

Tue Aug 20 10:12:02 2019 - [info]

Tue Aug 20 10:12:02 2019 - [info] * Phase 1: Configuration Check Phase..

Tue Aug 20 10:12:02 2019 - [info]

Tue Aug 20 10:12:02 2019 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.

Tue Aug 20 10:12:02 2019 - [info] Reading application default configuration from /root/app1.cnf..

Tue Aug 20 10:12:02 2019 - [info] Reading server configuration from /root/app1.cnf..

Tue Aug 20 10:12:03 2019 - [info] GTID failover mode = 1

Tue Aug 20 10:12:03 2019 - [info] Current Alive Master: es1(192.168.56.14:3306)

Tue Aug 20 10:12:03 2019 - [info] Alive Slaves:

Tue Aug 20 10:12:03 2019 - [info]   es2(192.168.56.15:3306)  Version=5.7.24-log (oldest major version between slaves) log-bin:enabled

Tue Aug 20 10:12:03 2019 - [info]     GTID ON

Tue Aug 20 10:12:03 2019 - [info]     Replicating from 192.168.56.14(192.168.56.14:3306)

Tue Aug 20 10:12:03 2019 - [info]   es3(192.168.56.16:3306)  Version=5.7.24-log (oldest major version between slaves) log-bin:enabled

Tue Aug 20 10:12:03 2019 - [info]     GTID ON

Tue Aug 20 10:12:03 2019 - [info]     Replicating from es1(192.168.56.14:3306)

It is better to execute FLUSH NO_WRITE_TO_BINLOG TABLES on the master before switching. Is it ok to execute on es1(192.168.56.14:3306)? (YES/no): yes

Tue Aug 20 10:12:06 2019 - [info] Executing FLUSH NO_WRITE_TO_BINLOG TABLES. This may take long time..

Tue Aug 20 10:12:06 2019 - [info]  ok.

Tue Aug 20 10:12:06 2019 - [info] Checking MHA is not monitoring or doing failover..

Tue Aug 20 10:12:06 2019 - [info] Checking replication health on es2..

Tue Aug 20 10:12:06 2019 - [info]  ok.

Tue Aug 20 10:12:06 2019 - [info] Checking replication health on es3..

Tue Aug 20 10:12:06 2019 - [info]  ok.

Tue Aug 20 10:12:06 2019 - [info] es3 can be new master.

Tue Aug 20 10:12:06 2019 - [info]

From:

es1(192.168.56.14:3306) (current master)

+--es2(192.168.56.15:3306)

+--es3(192.168.56.16:3306)

To:

es3(192.168.56.16:3306) (new master)

+--es2(192.168.56.15:3306)

+--es1(192.168.56.14:3306)

Starting master switch from es1(192.168.56.14:3306) to es3(192.168.56.16:3306)? (yes/NO): yes

Tue Aug 20 10:12:11 2019 - [info] Checking whether es3(192.168.56.16:3306) is ok for the new master..

Tue Aug 20 10:12:11 2019 - [info]  ok.

Tue Aug 20 10:12:11 2019 - [info] es1(192.168.56.14:3306): SHOW SLAVE STATUS returned empty result. To check replication filtering rules, temporarily executing CHANGE MASTER to a dummy host.

Tue Aug 20 10:12:11 2019 - [info] es1(192.168.56.14:3306): Resetting slave pointing to the dummy host.

Tue Aug 20 10:12:11 2019 - [info] ** Phase 1: Configuration Check Phase completed.

Tue Aug 20 10:12:11 2019 - [info]

Tue Aug 20 10:12:11 2019 - [info] * Phase 2: Rejecting updates Phase..

Tue Aug 20 10:12:11 2019 - [info]

Tue Aug 20 10:12:11 2019 - [info] Executing master ip online change script to disable write on the current master:

Tue Aug 20 10:12:11 2019 - [info]   /usr/local/bin/master_ip_online_change --command=stop --orig_master_host=es1 --orig_master_ip=192.168.56.14 --orig_master_port=3306 --orig_master_user='repl' --new_master_host=es3 --new_master_ip=192.168.56.16 --new_master_port=3306 --new_master_user='repl' --orig_master_ssh_user=root --new_master_ssh_user=root   --orig_master_is_new_slave --orig_master_password=xxx --new_master_password=xxx

***************************************************************

Disabling the VIP - 192.168.56.191/24 on old master: es1

***************************************************************

Tue Aug 20 10:12:12 2019 - [info]  ok.

Tue Aug 20 10:12:12 2019 - [info] Locking all tables on the orig master to reject updates from everybody (including root):

Tue Aug 20 10:12:12 2019 - [info] Executing FLUSH TABLES WITH READ LOCK..

Tue Aug 20 10:12:12 2019 - [info]  ok.

Tue Aug 20 10:12:12 2019 - [info] Orig master binlog:pos is mysqlbin.000005:194.

Tue Aug 20 10:12:12 2019 - [info]  Waiting to execute all relay logs on es3(192.168.56.16:3306)..

Tue Aug 20 10:12:12 2019 - [info]  master_pos_wait(mysqlbin.000005:194) completed on es3(192.168.56.16:3306). Executed 0 events.

Tue Aug 20 10:12:12 2019 - [info]   done.

Tue Aug 20 10:12:12 2019 - [info] Getting new master's binlog name and position..

Tue Aug 20 10:12:12 2019 - [info]  mysqlbin.000004:154

Tue Aug 20 10:12:12 2019 - [info]  All other slaves should start replication from here. Statement should be: CHANGE MASTER TO MASTER_HOST='es3 or 192.168.56.16', MASTER_PORT=3306, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='xxx';

Tue Aug 20 10:12:12 2019 - [info] Executing master ip online change script to allow write on the new master:

Tue Aug 20 10:12:12 2019 - [info]   /usr/local/bin/master_ip_online_change --command=start --orig_master_host=es1 --orig_master_ip=192.168.56.14 --orig_master_port=3306 --orig_master_user='repl' --new_master_host=es3 --new_master_ip=192.168.56.16 --new_master_port=3306 --new_master_user='repl' --orig_master_ssh_user=root --new_master_ssh_user=root   --orig_master_is_new_slave --orig_master_password=xxx --new_master_password=xxx

***************************************************************

Enabling the VIP - 192.168.56.191/24 on new master: es3

***************************************************************

Tue Aug 20 10:12:13 2019 - [info]  ok.

Tue Aug 20 10:12:13 2019 - [info]

Tue Aug 20 10:12:13 2019 - [info] * Switching slaves in parallel..

Tue Aug 20 10:12:13 2019 - [info]

Tue Aug 20 10:12:13 2019 - [info] -- Slave switch on host es2(192.168.56.15:3306) started, pid: 4076

Tue Aug 20 10:12:13 2019 - [info]

Tue Aug 20 10:12:14 2019 - [info] Log messages from es2 ...

Tue Aug 20 10:12:14 2019 - [info]

Tue Aug 20 10:12:13 2019 - [info]  Waiting to execute all relay logs on es2(192.168.56.15:3306)..

Tue Aug 20 10:12:13 2019 - [info]  master_pos_wait(mysqlbin.000005:194) completed on es2(192.168.56.15:3306). Executed 0 events.

Tue Aug 20 10:12:13 2019 - [info]   done.

Tue Aug 20 10:12:13 2019 - [info]  Resetting slave es2(192.168.56.15:3306) and starting replication from the new master es3(192.168.56.16:3306)..

Tue Aug 20 10:12:13 2019 - [info]  Executed CHANGE MASTER.

Tue Aug 20 10:12:13 2019 - [info]  Slave started.

Tue Aug 20 10:12:14 2019 - [info] End of log messages from es2 ...

Tue Aug 20 10:12:14 2019 - [info]

Tue Aug 20 10:12:14 2019 - [info] -- Slave switch on host es2(192.168.56.15:3306) succeeded.

Tue Aug 20 10:12:14 2019 - [info] Unlocking all tables on the orig master:

Tue Aug 20 10:12:14 2019 - [info] Executing UNLOCK TABLES..

Tue Aug 20 10:12:14 2019 - [info]  ok.

Tue Aug 20 10:12:14 2019 - [info] Starting orig master as a new slave..

Tue Aug 20 10:12:14 2019 - [info]  Resetting slave es1(192.168.56.14:3306) and starting replication from the new master es3(192.168.56.16:3306)..

Tue Aug 20 10:12:14 2019 - [info]  Executed CHANGE MASTER.

Tue Aug 20 10:12:14 2019 - [info]  Slave started.

Tue Aug 20 10:12:14 2019 - [info] All new slave servers switched successfully.

Tue Aug 20 10:12:14 2019 - [info]

Tue Aug 20 10:12:14 2019 - [info] * Phase 5: New master cleanup phase..

Tue Aug 20 10:12:14 2019 - [info]

Tue Aug 20 10:12:14 2019 - [info]  es3: Resetting slave info succeeded.

Tue Aug 20 10:12:14 2019 - [info] Switching master to es3(192.168.56.16:3306) completed successfully.

[root@es3 ~]# ip addr

1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

valid_lft forever preferred_lft forever

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: enp0s3:  mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

link/ether 08:00:27:ed:8b:51 brd ff:ff:ff:ff:ff:ff

inet 10.0.2.15/24 brd 10.0.2.255 scope global noprefixroute dynamic enp0s3

valid_lft 84197sec preferred_lft 84197sec

inet6 fe80::c377:b5dd:2937:f269/64 scope link noprefixroute

valid_lft forever preferred_lft forever

3: enp0s8:  mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

link/ether 08:00:27:1f:f9:c8 brd ff:ff:ff:ff:ff:ff

inet 192.168.56.16/24 brd 192.168.56.255 scope global noprefixroute dynamic enp0s8

valid_lft 1030sec preferred_lft 1030sec

inet 192.168.56.191/24 brd 192.168.56.255 scope global secondary enp0s8:1

valid_lft forever preferred_lft forever

inet6 fe80::90e0:253d:ab32:8ba4/64 scope link noprefixroute

valid_lft forever preferred_lft forever

[root@es3 ~]#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值