mysql mha布署参考

#mysql mha布署

1. ip规划
1主2从,1个mha监控,1个mycat ,1个虚拟IP地址(再预留1个)

2.安装依赖包

#先安装yum扩展包
RHEL/CentOS 7 64 Bit
 ## RHEL/CentOS 7 64-Bit ##下边这个链接不上
# wget http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm
# rpm -ivh epel-release-7-0.2.noarch.rpm

centos7扩展源:
 RHEL/CentOS 7:
    # yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm


#管理监控节点:
yum  -y install perl-Config-Tiny.noarch perl-Time-HiRes.x86_64 \
perl-Parallel-ForkManager perl-Log-Dispatch-Perl.noarch perl-DBD-MySQL ncftp

yum install  perl-Log-Dispatch-Perl  ==>yum install perl-Log-Dispatch   解决?


#数据库节点(1主2从)
yum -y install perl-DBD-MySQL ncftp perl-DBI  #node包运行需要

yum -y install libaio*  #mysql运行依赖库文件


#mycat需要安装jdk8的环境 和其它环境配置

3.#创建ssh互信协议,4台机器上执行

ssh-keygen

ssh-copy-id -i root@ip地址


4.布署1主多从的环境mysql数据库(3个数据库机器上执行)
转数据库操作

#无法做主从同步时要留意 防火墙有无关闭:systemctl  stop firewalld

5.安装node安装包(除mycat外的4台主机)
mha4mysql-node-0.57-0.57-0.3l7.noarch.rpm

rpm -ivh xxx


6.mha监控主机配置布署
#安装manager安装包(mha监控主机)
rpm -ivh xxx

mkdir -p /etc/mha
mkdir -p  /home/mysql_mha/

#配置
#/etc/mha/mysql_mha.cnf

[server default]
user=mha
password=123456
manager_workdir=/home/mysql_mha
manager_log=/home/mysql_mha/manager.log
remote_workdir=/home/mysql_mha
ssh_user=root
repl_user=repl
repl_password=123456
ping_interval=1
master_binlog_dir=/application/mysql56/data
master_ip_failover_script=/usr/bin/mha_master_ip_failover
secondary_check_script=/usr/bin/masterha_secondary_check -s ip1 -s ip2 -s ip3
[server1]
hostname=ip1
candidate_master=1
[server2]
hostname=ip2
candidate_master=1
[server3]
hostname=ip3
no_master=1

#chmod 755
chmod 755 /usr/bin/mha_master_ip_failover

#一主二从上的此配置文件将此行注释,否则vip切换时会因为报错而无法切换
/etc/sudoers
Defaults    requiretty  #注释掉表示不需要控制终端。

#配置虚拟IP,要留意下实际用到的ethxxx
ifconfig enp0s3:1 xxx/24


#将mysql的bin目录变量加入到/etc/profile文件中
或者通过类似下边操作添加到:
ln -s /application/mysql56/bin/mysqlbinlog /usr/bin/mysqlbinlog
ln -s  /application/mysql56/bin/mysql   /usr/bin/mysql

#环境配置验证
masterha_check_ssh --conf=/etc/mha/mysql_mha.cnf
masterha_check_repl --conf=/etc/mha/mysql_mha.cnf


#验证通过后
#mha启动运行
nohup masterha_manager --conf=/etc/mha/mysql_mha.cnf &

#高可用验证
1. 主库down后,从库是否自动连到备用的主库上
2. 将原来的down掉的主库修复问题后根据日志重连到新的主库上作为新的从库
grep -i "All other slaves should start replication from here" /home/mysql_mha/manager.log 


#注意事项:
1.每次故障后会停止,如果切换成功,重新开启manager服务时要删除mysql_mha.failover.complete文件,否则后续故障转移时会报错
2.vip无法切换时要留意此文件/etc/sudoers
 

你可能感兴趣的:(MYSQL)