MySQL之MHA+keepalived方案演示(五)

接着上篇博文MySQL之MHA+keepalived方案演示(四)中的MySQL的故障切换,当前主库变为了192.168.2.129机器,同时129机器上的keepalived服务被开启。然而192.168.2.128原来的主库被挂掉了,运行的keepalived也被停止了。
重新启动192.168.2.128机器上的mysql,
添加192.168.2.128机器上的mysql作为192.168.2.129新主库的slave从库.

查看 192.168.2.130 机器上的故障切换日志:

grep "MASTER_PASSWORD"  /var/log/masterha/app1/manager.log
Sun Jul  1 17:04:32 2018 - [info]  All other slaves should start replication from here. Statement should be: CHANGE MASTER TO MASTER_HOST=‘192.168.2.129‘, MASTER_PORT=3306, MASTER_LOG_FILE=‘mysql-bin.000003‘, MASTER_LOG_POS=154, MASTER_USER=‘repmha‘, MASTER_PASSWORD=‘xxx‘;

直接登陆192.168.2.128上的mysql,执行(切忌不要画蛇添足从129机器上dump出数据恢复到128机器这样的方式来做MySQL同步)

CHANGE MASTER TO MASTER_HOST=‘192.168.2.129‘, MASTER_PORT=3306, MASTER_LOG_FILE=‘mysql-bin.000003‘, MASTER_LOG_POS=154, MASTER_USER=‘repmha‘, MASTER_PASSWORD=‘123456‘;
start slave;
show master status\G

192.168.2.128源主库成功添加为129新主库的slave从库。

手动修改监控机 192.168.2.130配置文件app1.cnf
现在的配置文件如下:

[[email protected] ~]#  mkdir -p /etc/masterha
[[email protected] masterha]# cat /etc/masterha/app1.cnf
[server default]
manager_log=/var/log/masterha/app1/manager.log
manager_workdir=/var/log/masterha/app1.log
master_binlog_dir=/data/mysql/logs/bin-log
master_ip_failover_script=/usr/local/bin/master_ip_failover
master_ip_online_change_script=/usr/local/bin/master_ip_online_change
password=123456
ping_interval=1
remote_workdir=/tmp
repl_password=123456
repl_user=repmha
report_script=/usr/local/bin/send_report
secondary_check_script=/usr/local/bin/masterha_secondary_check -s server03 -s server02 --user=root --master_host=server02 --master_ip=192.168.2.128 --master_port=3306
shutdown_script=""
ssh_port=10280
ssh_user=root
user=monitor

[server2]
candidate_master=1
check_repl_delay=0
hostname=192.168.2.129
port=3306

[server3]
hostname=192.168.2.130
port=3306
You have new mail in /var/spool/mail/root
[[email protected] masterha]# 

修改后的配置文件如下:

[[email protected] ~]# cat  /etc/masterha/app1.cnf
[server default]
manager_log=/var/log/masterha/app1/manager.log
manager_workdir=/var/log/masterha/app1.log
master_binlog_dir=/data/mysql/logs/bin-log
master_ip_failover_script=/usr/local/bin/master_ip_failover
master_ip_online_change_script=/usr/local/bin/master_ip_online_change
password=123456
ping_interval=1
remote_workdir=/tmp
repl_password=123456
repl_user=repmha
report_script=/usr/local/bin/send_report
secondary_check_script=/usr/local/bin/masterha_secondary_check -s server02 -s server03 --user=root --master_host=server03 --master_ip=192.168.2.129 --master_port=3306
shutdown_script=""
ssh_port=10280
ssh_user=root
user=monitor

[server1]
hostname=192.168.2.129
port=3306

[server2]
candidate_master=1
check_repl_delay=0
hostname=192.168.2.128
port=3306

[server3]
hostname=192.168.2.130
port=3306

kill掉原来的监控进程

[[email protected] app1]# ps -ef|grep perl
root      47458  40702  0 15:29 pts/3    00:00:00 perl /usr/local/bin/masterha_manager --conf=/etc/masterha/app1.cnf --remove_dead_master_conf --ignore_last_failover
root      47604  40702  0 15:30 pts/3    00:00:00 grep perl
[[email protected] app1]# kill -9    47458

重新启动masterha_manager

[[email protected] app1]# nohup masterha_manager --conf=/etc/masterha/app1.cnf --remove_dead_master_conf --ignore_last_failover < /dev/null > /var/log/masterha/app1/manager.log 2>&1 &
[1] 47458

到此处128原来的主MySQL成功的添加为129新主库的slave从库

原文地址:http://blog.51cto.com/wujianwei/2142654

时间: 2024-11-09 01:58:28

MySQL之MHA+keepalived方案演示(五)的相关文章

MySQL之MHA+keepalived方案演示(四)

配置VIP实现MHA架构中主库故障自动切换 1.说明 引入keepalived实现MHA架构中主库master故障时,从库slave自动提升为新的maservip配置可以采用两种方式:一种通过keepalived的方式管理虚拟ip的浮动:另外一种通过脚本方式启动虚拟ip的方式(即不需要keepalived或者heartbeat类似的软件).此处先介绍通过安装keepalived来管理虚拟IP的浮动: 1.1下载软件安装keepalived (两台master,准确的说一台是master,另外一台

MySQL之MHA+keepalived方案演示(三)

一.MHA之SSH免密码登录测试 1.1配置SSH登录无密码验证 上述博文已经提到过,此处再次粘贴出来,防止遗忘此步骤在server02 192.168.2.128操作(Master): 192.168.2.128 [root ~]$ ssh-keygen -t rsa 192.168.2.128 [root ~]$ ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected] 192.168.2.128 [root ~]$ ssh-copy-id

MySQL之MHA+keepalived方案演示(二)

一.配置MHA工作环境 192.168.2.130机器操作:1.1.创建MHA的工作目录,并且创建相关配置文件(在软件包解压后的目录里面有样例配置文件).指的是可以下载 mha4mysql-manager-0.56.tar.gz解压后找到样例配置文件 [[email protected] ~]# ifconfig eth1|awk -F '[ :]+' 'NR==2{print $4}' 192.168.2.130 [[email protected] ~]# ll /usr/bin/maste

整个MHA+keepalived+lvs+mysql高可用架构配置说明

整个MHA+keepalived+lvs+mysql高可用架构配置说明1.1. 环境简介1.1.1.vmvare虚拟机,系统版本CentOS7.5 x86_64位最小化安装,mysql的版本5.7.21,1.1.2.虚拟机器的ssh端口均为默认22,1.1.3.虚拟机的iptables全部关闭,1.1.4.虚拟机的selinux全部关闭,1.1.5.虚拟机服务器时间全部一致 ntpdate 0.asia.pool.ntp.org1.1.6.3台机器的ssh端口为22**1.2.此次试验采用的是3

MySQL MHA+Keepalived

一.MHA的简单介绍MHA是由perl语言编写的,用外挂脚本的方式实现mysql主从复制的高可用性.MHA可以自动检测mysql是否宕机,如果宕机,在10-30s内完成new master的选举,应用所有差异的binlog日志到所有slave,将所有的slave切换到新的master上来.MHA除了自动检测mysql是否宕机,还能够交互式的切换master,在日常的数据库维护中,这个功能还是挺有用的.由于MHA本身只负责数据库主从的切换,但是应用程序并不知道数据库的master变了.针对这种情况

mysql高可用架构方案之一(keepalived+主主双活)

Mysql双主双活+keepalived实现高可用 目录 1.前言... 4 2.方案... 4 2.1.环境及软件... 4 2.2.IP规划... 4 2.3.架构图... 4 3.安装设置MYSQL半同步... 5 4.Keepalived实现MYSQL的高可用... 11 1.前言 最近研究了下高可用的东西,这里总结一下mysql主主双活的架构方案,整体上提高服务的高可用性,出现问题也不需要手动切换,提高整体的维护效率.确定改造的话,只需要让他们的程序中使用vip地址就可以,实现起来比较

源代码编译MYSQL5.6 环境下的MHA+KEEPALIVED的安装和维护

前    言 摘   要 MHA 是当 master 出现故障,挑选一个 slave 作为新的 master 并构建成新的 主从架构的管理工具.从 master 出现故障到构建成新的主从架构时间是 10-30 秒.在 master 出现故障时可能会出现 slave 同步的数据不一致的现象,此工具 可以自动应用差异的中继日志到其他 slave 上保证数据的一致性. 一.Mha 优点 1.M aster crash 时可以快速的进行故障切换. 9-12 秒内可以检测到 master 故障, 7-10

mysql之MHA、Mycat综合分析

一.简介 MHA:  你可以把它看做是一个监控MySQL的工具,当master挂了之后,起一个slave作为master,另外一台slave重新作为新master的备库: 所以MHA的架构做好是三台数据库,并且已经提前做好了主从模式(一主两从),MHA可以管理多组MySQL主从集群:VIP的跳转也 是通过keepalived来实现的,总体的架构设计如下图所示(借助网上的图片): Mycat: 实现读写分离.分库分表的一个开源的工具,我这里没有使用到分库分表的功能,只是单纯的做读写分离:mycat

MYSQL数据库高可用方案探究

MySQL作为最关键的应用数据存储中心,如何保证MySQL服务的可靠性和持续性,是我们不得不细致考虑的一个问题.当master宕机的时候,我们如何保证数据尽可能的不丢失,如何保证快速的获知master宕机并进行相应的故障转移处理,都需要仔细考虑与规划. 要保证MySQL数据不丢失,replication是一个很好的解决方案,而MySQL提供了一套强大的replication机制,replication能极大地提升数据安全,异步复制的方式也保证了sql读写性能不受太大影响.在大量企业长期的使用和实