無須設置實體主機,但需佔用1IP Address)
(無須設置實體主機,但需佔用2IP Address)
1)資料庫權限配置,由於我們於前章 Master to Master 已配置相關SLAVE 複寫帳號等
(這裡就不再多說)
等會擔任Moniter (g1) 會派上用場
GRANT ALL PRIVILEGES on *.* to 'rep_monitor'@'192.168.0.188' identified by 'RepMonitor';
GRANT ALL PRIVILEGES on *.* to 'rep_agent'@'192.168.0.111' identified by 'RepAgent';
#指配rep_agent給nodea
GRANT replication slave on *.* to 'replication'@'%' identified by 'c30819';
#讓所有node之間可以具slave 與replication 身份
擔任Moniter (g1) 會派上用場
GRANT ALL PRIVILEGES on *.* to 'rep_monitor'@'192.168.0.188 identified by 'RepMonitor';
GRANT ALL PRIVILEGES on *.* to
#指配rep_agent給mail GRANT replication slave on *.* to 'replication'@'%' identified by 'c30819';
#讓所有node之間可以具slave 與replication 身份
cpan Algorithm::Diff DBI DBD::mysql File::stat Log::Dispatch Log\::
Log4perl Mail::Send Net::ARP Proc::Daemon Time::HiRes
(幾乎相同在此僅修改D1_MMM_Client,DB2留給讀者去設定)
mode master
peer db2
ip 192.168.0.195 #設置第二台DB設置
mode master
peer db1
hosts db1, db2
mode exclusive
hosts db1, db2 #設置reader設置
ips 192.168.0.172,192.168.0.173
mode balanced
</role>
*修改組態檔完成後,請至DB2_(mail)完成上述修改如下
修改nodea & mail組態檔ok後我們必須啟動此兩台mmm_client
/etc/init.d/mysql-mmm-agent start
(5.) g1_mmm_moniter 編輯 vi /etc/mysql-mmm/mmm_mon.conf
#將ping_ips 修正為監控nodes (db1,db2 的ip) ,並修正Moniter 帳號密碼後儲存檔案
vi /etc/mysql-mmm/mmm_common.conf
#此檔案設置與我們上述設置nodea (db1)大同小異,請將其訂正ok
重啟mmm_moniter
/etc/init.d/mysql-mmm-monitor restart
(6.) mmm_control show
shell> mmm_control show #查看目前個節點健康狀況,
mmm_control set_online db1 #初次建立mmm結點我們必須將其推上線
mmm_control set_online db2
(7.) 容錯移轉測試:
目前我們可以看到,Reder,Writer 角色初步掛在DB1,當DB1掛點時
將移轉至DB2以下我們故意將DB1停止運作,當DB1 FILE 時將移轉到DB2運行
接者我們將D1 重新啟動, Awaiting Rocovery 中
DB1又重為崗位了
如何設置開機自動啟用MMM_MONITER 與MMM_CLIENT
shell> cd /etc/init.d
shell> chkconfig --add mysql-mmm-moniter
shell> chkconfig --add mysql-mmm-agent
接者我們就可以用 chkconfig mysql-mmm-moniter on 開機自動啟動該程式
或是
ntsysv 將其勾選即可完成開機自動啟動
參考資料
http://www.xuan-lu.net/blog/index_586.html
留言列表