mysql延遲複製實現

來源:互聯網
上載者:User

標籤:mysql   延遲複製   

我們使用mysql的主從同步來實現mysql資料的即時同步和備份,但由於正常情況下,資料是即時同步的,當人為在主庫上誤操作資料時,備份庫即時地也操作了錯誤資料。

為了避免上述資料錯誤的情況,希望能建立一個延遲同步的mysql備份庫,當主庫資料被誤操作時,備份庫還保留未操作前的正確資料,便於資料恢複。

   使用第三方工具percona-toolkit可實現延遲複製的需求。

 

實現環境:

          192.168.189.143 (mysql主庫)

   192.168.189.144 (mysql備庫,延遲3分鐘)

 

步驟:

1:在伺服器上安裝mysql,並配置主從複製。(省略)

 

2:查看144從庫的複製狀態,確認同步正常,也可在主庫上寫入資料測試。

   650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/6F/67/wKioL1WbfMvSSE7SAAKB1LuCF-4285.jpg" title="1.jpg" alt="wKioL1WbfMvSSE7SAAKB1LuCF-4285.jpg" />

 

3:下載percona-toolkit軟體包,並上傳至143主庫,並安裝:

:http://www.percona.com/downloads/percona-toolkit/

#wget http://www.percona.com/downloads/perconatoolkit/2.2.14/RPM/percona-toolkit-2.2.14-1.noarch.rpm

#yum -y install percona-toolkit-2.2.14-1.noarch.rpm

註:若安裝提示pulic key問題,導致失敗,則修改/etc/yum.conf中的gpgcheck參數為0。

安裝成功,查看pt-slave-delay是否可用:

#pt-slave-delay --help

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6F/67/wKioL1WbfXjBQEiFAAOyML3B92w751.jpg" width="700" height="282" title="2.jpg" border="0" hspace="0" vspace="0" style="width:700px;height:282px;" alt="wKioL1WbfXjBQEiFAAOyML3B92w751.jpg" />

 

4:在144從庫上配置一個使用者,供延遲複製工具串連使用。

mysql> grant all on *.* to ‘delay_rep‘@‘192.168.189.%‘ identified by ‘123456‘;

mysql>flush privileges;

 

5:開啟延遲複製:

#pt-slave-delay --user=‘delay_rep‘ --password=‘123456‘ --delay=3m --interval=20s 192.168.189.144 650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/6F/67/wKioL1WbfpOApJgIAAH_maJXMsg742.jpg" title="3.jpg" width="720" height="53" border="0" hspace="0" vspace="0" style="width:720px;height:53px;" alt="wKioL1WbfpOApJgIAAH_maJXMsg742.jpg" />   註:

--user=:延時伺服器中授權使用者的使用者名稱。

--password=:延時伺服器中授權使用者的密碼。

--delay=3m:延時同步的時間,這裡設定為3分鐘。

--interval=20s:檢查同步的時間,這裡設定為20s。

192.168.189.144:延時伺服器的IP地址。

  這時候查看144的slave同步狀態,可以看到Slave_SQL_Running狀態變為NO。延遲複製現在已經生效了。

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/6F/67/wKioL1WbfxriyFwnAAJ5-uZ4nE4447.jpg" title="4.jpg" alt="wKioL1WbfxriyFwnAAJ5-uZ4nE4447.jpg" /> 

 

6:測試:

在143主庫插入一條資料:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6F/6A/wKiom1WbfjGh_1GAAAAzWz8HDFw129.jpg" title="5.jpg" alt="wKiom1WbfjGh_1GAAAAzWz8HDFw129.jpg" />

---------

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/6F/6A/wKiom1WbfkGDiXVmAAEcRo1dLBw969.jpg" title="6.jpg" alt="wKiom1WbfkGDiXVmAAEcRo1dLBw969.jpg" /> 

查看144從庫,資料還未同步過來:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/6F/68/wKioL1WbgIXTYFDjAABIZJomXUA210.jpg" title="7.jpg" alt="wKioL1WbgIXTYFDjAABIZJomXUA210.jpg" />

-----------

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/6F/6B/wKiom1WbftyTjtE9AACrl2Wrvdo899.jpg" title="8.jpg" alt="wKiom1WbftyTjtE9AACrl2Wrvdo899.jpg" />

3分鐘左右,日誌顯示開始同步資料:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6F/68/wKioL1Wbg7eiHoL2AAHCI1uRnxE300.jpg" title="9.jpg" width="750" height="72" border="0" hspace="0" vspace="0" style="width:750px;height:72px;" alt="wKioL1Wbg7eiHoL2AAHCI1uRnxE300.jpg" /> 

這時查看144從庫,探索資料已經同步完成,說明延遲複製已經開始發生作用:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6F/6B/wKiom1Wbgg_wFqI3AABIDKuUe-U258.jpg" title="10.jpg" alt="wKiom1Wbgg_wFqI3AABIDKuUe-U258.jpg" />

------------

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/6F/6B/wKiom1WbgiDiWFmqAACyevwTlxo373.jpg" title="11.jpg" alt="wKiom1WbgiDiWFmqAACyevwTlxo373.jpg" />



附件是porcona-toolkit的安裝檔案,大家可以下載……


本文出自 “linux營運” 部落格,請務必保留此出處http://icenycmh.blog.51cto.com/4077647/1671702

mysql延遲複製實現

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.