MySQL高可用解决方案MMM(MySQL Multi-Master Replication Manager)是一个用于管理MySQL多主复制系统的工具,它可以自动化地切换主站节点,保证多节点的高可用性。
MMM主要由以下三个组件组成:
-
Master Agent:在每个主服务器节点上运行的守护程序;
-
Master Monitor:安装在一个或多个监视器上的监视器守护程序;
-
Cluster Manager:管理MySQL多主复制系统的命令行工具。
下面是MMM的设置与使用步骤:
- 安装MMM组件
1.1 首先通过包管理器安装MMM:
$ yum install mmm-agent mmm-monitor mmm-tools
1.2 启动MMM:
$ service mmm-agent start
$ service mmm-monitor start
- 配置MMM
2.1 在管理员机器上安装Cluster Manager:
$ sudo apt-get install mmm-tools
2.2 配置MMM的主控制文件
# vi /etc/mmm/mmm.cfg
将以下设置替换为实际设置:
cluster=my_cluster
log_level=debug
check_interval=10
repl_user=repl_user_name
repl_password=repl_password
# 建立SSH连接
ssh_user=root
# 主库设置
host1=master1.example.com
ping_host1=mysql1.example.com
binlog_dir1=/mnt/mysql/binlog/
ping_port1=3306
master_binlog=binlog.0000XX
master_log_pos=XXXXXX
# 从库设置
# host2=slave1.example.com
# ping_host2=mysql1.example.com
# ping_port2=3306
# slave_user=repl_user_name
# slave_password=repl_password
# replication_interfaces_callable_on_slave=0
2.3 检查ssh连接
检查所有主库和从库是否可以通过SSH访问:
$ mmm_check_ssh --master
$ mmm_check_ssh --slave
2.4 检查MySQL连接
检查所有主库和从库是否可以通过MySQL连接:
$ mmm_check_repl --master
$ mmm_check_repl --slave
2.5 添加主库
$ mmm_control add_master --ip=192.168.1.10 \
--hostname=master1 \
--binlogdir=/var/lib/mysql \
--basedir=/usr \
--pingport=3306 \
--sshuser=username \
--method=mysqldump \
--passwdfile=/etc/mmm/passwd \
--logsuffix=logsuffix
2.6 添加从库
$ mmm_control add_slave --ip=192.168.1.10 \
--hostname=slave1 \
--pingport=3306 \
--sshuser=username \
--masterhost=master1 \
--method=mysqldump \
--passwdfile=/etc/mmm/passwd
2.7 执行MMM配置
$ mmm_control setup
- 测试MMM
3.1 将主库切换到从库
$ mmm_control switch --role=writer --new_master=master2.example.com
3.2 取消切换主库
$ mmm_control revert_switch --role=writer --new_master=master2.example.com
以上就是使用MMM进行MySQL高可用设置的完整攻略,其中还包括多条详细的配置示例说明。通过使用MMM,可以轻松地实现MySQL多主复制系统的高可用性。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL高可用解决方案MMM(mysql多主复制管理器) - Python技术站