体系结构:

安装环境:
?
Manager: OS:redhat 6.3 NAME:zbdba1 IP:192.168.56.160 NODE1: Mysql_role:master OS:redhat 6.3 NAME:zbdba2 IP:192.168.56.161 NODE2: Mysql_role:slave OS:redhat6.3 NAME:zbdba3 IP:192.168.56.161
1、安装配置manager节点
2、在node节点安装mysql
3、配置mysql主从复制
4、在node节点安装mha
5、配置节点间互信
6、开启MHA
7、测试MHA
?
1、安装配置manager节点
下载mha的manager和node包
?
wget http://www.mysql.gr.jp/frame/modules/bwiki/index.php?plugin=attach&pcmd=open&file=mha4mysql-manager-0.56-0.el6.noarch.rpm&refer=matsunobu wget http://www.mysql.gr.jp/frame/modules/bwiki/index.php?plugin=attach&pcmd=open&file=mha4mysql-node-0.56-0.el6.noarch.rpm&refer=matsunobu安装依赖包:
?
?
yum install perl-DBD-MySQL yum install perl-Config-Tiny yum install perl-Log-Dispatch yum install perl-Parallel-ForkManager
?
这里推荐使用repoforge源:
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
安装
rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm
rpm -ivh mha4mysql-manager-0.56-0.el6.noarch.rpm
配置manager:
?
mkdir -p /etc/masterha/app1 [root@zbdba1 masterha]# cat app1.cnf [server default] manager_workdir=/masterha/app1 manager_log=/masterha/app1/manager.log user=root password=mysql ssh_user=root repl_user=root repl_password=mysql ping_interval=1 shutdown_script="" #master_ip_failover_script="/usr/local/bin/master_ip_failover" master_ip_online_change_script="" report_script="" [server1] hostname=192.168.56.161 master_binlog_dir="/var/lib/mysql" candidate_master=1 [server2] hostname=192.168.56.162 master_binlog_dir="/var/lib/mysql" candidate_master=1
这两步就不详细说明了
?
4、在node节点安装mha
两个node节点安装:
rpm -ivh perl-DBD-MySQL-4.022-1.el6.rfx.x86_64.rpm
mha4mysql-node-0.56-0.el6.noarch.rpm
5、配置节点间互信
?
[root@zbdba1 ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa already exists. Overwrite (y/n)? y 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. The key fingerprint is: f6:86:4a:38:7f:43:ec:d4:1f:d7:04:2e:48:5f:be:c9 root@zbdba1 The key's randomart image is: +--[ RSA 2048]----+ | | | . o | | . o + . | | . o o .| | .S. o = | | . .+o. . E .| | o .+. o. o | | + .+. . | | o. . | +-----------------+ [root@zbdba1 ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.56.161 root@192.168.56.161's password: Now try logging into the machine, with "ssh 'root@192.168.56.161'", and check in: .ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting. [root@zbdba1 ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.56.162 root@192.168.56.162's password: Now try logging into the machine, with "ssh 'root@192.168.56.162'", and check in: .ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting. [root@zbdba2 ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa already exists. Overwrite (y/n)? y Enter passphrase (empty for no passphrase): Enter sa