mysql高可用
1 mmm架构mysql高可用集群 (mysql MMM +mysql主从同步)
1、公共配置
配置固定物理Ip地址 237 42 101 102 77
所有机器之间彼此可以ping通
服务器237 42 101 102 运行mysql数据库服务、
配置YUM源
在所有服务器237 42 101 102 77上安装
rpm-qperl||yum-yperl
yum-yinstallperl-*
2、配置主主结构 (237 42)
237的配置
mysql> grantreplication slaveon*.* toslaveuser@"172.40.7.42"> # cat /etc/my.cnf
log-bin=master237
server_id=237
:wq
#servicemysqlrestart
42的配置
mysql> grantreplication slaveon*.* toslaveuser@"%"> vim /etc/my.cnf
server_id=42
log-bin=master42
log_slave_updates
:wq
servicemysql restart
mysql-uroot-p123
mysql> changemasterto master_host="172.40.7.237",master_user="slaveuser",master_password="123",master_log_file="master237.000001",master_log_pos=120;
mysql> startslave;
在237上把自己配置为42的从数据库服务器
changemasterto master_host="172.40.7.42",master_user="slaveuser",master_password="123",master_log_file="master42.000001",master_log_pos=120;
mysql> startslave;
3、配置 101和102 做42 的从数据库服务器
vim /etc/my.cnf
server_id=101
:wq
servicemysqlrestart
mysql> changemasterto master_host="172.40.7.42",master_user="slaveuser",master_password="123",master_log_file="master42.000001",master_log_pos=120;
mysql> startslave;
在所有服务器237 42 101 102 77上安装mysql-mmm软件
unzipmysql-mmm.zip
cdmysql-mmm
tar-zxvfmysql-mmm-2.2.1.tar.gz
cd mysql-mmm-2.2.1
makeinstall
ls /etc/mysql-mmm/*.conf
在所有数据库服务器上授权
grantreplication client,process,superon *.*to agent@"%" identified by"123456";
grantreplicationclienton *.*to monitor@"%" identified by "123456";
----------------------------------------------------------------
mysql-mmm简介?
监控、故障转移 (perl 脚本程序)
软件安装后提供2种进程
mmm-monitor 监控进程
运行在监控端 77
负责所有的监控工作的监控守护进
程,决定故 障节点的移除或恢复
mmm-agent 代理进程
运行在被监控端23742 101 102
提供简单远程服务集、提供给
监控节点
写vip 172.40.7.100
读vip 172.40.7.110
172.40.7.120
文档详解
mmm_mon.conf mmm-monitor监控进程的主配置文件
只需要在监控服务器上有
mmm_agent.conf mmm-agent代理进程的主配置文件
只需要在数据库服务器上有
# cat /etc/mysql-mmm/mmm_agent.conf
includemmm_common.conf
thismaster237
#
mmm_common.conf 所有服务器上都要有的文件。
定义服务器角色的配置文件
4 启动服务
4.1启动mmm_agent进程(101102 42 237)
日志文件/var/log/mysql-mmm/mmm_agentd.log
cdmysql-mmm
sha.sh
# /etc/init.d/mysql-mmm-agent start
Daemon bin: '/usr/sbin/mmm_agentd'
Daemon pid: '/var/run/mmm_agentd.pid'
Starting MMM Agent daemon... Ok
#
4.2启动mmm_mon进程(77)
/var/log/mysql-mmm/mmm_mond.log 日志文件
cdmysql-mmm
sha.sh
# /etc/init.d/mysql-mmm-monitor start
# mmm_control help
# mmm_control show
master237(172.40.7.237) master/AWAITING_RECOVERY. Roles:
master42(172.40.7.42) master/AWAITING_RECOVERY. Roles:
slave101(172.40.7.101) slave/AWAITING_RECOVERY. Roles:
slave102(172.40.7.102) slave/AWAITING_RECOVERY. Roles:
#
# mmm_control show
master237(172.40.7.237) master/ONLINE. Roles: writer(172.40.7.100)
master42(172.40.7.42) master/AWAITING_RECOVERY. Roles:
slave101(172.40.7.101) slave/AWAITING_RECOVERY. Roles:
slave102(172.40.7.102) slave/AWAITING_RECOVERY. Roles:
mmm_control set_online slave101
安装获取虚拟ip地址的程序
yum -y install gcc gcc-c++
gunzipNet-ARP-1.0.8.tgz
79tar-xvf Net-ARP-1.0.8.tar
80cd Net-ARP-1.0.8
81rpm -q gcc
82yum -y install gccgcc-c++
83perl Makefile.PL
84make
85make install
86ip addr show查看虚拟ip地址的命令
页:
[1]