环境: 三台机器

主服务器: 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 ';

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

[mysqld]

read-only

relay_log_purge=

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.在主备机器或从服务器上, 加入计划任务

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

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

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

[server default]

user=mha

password=

manager_workdir=/masterha/app1

manager_log=/masterha/app1/manager.log

remote_workdir=/masterha/app1

ssh_user=root

repl_user=rep

repl_password=

ping_interval=

secondary_check_script= masterha_secondary_check -s 192.168.1.130 -s 192.168.1.131

master_ip_failover_script=/usr/local/bin/master_ip_failover

[server1]

hostname=192.168.32.130

ssh_port=

master_binlog_dir=/usr/local/mysql/data

candidate_master=

[server2]

hostname=192.168.32.131

ssh_port=

master_binlog_dir=/usr/local/mysql/data

candidate_master=

;

mysql系列之8.mysql高可用 (mha4mysql)的更多相关文章

  1. 利用keepalive+mysql replication 实现数据库的高可用

    利用keepalive+mysql replication 实现数据库的高可用 http://www.xuchanggang.cn/archives/866.html

  2. [转帖]【MySQL+keepalived】用keepalived实现MySQL主主模式的高可用

    [MySQL+keepalived]用keepalived实现MySQL主主模式的高可用 https://www.jianshu.com/p/8694d07595bc 一.实验说明 MySQL主主模式 ...

  3. Mysql双主双从高可用集群的搭建且与MyCat进行整合

    1.概述 老话说的好:瞻前顾后.患得患失只会让我们失败,下定决心,干就完了. 言归正传,之前我们聊了Mysql的一主一从读写分离集群的搭建,虽然一主一从或一主多从集群解决了并发读的问题,但由于主节点只 ...

  4. mysql mha 主从自动切换 高可用

    mha(Master High Availability)目前在MySQL多服务器(超过二台),高可用方面是一个相对成熟的解决方案. 一,什么是mha,有什么特性 1. 主服务器的自动监控和故障转移 ...

  5. MySQL MGR+ Consul之数据库高可用方案

    背景说明:     基于目前存在很多MySQL数据库单点故障,传统的MHA,PXC等方案用VIP或者DNS切换的方式可以实现.基于数据库的数据强一致性考虑,采用MGR集群,采用consul服务注册发现 ...

  6. 【mysql】Mgr实现数据库高可用架构

    转载:https://www.cnblogs.com/luoahong/articles/8043035.html MGR简介 MySQL Group Replication(下简称:MGR)是MyS ...

  7. 通过keepalived搭建MySQL双主模式的高可用集群系统

    1. 配置MySQL双主模式 1.修改my.cnf配置文件 默认情况下,MySQL的配置文件是/etc/my.cnf,在配置文件的[mysqld]段添加如下内容: server-id=1 log-bi ...

  8. 企业级-Mysql双主互备高可用负载均衡架构(基于GTID主从复制模式)(原创)

    前言:          原理与思想        这里选用GTID主从复制模式Mysql主从复制模式,是为了更加确保主从复制的正确性.健康性与易配性.这里做的是两服务器A,B各有Mysql实例331 ...

  9. MySQL+Keepalived实现主主高可用方案

    Mysql主主高可用方案 master配置 [root@master ~]# yum -y install keepalived [root@master ~]# vim /etc/keepalive ...

  10. MySQL双主+keepalived实现高可用实现(热备)

    环境:centos6.7 最小化安装 192.168.100.152 master 主192.168.100.153 slave 从192.168.100.132 v_ip 浮动IP 配置ssh密码登 ...

随机推荐

  1. 缺少 Google API 秘钥,因此 Chromium 的部分功能将无法使用

    获取密钥(ID)教程: https://www.chromium.org/developers/how-tos/api-keys 获取密钥(ID)地址: https://cloud.google.co ...

  2. linux基础学习8

      管理主机每天任务: 查询登录档.追踪流量.监控用户使用主机状态.主机各项硬设备状态. 主机软件更新查询.其他使用者要求: 因此shell script 就必须要学啊,虽然可以说绝大部分shell能 ...

  3. phpexcel常用操作

    $objPHPExcel = new PHPExcel();//设置列宽$objPHPExcel->getActiveSheet()->getColumnDimension('A')-&g ...

  4. 快速乘法,幂计算 hdu5666

    在实际应用中为了防止数据爆出,在计算a*b%m和x^n%m时,可以采用此方法.在数论中有以下结论: a*b%m=((a%m)*(b*m))%m ; (a+b)%m=(a%m+b%m)%m ; _int ...

  5. C++/C# 托管扩展 更改概要 [转]

    源文 :https://msdn.microsoft.com/zh-cn/library/ms235298%28v=vs.100%29.aspx Visual Studio 2010 其他版本 此概要 ...

  6. 228. 汇总区间(leetcode)

    #整体思路:使用堆栈,在Python中可以使用列表代替:如果a[i]-a[i-1]==1,就要将a[i]合并到之前的区间里,#所以我们队首位元素开辟一个区间为[a[0],a[0]]#做最后汇总时候,如 ...

  7. nginx phase handler的原理和选择

    nginx phase handler的原理和选择 PHASE HANDLER的种类 nginx在接收并解析完请求行.请求头之后.就会依次调用各个phase handler. phase handle ...

  8. Linux学习之十三-vi和vim编辑器及其快捷键

    vi和vim编辑器及其快捷键 1.vi与vim区别 它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面. vim的这些优势主要体现在以下几个方 ...

  9. API接口管理工具postman等

    国外 postman Swagger:国外比较流行的一款管理工具,英文配置,需要一定的英文基础和服务器搭建基础,学习成本较高. 国内 Apizza: 风格类似postman,熟悉postman的会比较 ...

  10. Solidworks如何生成爆炸图

    1 自动爆炸 点击"爆炸视图"按钮,然后全部选中装配体(被选中的零件会变为蓝色,全部选中即全部变色)然后在组成偶尔的爆炸窗口中下拉,点击应用.   再点击完成   回到装配体面板, ...