首页 > 代码库 > mysql-mmm

mysql-mmm

部署实施:

1、环境介绍

角色

IP

server-id

write-VIP

read-VIP

monitor

192.168.0.100




master-01

192.168.0.102

1

192.168.0.188

192.168.0.202

master-02

192.168.0.103

2

192.168.0.188

192.168.0.203

slave

192.168.0.101

100


192.168.0.201

2、在数据库节点上,分别执行下列命令进行安装mysql-mmm

3. 在master-01,master-02,slave 上授权不同角色

1

2

3

4

5

6

7

8

9

10

由于我的配置文件忽略了同步 mysqlinformation_schema数据库,所以才要分别执行!

否则的话,在主执行一次,其余数据库就会自动同步过去了。

mysql> GRANT REPLICATION CLIENT ON *.* TO ‘mmm_monitor‘@‘192.168.0.%‘  

     > IDENTIFIED BY‘gang123‘; 

Query OK, 0 rows affected (0.01 sec)

 

mysql> GRANT SUPER, REPLICATION CLIENT, PROCESS ON *.* TO 

     > ‘mmm_agent‘@‘192.168.0.%‘ IDENTIFIED BY ‘gang123‘;

Query OK, 0 rows affected (0.00 sec)

 

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

4. 在所有服务器上配置/etc/mysql-mmm/mmm_common.conf

# 可以修改一台,然后同步到其他服务器,记住,是所有服务器,包括DB,monitor

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

[root@master-01 tools]# vim /etc/mysql-mmm/mmm_common.conf 

active_master_role      writer

<host default>

    cluster_interface       eth0

    pid_path                /var/run/mysql-mmm/mmm_agentd.pid

    bin_path                /usr/libexec/mysql-mmm/

    replication_user        rep

    replication_password    123456

    agent_user              mmm_agent

    agent_password          gang123

</host>

#定义master-01主机 peer定义主主角色成员 mode指定读/写角色

<host db1>

    ip      192.168.0.102  

    mode    master

    peer    db2

</host>

#定义master-02主机 peer定义主主角色成员 mode指定读/写角色

<host db2>

    ip      192.168.0.103

    mode    master

    peer    db1

</host>

#定义slave主机 

<host db3>

    ip      192.168.100.101

    mode    slave

</host>

定义 write-VIP

<role writer>

    hosts   db1, db2

    ips     192.168.0.188

    mode    exclusive

</role>

定义 read-VIP

<role reader>

    hosts   db1, db2

    ips     192.168.0.201 192.168.0.202 192.168.0.203

    mode    balanced

</role>

5. 修改所有MySQL数据库主机的/etc/mysql-mmm/mmm_agent.conf配置文件,使之和mmm_commom.conf中匹配

例如,修改master-02为

1

 

include mmm_common.conf

this db2

#此处为db2...

6. 修改monitor主机的配置文件/etc/mysql-mmm/mmm_mon.conf

 

10

11

12

13

14

15

16

18

19

20

21

[root@slave tools]# vim /etc/mysql-mmm/mmm_mon.conf 

 

include mmm_common.conf

 

<monitor>

    ip                  127.0.0.1

    pid_path            /var/run/mysql-mmm/mmm_mond.pid

    bin_path            /usr/libexec/mysql-mmm

    status_path         /var/lib/mysql-mmm/mmm_mond.status

    ping_ips            192.168.0.101 192.168.0.102 192.168.0.103

    auto_set_online     15

# ping_ips 表示mmm-monitor服务监控的数据库服务器

# auto_set_online 表示自动切换时间间隔,15秒失去联系,启动切换角色

</monitor>

 

<host default>

    monitor_user        mmm_monitor   #之前数据库授权监控进程用户

    monitor_password    gang123       #数据库授权密码

</host>

 

debug 0

7. 在三台 MySQL数据库节点启动agent进程

1

[root@master tools]# /etc/init.d/mysql-mmm-agent start

  在monitor服务器开启monitor进程

1

[root@monitor tools]# /etc/init.d/mysql-mmm-monitor start

 


本文出自 “sleepcat” 博客,请务必保留此出处http://sw5720.blog.51cto.com/8812314/1437670