博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql系列之8.mysql高可用 (mha4mysql)
阅读量:4565 次
发布时间:2019-06-08

本文共 2665 字,大约阅读时间需要 8 分钟。

环境: 三台机器

主服务器: 192.168.1.130

主备机器: 192.168.1.131

监控机器: 192.168.1.132

130和131, 是mysql双主架构

 

1.在三台机器上安装mha4mysql-node

yum -y install perl-DBD-MySQL

tar -zxvpf mha4mysql-node-0.56.tar.gz

mha4mysql-node-0.56.tar.gz   

cd mha4mysql-node-0.56

perl Makefile.PL

----------------

可能报错:

Can't locate ExtUtils/MakeMaker.pm

Can't locate CPAN.pm

解决办法:

yum install perl perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker perl-CPAN

----------------

make && make install

 

2.在主服务器和主备机器上:

授权账户

mysql> grant all on *.* to "mha"@"192.168.32.%" identified by '123456';

 

主备修改my.cnf: 增加两个参数

[mysqld]read-onlyrelay_log_purge=0

 

3.在监控机器上安装mha4mysql-manager

yum install perl-DBD-MySQL perl-Config-Tiny perl-Log-Dispatch perl-Parallel-ForkManager perl-Config-IniFiles perl-Time-HiRes

tar -zxvpf mha4mysql-manager-0.56.tar.gz

mha4mysql-manager-0.56.tar.gz 

cd mha4mysql-manager-0.56

perl Makefile.PL

------------------

可能报错:

Can't locate Log/Dispatch.pm

解决办法:

perl -MCPAN -e "install Log::Dispatch"

------------------

make && make install

 

4.修改manager的配置文件: 详见...

mkdir /etc/masterha

mkdir -p /masterha/app1

cd mha4mysql-manager-0.56

cp samples/conf/* /etc/masterha/

cp samples/scripts/* /usr/local/bin/

 

5.在三台机器上都执行建立ssh无密码登录环境

ssh-keygen -t rsa

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.32.130

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.32.131

//132机器执行后两句

//131机器执行第二句

//130机器执行第三句

 

6.回到监控机器检查: ssh登录  repl复制

masterha_check_ssh --conf=/etc/masterha/app1.cnf

------------------

可能报错:

Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)

解决办法: ???

chmod 700 /root/

chmod 700 /root/.ssh/

chmod 644 /root/.ssh/authorized_keys   

chmod 600 /root/.ssh/id_rsa

------------------

masterha_check_repl --conf=/etc/masterha/app1.cnf

都无误后可以启动manager

nohup masterha_manager --conf=/etc/masterha/app1.cnf < /dev/null > /masterha/app1/manager.log 2>&1 &

 

7.在主备机器或从服务器上加入计划任务

00 00 * * * /usr/local/bin/purge_relay_logs –user=mha –password=123456 –disable_relay_log_purge >> /masterha/purge_relay_logs.log 2>&1

 

正常情况下,master主机用虚拟IP对外提供写服务。master宕掉后, master将转移到主备

 

配置文件:      /etc/masterha/app1.cnf

[server default]user=mhapassword=123456manager_workdir=/masterha/app1manager_log=/masterha/app1/manager.logremote_workdir=/masterha/app1ssh_user=rootrepl_user=reprepl_password=123456ping_interval=1secondary_check_script= masterha_secondary_check -s 192.168.1.130 -s 192.168.1.131master_ip_failover_script=/usr/local/bin/master_ip_failover[server1]hostname=192.168.32.130ssh_port=22master_binlog_dir=/usr/local/mysql/datacandidate_master=1[server2]hostname=192.168.32.131ssh_port=22master_binlog_dir=/usr/local/mysql/datacandidate_master=1

 

 

 

 

 

 

;

转载于:https://www.cnblogs.com/upup2015/p/7782444.html

你可能感兴趣的文章
从0开始学爬虫3之xpath的介绍和使用
查看>>
HTML fieldset和legend标签
查看>>
Shell成长之路
查看>>
使用kmeans聚类观察京东物流优化挑战赛的数据
查看>>
同一天有重复请假
查看>>
POJ 1410 Intersection --几何,线段相交
查看>>
第一册:lesson eighty one.
查看>>
html5+js+.Net的即时多人聊天
查看>>
NSArray
查看>>
理论制作 Windows 开机动画
查看>>
Lucene4.9学习笔记——Lucene建立索引
查看>>
安卓备份 To Do(待办事项)的数据库
查看>>
vim下正则表达式的非贪婪匹配
查看>>
一个python的计算熵(entropy)的函数
查看>>
spring源码学习——spring整体架构和设计理念
查看>>
模拟window系统的“回收站”
查看>>
OpenCV中的split函数
查看>>
session共享
查看>>
MongoDB divide 使用之mongotempalte divide
查看>>
style不同取值对应的日期、时间格式
查看>>