MySQL AB複製

來源:互聯網
上載者:User

關於MySQL AB複製

本文講解如何快速打包和安裝MySQL, MySQL AB複製,MySQL AB雙向複製,MySQL多級主從複製,解決AB雙向複製主鍵衝突。

 

首先我們先介紹什麼是MySQL AB複製。

 

AB複製又稱主從複製,實現的是資料同步。如果要做MySQL AB複製,資料庫版本盡量保持一致。如果版本不一致,從伺服器版本高於主伺服器,但是版本不一致不能做雙向複製。MySQL AB複製有什麼好處呢?有兩點,第一是解決宕機帶來的資料不一致,因為MySQL AB複製可以即時備份資料;第二點是減輕資料庫伺服器壓力,這點很容易想到,多台伺服器的效能一般比單台要好。但是MySQL AB複製不適用於大資料量,如果是大資料環境,推薦使用叢集。

 

然後我們來看看MySQL複製的 3 個主要步驟:

1)主伺服器把資料更改記錄到二進位日誌中,這個操作叫做二進位日誌事件;

2)從伺服器把主伺服器的二進位日誌事件拷貝到自己的中繼日誌(relay log)中;

3)從伺服器執行中繼日誌中的事件,把更改應用到自己的資料上。

 

快速打包和安裝MySQL

在正式介紹MySQL AB複製之前,介紹怎樣打包MySQL和快速安裝MySQL。

 

第一步,製作檔案

[root@serv08 ~]# find /usr/local/mysql/ /etc/my.cnf /etc/init.d/mysqld > mysql

第二步,打包

[root@serv08 ~]# tar -cPvzf mysql-5.5.29-linux2.6-x86_64.tar.gz -T mysql [root@serv08 ~]# ll -htotal 202M-rw-r--r--. 1 root root 411K Oct  5 19:19 mysql-rw-r--r--. 1 root root 202M Oct  5 19:21 mysql-5.5.29-linux2.6-x86_64.tar.gz

第三步,拷貝檔案到實體機

[root@serv08 mysql]# scp mysql-5.5.29-linux2.6-x86_64.tar.gz 192.168.1.1:/home/Wentasy/software/

第四步,拷貝檔案到serv01

[root@serv01 ~]# yum install /usr/bin/scp -y[root@larrywen 1005]# scp /home/Wentasy/software/mysql-5.5.29-linux2.6-x86_64.tar.gz 192.168.1.11:/optroot@192.168.1.11's password: mysql-5.5.29-linux2.6-x86_64.tar.gz                      100%  201MB  33.5MB/s   00:06 

第五步,解壓

[root@serv01 opt]# tar -xPvf mysql-5.5.29-linux2.6-x86_64.tar.gz

第六步,建立組和使用者,注意編號和安裝好資料庫的機器上的使用者一致

[root@serv01 opt]# groupadd -g 500 mysql[root@serv01 opt]# useradd -u 500 -g 500 -r -M -s /sbin/nologin mysql [root@serv01 opt]# id mysqluid=500(mysql) gid=500(mysql) groups=500(mysql)

第七步,改變MySQL安裝目錄的擁有者和所屬組

[root@serv01 opt]# chown mysql.mysql /usr/local/mysql/ -R

第八步,啟動MySQL,做測試

[root@serv01 opt]# /etc/init.d/mysqld startStarting MySQL.. SUCCESS! [root@serv01 opt]# mysql-bash: mysql: command not found[root@serv01 opt]# vim ~/.bash_profile [root@serv01 opt]# . !$. ~/.bash_profile[root@serv01 opt]# mysqlWelcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 1Server version: 5.5.29-log Source distributionCopyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> 
MySQL AB單向複製

好了,相信讀者已經學會怎樣打包MySQL和快速安裝MySQL,接下來正式進入主題,我們先來看看一主多從架構的拓撲圖:

圖一 一主多從架構

該圖展示了一個 master 複製多個 slave 的架構,多個 slave 和單個 slave 的實施並沒有實質性的區別,在 master 端並不在乎有多少個 slave 串連自己,只要有 slave 的 IO 線程通過了串連認證,向他請求指定位置之後的 binary log 資訊,他就會按照該 IO 線程的要球,讀取自己的binary log 資訊,返回給 slave的 IO 線程。

更多詳情見請繼續閱讀下一頁的精彩內容:

推薦閱讀:

MySQL備份與AB複製 

Ubuntu下Nginx做負載實現高效能WEB伺服器5---MySQL主主同步

生產環境MySQL主主同步主鍵衝突處理

MySQL主從失敗 錯誤Got fatal error 1236

MySQL主從複製,單台伺服器上實施

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 下一頁

相關文章

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.