mysql主从加MHA+keepalived部署(三) —— mha部署安装

相关文章:

mysql主从加MHA+keepalived部署(一)——mysql安装:

https://blog.csdn.net/royzhang7/article/details/100031462

mysql主从加MHA+keepalived部署(二)——mysql主从配置:

https://blog.csdn.net/royzhang7/article/details/100031462
mysql主从加MHA+keepalived部署(四) —— keepalived部署安装:

https://blog.csdn.net/royzhang7/article/details/100031832

 

 

 

--环境redhat7.5
--mha-master  192.168.3.4
--mha-node    192.168.3.4 192.169.3.3
目前只有两台虚机,故master节点装在了mysql的slave端,最好单独一台服务器


--配置ssh互信
--192.68.3.3
cd /root/.ssh

ssh-keygen -t rsa  #全回车默认值

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.

ssh-copy-id -i id_rsa.pub 192.168.3.3
ssh-copy-id -i id_rsa.pub 192.168.3.4

--192.168.3.4 
cd /root/.ssh

ssh-keygen -t rsa   #全回车默认值

ssh-copy-id -i id_rsa.pub 192.168.3.3
ssh-copy-id -i id_rsa.pub 192.168.3.4


--在3.3和3.4安装依赖包,从光盘源安装即可

yum install perl-DBD-MySQL
yum install perl-ExtUtils-CBuilder 
yum install perl-CPAN

--在两个node节点安装node包
tar xzvf mha4mysql-node-0.58.tar.gz
cd mha4mysql-node-0.58
perl Makefile.PL
make && make install

--在master节点安装依赖包,从光盘源
yum install perl-Class-Load
yum install perl-IO-Socket-SSL
yum install perl-MailTools
yum install perl-Params-Validate
yum install perl-Sys-Syslog

--在master节点3.4安装依赖包,需自行下载,手动安装

rpm -ivh  perl-Config-Tiny-2.14-7.el7.noarch.rpm
rpm -ivh  perl-Email-Date-Format-1.002-15.el7.noarch.rpm
rpm -ivh  perl-MIME-Types-1.38-2.el7.noarch.rpm
rpm -ivh  perl-MIME-Lite-3.030-1.el7.noarch.rpm
rpm -ivh  perl-Mail-Sender-0.8.23-1.el7.noarch.rpm
rpm -ivh  perl-Mail-Sendmail-0.79-21.el7.noarch.rpm
rpm -ivh  perl-Log-Dispatch-2.41-1.el7.1.noarch.rpm
rpm -ivh  perl-Parallel-ForkManager-1.18-2.el7.noarch.rpm


--在master安装管理节点
tar xzvf mha4mysql-manager-0.58.tar.gz
cd mha4mysql-manager-0.58
perl Makefile.PL
make && make install


--配置mha

--在管理节点,3.4上,将mysql slave设置为只读

set global read_only=1;

--在两个node上配置mysql用户
grant all on *.* to 'root'@'192.168.3.%' identified by 'mysql';
flush privileges;

--在管理节点配置mha脚本

mkdir -p /usr/local/mha
cd /usr/local/mha

vi mha.conf


[server default]
manager_workdir=/usr/local/mha
manager_log=/usr/local/mha/manager.log
remote_workdir=/usr/local/mha

user = root
password = mysql
ssh_user = root
repl_user = repl
repl_password = repl
ping_interval = 1
  
#master_ip_failover_script="/usr/local/bin/master_ip_failover"
master_ip_online_change_script=""
 
shutdown_script=""
report_script=""
 
 
[server1]
hostname=192.168.3.3
port=3306
master_binlog_dir="/data/mysql/log"
candidate_master=1
 
[server2]
hostname=192.168.3.4
port=3306
master_binlog_dir="/data/mysql/log"
candidate_master=1
 

--测试ssh连接
masterha_check_ssh --conf=/usr/local/mha/mha.conf

--测试主从复制
masterha_check_repl --conf=/usr/local/mha/mha.conf


--启动mha
masterha_manager --conf=/usr/local/mha/mha.conf &

--关闭主库,观察failover过程

--192.168.3.3  systemctl stop mysqld

tail -f  /usr/local/mha/manager.log

----- Failover Report -----

mha: MySQL Master failover 192.168.3.3(192.168.3.3:3306) to 192.168.3.4(192.168.3.4:3306) succeeded

Master 192.168.3.3(192.168.3.3:3306) is down!

Check MHA Manager logs at zhangry-test2:/usr/local/mha/manager.log for details.

Started automated(non-interactive) failover.
Selected 192.168.3.4(192.168.3.4:3306) as a new master.
192.168.3.4(192.168.3.4:3306): OK: Applying all logs succeeded.
192.168.3.4(192.168.3.4:3306): Resetting slave info succeeded.
Master failover to 192.168.3.4(192.168.3.4:3306) completed successfully.

--恢复主库,还原至原环境

--192.168.3.3 
systemctl start mysqld

change master to master_host='192.168.3.4', master_user='repl',master_password='repl',master_port=3306,master_auto_position=1;

start slave;
show slave status\G

--切换主从
masterha_master_switch --master_state=alive --conf=/usr/local/mha/mha.conf --new_master_host=192.168.3.3

change master to master_host='192.168.3.3', master_user='repl',master_password='repl',master_port=3306,master_auto_position=1;

start slave;
show slave status\G

--mha状态查看,failover过后mha会停掉
masterha_check_status --conf=/usr/local/mha/mha.conf

--重新启动mha
masterha_manager --conf=/usr/local/mha/mha.conf &

--下面配置keepalived


 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值