MySQL_MMM實現高可用性配置

來源:互聯網
上載者:User
文章目錄
  • 一、軟體包
一、軟體包

a) perl-Proc-Daemon-0.03-1.el5.noarch.rpm

b) perl-DBI-1.52-1.fc6.i386.rpm

c) perl-Algorithm-Diff-1.1902-2.el5.noarch.rpm

d) DBD-mysql-4.018.tar.gz

e) mysql-master-master-1.2.6.tar.gz

f) mysql-5.0.27.tar.gz

二、安裝步驟

a) Nod1 ip 59.64.30.118 vip 59.64.30.103(read)

b) Node2 ip 59.64.30.107 vip 59.64.30.102(read)

c) Vip 59.64.30.101(writer)

d) Mgr 59.64.28.92(管理節點)

e) 首先安裝好MYSQL軟體,配置好MYSQL主主同步。(可以正常主主同步資料)

f) Cd /var/local/software

g) rpm -ivh perl-Proc-Daemon-0.03-1.el5.noarch.rpm

h) rpm -ivh perl-DBI-1.52-1.fc6.i386.rpm

i) ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15 /bin/libmysqlclient.so.15

j) ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15 /usr/bin/libmysqlclient.so.15

k) ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15 /usr/lib/libmysqlclient.so.15

l) ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15 /usr/sbin/libmysqlclient.so.15

m) ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15 /sbin/libmysqlclient.so.15

n) tar zxvf DBD-mysql-4.018.tar.gz

o) cd DBD-mysql-4.018

p) perl Makefile.PL --with-mysql=/usr/local/mysql --mysql_config=/usr/local/mysql/bin/mysql_config

q) make && make test && make install

r) cd ../

s) rpm -ivh perl-Algorithm-Diff-1.1902-2.el5.noarch.rpm

t) tar zxvf mysql-master-master-1.2.6.tar.gz

u) cd mysql-master-master-1.2.6

v) ./install.pl

w) Cd /usr/local/mmm/etc/examples/

x) cp mmm_agent.conf.example mmm_agent.conf

y) >mmm_agent.conf

#

# Master-Master Manager config (agent)

#

# Debug mode

debug no

# Paths

pid_path /usr/local/mmm/var/mmmd_agent.pid

bin_path /usr/local/mmm/bin

# Logging setup

log mydebug

file /usr/local/mmm/var/mmm-debug.log

level debug

log mytraps

file /usr/local/mmm/var/mmm-traps.log

level trap

# MMMD command socket tcp-port and ip

bind_port 9989

# Cluster interface

cluster_interface eth0

# Define current server id

this db1

mode master

# For masters

peer db2

# Cluster hosts addresses and access params

host db1

ip 59.64.30.118

port 3306

user rep_agent

password 123456

z) Mv mmm_agent.conf ../

aa) 同步方法安裝mysql_mmm另一台伺服器

bb) Vi /usr/local/mmm/etc/mmm_agent.conf

#

# Master-Master Manager config (agent)

#

# Debug mode

debug no

# Paths

pid_path /usr/local/mmm/var/mmmd_agent.pid

bin_path /usr/local/mmm/bin

# Logging setup

log mydebug

file /usr/local/mmm/var/mmm-debug.log

level debug

log mytraps

file /usr/local/mmm/var/mmm-traps.log

level trap

# MMMD command socket tcp-port and ip

bind_port 9989

# Cluster interface

cluster_interface eth0

# Define current server id

this db2

mode master

# For masters

peer db1

# Cluster hosts addresses and access params

host db1

ip 59.64.30.118

port 3306

user rep_agent

password 123456

a1) 兩個節點伺服器MYSQL同時增加如下使用者。

GRANT ALL PRIVILEGES on *.* to 'rep_agent'@'%' identified by '123456' WITH GRANT OPTION;

GRANT ALL PRIVILEGES on *.* to 'rep_monitor'@'%' identified by '123456' WITH GRANT OPTION;

a2) 同步方法安裝mysql_mmm管理節點

a3) vi /usr/local/mmm/etc/mmm_mon.conf

# Master-Master Manager config (monitor)

#

# Debug mode

debug no

# Paths

pid_path /usr/local/mmm/var/mmmd.pid

status_path /usr/local/mmm/var/mmmd.status

bin_path /usr/local/mmm/bin

# Logging setup

log mydebug

file /usr/local/mmm/var/mmm-debug.log

level debug

log mytraps

file /usr/local/mmm/var/mmm-traps.log

level trap

email root@localhost

# MMMD command socket tcp-port

bind_port 9988

agent_port 9989

monitor_ip 127.0.0.1

# Cluster interface

cluster_interface eth0

# Cluster hosts addresses and access params

host db1

ip 59.64.30.118

port 3306

user rep_monitor

password 123456

mode master

peer db2

host db2

ip 59.64.30.107

port 3306

user rep_monitor

password 123456

mode master

peer db1

#

# Define roles

#

active_master_role writer

# Mysql Reader role

role reader

mode balanced

servers db1, db2

ip 59.64.30.103,59.64.30.102 //這裡是虛擬IP

# Mysql Writer role

role writer

mode exclusive

servers db1, db2

ip 59.64.30.101 //這裡是虛擬IP

#

# Checks parameters

#

# Ping checker

check ping

check_period 1

trap_period 5

timeout 2

# Mysql checker

# (restarts after 10000 checks to prevent memory leaks)

check mysql

check_period 1

trap_period 2

timeout 2

restart_after 10000

# Mysql replication backlog checker

# (restarts after 10000 checks to prevent memory leaks)

check rep_backlog

check_period 5

trap_period 10

max_backlog 60

timeout 2

restart_after 10000

# Mysql replication threads checker

# (restarts after 10000 checks to prevent memory leaks)

check rep_threads

check_period 1

trap_period 5

timeout 2

restart_after 10000

a4) 啟動node1 /usr/local/mmm/sbin/mmmd_agent

a5) 啟動node2 /usr/local/mmm/sbin/mmmd_agent

a6) 啟動mgr /usr/local/mmm/sbin/mmm_mon start

a7) 設定db1線上mmm_control set_online db1

a8) 設定db2線上mmm_control set_online db2

a9) 查看狀態mmm_control show

MySQL Multi-Master Replication Manager

Version: 1.2.6

Config file: mmm_mon.conf

Daemon is running!

===============================

Cluster failover method: AUTO

===============================

Servers status:

db1(59.64.30.118): master/ONLINE. Roles: reader(59.64.30.103;), writer(59.64.30.101 //這裡是虛擬IP;)

db2(59.64.30.107): master/ONLINE. Roles: reader(59.64.30.102 //這裡是虛擬IP;)

三、附加

a) 因為主主同步我沒在意,都是NO,所以在show過程中狀態老報錯,最後一直查到修複主主看看,show才正常。警告配置時首先一定要保證MYSQL主主同步是正常的。配置就不會有什麼問題。

b) 安裝過程中裝perl包真麻煩。找了好多包。鬱悶死。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.