AUTO MySQL Master Slave Replication UPDATE
- Category: 電腦相關
- Last Updated: Monday, 28 July 2014 15:37
- Published: Wednesday, 23 July 2014 13:57
- Written by sam
目前有三臺主機
WIN7浮動IP STANSYNC.GOTDNS.COM
EC2固I BOREDOM.GOTDNS.COM
ERUFA固I BOREDOM.ERUFA.COM --沒得玩…
因為習慣使然…還是都在本機(WIN7修改網頁內容
近日已實作了mysql-master-slave-replication
但可以見到實際上的問題
就是在實作時,我都是採用手動鍵入"浮動"的IP,這表示一但我WIN7(MASTER重新上線
SLAVE的部份就連不上了
為了能順利更新IP,在WIN7的部份,主機名對映IP的設定也是要有的(不然怎麼查…
所以也就順手寫個小SHELL來更新
所有前篇的動作都不能省
這篇只是拿來省點事而已
在SLAVE端寫個小SHELL(和平常工作上寫的…真的是微小…
[root@ip-172-31-12-172 ~]# cat stansync.sh
#!/bin/bash ipadd=`(nslookup stansync.gotdns.com |tail -2 |grep Address: |awk '{print $2}')` mysql -u root << EOF slave stop; change master to master_host='$ipadd'; slave start; EOF
這樣就能自動的利用STANSYNC來轉成IP並更新MYSQL連線HOST了
這邊只有一個重點
那就是在MYSQL的設定
請修改/ETC/MY.CNF
照著下面依內容自行修改
[client]
password="MySQL密碼"
user=MySQL用户名
用戶名可以不用指定,也就是可以# 然後會自動帶入當前登入的USER NAME
密碼就填上自己的設定的
這麼作的好處就是直接可以登入…而不需要加上-p 來輸入密碼
另外就是…在/ETC/MY.CNF的權限記得要設定好!!!
然後將SHELL做進CRON就行了