在一主多從的環(huán)境中,如主庫(kù)為M,從庫(kù)為S1、S2,當(dāng)主庫(kù)M出現(xiàn)故障時(shí),把S1設(shè)為新的主庫(kù),并且修改從庫(kù)S2的配置,使其指向新的主庫(kù)S1。此外還要通知應(yīng)用修改主數(shù)據(jù)庫(kù)的IP地址,如果出現(xiàn)故障的主庫(kù)M修復(fù)的話可以設(shè)置為新的從庫(kù)。主從切換的詳細(xì)步驟如下:
目前創(chuàng)新互聯(lián)公司已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管運(yùn)營(yíng)、企業(yè)網(wǎng)站設(shè)計(jì)、開封網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
1 首先要保證所有從庫(kù)已經(jīng)執(zhí)行了relay log中的全部更新,在每個(gè)從庫(kù)上先停止io線程,再用以下語(yǔ)句查看:
MySQL>stop slave io_thread;
mysql> show processlist\G
直到看到下面的語(yǔ)句,表示全部更新執(zhí)行完畢。
Has read all relay log waiting for the slave I/O thread to update it
2 在從數(shù)據(jù)庫(kù)S1上,停止從服務(wù),然后把S1設(shè)置成主數(shù)據(jù)庫(kù):
mysql> stop slave;
mysql> reset master;
3 在S2上(如果有多臺(tái),則在所有從服務(wù)器上,此時(shí)S1為主服務(wù)器),停止從服務(wù),然后重新設(shè)置S1為主數(shù)據(jù)庫(kù),S1的IP為192.168.1.101,再執(zhí)行start slave啟動(dòng)復(fù)制:
mysql> stop slave;
mysql> change master to master_host = '192.168.1.101';
mysql> start slave;
4 修改客戶端應(yīng)用指向S1服務(wù)器:
5 刪除S1服務(wù)器(新的主庫(kù)服務(wù)器)上的master.info和relay-log.info文件,否則一旦重啟還會(huì)按照從庫(kù)啟動(dòng)。
6 最后,如果M服務(wù)器恢復(fù),則可以按照S2的方法設(shè)置為S1的從庫(kù)。
備注:上面的步驟默認(rèn)S1是啟用了log-bin選項(xiàng)的,這樣重置成主庫(kù)后可以把二進(jìn)制日志復(fù)制到其它從庫(kù)。其次,S1上沒有開啟log-slave-updates參數(shù)。
當(dāng)前名稱:MySQL之主從切換
轉(zhuǎn)載來(lái)源:http://chinadenli.net/article24/ppeije.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)公司、外貿(mào)建站、網(wǎng)站設(shè)計(jì)、定制開發(fā)、標(biāo)簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)