[root@rd-mysql-test4 src]# yum install perl-DBD-MySQL perl-Config-Tiny perl-Log-Dispatch perl-Parallel-ForkManager perl-Time-HiRes -y [root@rd-mysql-test4 src]# cd mha4mysql-manager-0.53 [root@rd-mysql-test4 mha4mysql-manager-0.53]# perl Makefile.PL [root@rd-mysql-test4 mha4mysql-manager-0.53]# make && make install注意:1.mha manager节点也需要安装mha node
2.mha manager的版本可以后manager node的版本不一样,建议使用新版本。
安装完成后会在/usr/local/bin目录下生成以下脚本:
apply_diff_relay_logs filter_mysqlbinlog masterha_check_repl 检查MySQL复制状况 masterha_check_ssh 检查MHA的SSH配置状况 masterha_check_status 检测当前MHA运行状态 masterha_conf_host 添加或删除配置的server信息 masterha_manager 启动MHA masterha_stop 停止MHA masterha_master_monitor 检测master是否宕机 masterha_master_switch 控制故障转移(自动或者手动) masterha_secondary_check 多种线路检测master是否存活
另外在/usr/local/src/mha4mysql-manager-0.53/samples/scripts下还有以下脚本,我们将其复制到/usr/local/bin
[root@rd-mysql-test4 mha4mysql-manager-0.53]#cd samples/scripts/ [root@rd-mysql-test4 scripts]# ll total 32 -rwxr-xr-x 1 root root 3443 Jan 8 2012 master_ip_failover 自动切换时VIP管理脚本 -rwxr-xr-x 1 root root 9186 Jan 8 2012 master_ip_online_change 在线切换时VIP脚本 -rwxr-xr-x 1 root root 11867 Jan 8 2012 power_manager 故障发生后关闭master脚本 -rwxr-xr-x 1 root root 1360 Jan 8 2012 send_report 故障切换发送报警脚本 [root@rd-mysql-test4 mha4mysql-manager-0.53]#cp * /usr/local/bin
3.在所有节点上做ssh免密码登录
#rd-mysql-test1 [root@rd-mysql-test1 mha4mysql-node-0.53]#ssh-keygen -t rsa [root@rd-mysql-test1 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.57 [root@rd-mysql-test1 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.58 [root@rd-mysql-test1 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.59 #rd-mysql-test2 [root@rd-mysql-test2 mha4mysql-node-0.53]#ssh-keygen -t rsa [root@rd-mysql-test2 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.56 [root@rd-mysql-test2 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.58 [root@rd-mysql-test2 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.59 #rd-mysql-test3 [root@rd-mysql-test3 mha4mysql-node-0.53]#ssh-keygen -t rsa [root@rd-mysql-test3 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.56 [root@rd-mysql-test3 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.57 [root@rd-mysql-test3 mha4mysql-node-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.59 #rd-mysql-test4 [root@rd-mysql-test4 mha4mysql-manager-0.53]#ssh-keygen -t rsa [root@rd-mysql-test4 mha4mysql-manager-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.56 [root@rd-mysql-test4 mha4mysql-manager-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.57 [root@rd-mysql-test4 mha4mysql-manager-0.53]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.10.10.584.搭建mysql主从复制
(1)在master和slave上创建复制用户并授权
mysql> grant replication slave on *.* to 'rep'@'10.10.10.%' identified by '123456'; Query OK, 0 rows affected (0.01 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
(2)两台slave设置