Linux系統中MySQL資料庫“主從”配置

來源:互聯網
上載者:User

標籤:linux   mysql資料庫主從配置   

MySQL資料庫“主從”配置

一、配置概述:

    在Linux作業系統中配置MySQL資料庫的主從複製是很重要的,為什麼這樣說呢!是因為在你搭建一個伺服器以後你配置了2台資料庫,一主一從。2台資料庫配置好以後,當其中一台資料庫被攻擊以後,你被攻擊的這台資料庫的資料會被自動的備份到另一台資料庫中去。即使被攻擊了資料也不會丟失。配置主從就是為了讓web網站或其他的軟體可以正常運轉,確保資料的存在。


二、配置步驟:

《配置具備的條件》

    1、需要在虛擬機器上安裝好兩台主機,同時安裝好同一個版本的MySQL資料庫。確定一個資料庫為主要資料庫。另一個資料庫為次資料庫。開始配置。


    2、分別登入到兩個系統中的MySQL資料庫。


    3、查看兩台作業系統的網路連接是否正常

         命令: Ifconfig查看IP

         使用: 在主要資料庫上ping次資料庫的IP看是否互連。

             主—》次“ping 192.168.1.138

             次---》主“ping192.168.1.128”

                   OK

     第一步:配置主要資料庫。

        1、配置主要資料庫伺服器。

             開啟my.cnf設定檔配置

                       vim /etc/my.cnf

             配置語句

               《server-id=1    這個是確定是主要資料庫

        log-bin=/var/lib/mysql/mysql-bin.log》指定一個資料庫儲存的位置

             儲存退出  :wq

             重啟伺服器:servicemysqld restart

                         沒有提示錯誤就說明OK的

        2、進入資料庫查看資料庫的具體狀態

             命令:mysql -uroot –p   進入MySQL資料庫。

             命令:showmaster status\G; 查看狀態。

650) this.width=650;" src="https://s4.51cto.com/wyfs02/M02/06/60/wKiom1m3WBSh7ARwAABA8oUUIjg273.jpg" title="1.jpg" alt="wKiom1m3WBSh7ARwAABA8oUUIjg273.jpg" />

        3、對資料庫的表進行鎖定

                                 命令:flush tables with read lock;

           

650) this.width=650;" src="https://s3.51cto.com/wyfs02/M01/06/60/wKiom1m3WOSBTtT-AAAhAFxgBmQ973.jpg" title="2.jpg" alt="wKiom1m3WOSBTtT-AAAhAFxgBmQ973.jpg" />

        4、對MySQL資料庫進行備份操作(退出 資料庫以後備份

               命令:mysqldump -hlocalhost -uroot -p3306 -p dzx>/home/dzx.sql

650) this.width=650;" src="https://s3.51cto.com/wyfs02/M01/06/61/wKiom1m3X2rDIt9yAAAetcRe8vA695.jpg" title="3.jpg" alt="wKiom1m3X2rDIt9yAAAetcRe8vA695.jpg" />

        5、去/home目錄下查看dzx.sql資料庫檔案.

650) this.width=650;" src="https://s5.51cto.com/wyfs02/M00/A5/11/wKioL1m3X3jxR932AAARsjuqZiw343.jpg" title="4.jpg" alt="wKioL1m3X3jxR932AAARsjuqZiw343.jpg" />

        6、將主要資料庫的dzx.sql檔案傳輸到次資料庫,以此確保資料庫中的表結構和資料能夠一致。

                命令:scpdzx.sql [email protected]:/home/

650) this.width=650;" src="https://s4.51cto.com/wyfs02/M00/06/61/wKiom1m3X8mxVldPAAAh9KWfHpY991.jpg" title="5.jpg" alt="wKiom1m3X8mxVldPAAAh9KWfHpY991.jpg" />

        7、取消主要資料庫中表的鎖定。

            

650) this.width=650;" src="https://s3.51cto.com/wyfs02/M00/A5/11/wKioL1m3X8bDpfQrAAAW7JyQsjw307.jpg" title="6.jpg" alt="wKioL1m3X8bDpfQrAAAW7JyQsjw307.jpg" />

        8、在次資料庫的設定檔中會使用到使用者,再次提前建立好

          grantreplication slave on *.* to ‘dzx‘@‘192.168.1.128‘ identified by ‘dzx123‘;

            建立一個使用者,賦予它所有的許可權給dzxuser這個使用者,他的IP為192.168.1.128,他的密碼為dzx123。

650) this.width=650;" src="https://s3.51cto.com/wyfs02/M00/A5/11/wKioL1m3X_GATn1xAAAfDC0S8PA578.jpg" title="7.jpg" alt="wKioL1m3X_GATn1xAAAfDC0S8PA578.jpg" />

   第二步:配置次資料庫。

        1、在第二個作業系統中開啟主設定檔my.cnf

             vim/etc/my.cnf

        

650) this.width=650;" src="https://s5.51cto.com/wyfs02/M02/06/61/wKiom1m3YJ7BGQiyAABfIG7JhTY075.jpg" title="8.jpg" alt="wKiom1m3YJ7BGQiyAABfIG7JhTY075.jpg" />

        2、配置次資料庫裡面的配置命令     

             server-id=2     這個是次資料庫的ID號,不能和主要資料庫的一樣

        log-bin=/var/lib/mysql/mysql-bin.log   這個與主要資料庫的一致

        master-host=192.168.1.128   這是主要資料庫服務的IP地址

        master-user=dzx          這個是主要資料庫的使用者名稱

        master-pass=dzx123            這個是主要資料庫中使用者的對應密碼

        master-port=3306                 這個是書資料庫的連接埠號碼

        master-connect-retry=10    這個是配置串連的二次時間的長短---間隔串連

                                    replicate-do-db=dzx             複製dzx這個資料庫

         儲存退出 :wq

         重啟服務 servicemysqld restart

         進入資料庫。

       3、驗證兩個參數,是為了保證與主要資料庫之間是互相通訊的。

           (1)查看配置

                                           show slave status\G;

650) this.width=650;" src="https://s5.51cto.com/wyfs02/M00/A5/11/wKioL1m3YVKB-9vcAACq1oMX2fA679.jpg" title="9.jpg" alt="wKioL1m3YVKB-9vcAACq1oMX2fA679.jpg" />

                                     (這是從資料庫的)

650) this.width=650;" src="https://s3.51cto.com/wyfs02/M01/A5/11/wKioL1m3YYuiXwLiAABEslj2klU998.jpg" title="10.jpg" alt="wKioL1m3YYuiXwLiAABEslj2klU998.jpg" />

                                     (這是主要資料庫的)


當主要資料庫的file項和position項都與從資料庫的一致的時候才能起到作用。否則是失敗的。


三、結束語:

        直到這裡主從資料庫配置就結束了。在配置過程中注意不要配置錯了,彼此之間是有聯絡的,一步錯後面的都會導致失敗。當配置成功以後,你操作主要資料庫時次資料庫也會受到影響。資料也會自動備份到次資料庫中去。本文中如果有不妥的地方還請多多指教。謝謝!


本文出自 “孤獨一夜” 部落格,謝絕轉載!

Linux系統中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.