MySQL複製詳解

來源:互聯網
上載者:User

MySQL複製其實就是把資料從一個節點(master) 拷貝到另一個節點(slaves), 當然根據應用架構的不同,採用的方式也不同,MySQL伺服器之間的複製使用的是二進位日誌機制.對master的更新與變動都會作為事件(event)記錄在日誌中,日誌中的資訊會隨變化的不同被記錄成不同的格式.slaves被配置成從master讀取日誌,並且執行二進位日誌中的事件到slave本機資料庫.一旦master啟動二進位日誌功能,那麼所有語句操作都會被記錄下來,每一個slave會收到一份整個日誌內容的拷貝.slave的責任就是決定日誌中的哪條語句需要被執行,而我們不能通過配置master來僅僅記錄某些特定的事件.如果您沒有另行指定,在主伺服器二進位日誌中的所有事件都在slave上執行.如果需要,還可以配置slave僅應用來自於特定資料庫或表的事件.

 

根據來說說MySQL複製的工作機制,複製的過程在主從架構中一般是有三個線程來完成複製工作的,主伺服器上dump thread ,從伺服器I/O thread ,從伺服器sql  thread, 如果想使用多線程的話需要打補丁的, 根據一主一從的架構複製是這樣工作的,主伺服器將操作寫入二進位日誌,由主伺服器上的dump線程將日誌發送到從伺服器上的I/O線程,然後儲存為中繼日誌,而由sql線程根據中繼日誌將資料寫入從伺服器中,下面來配置下這樣的複製架構,

配置主從複製
一,master和slave上編譯安裝mysql   這裡使用目前最新的mysq版本5.5.25a

 
  1. 下載如下兩個軟體包到/usr/srC目錄  
  2. cmake-2.8.8.tar.gz  
  3. mysql-5.5.25a.tar.gz  
  4. 開始安裝配置,主從伺服器的配置一樣,  
  5. #cd /usr/src  
  6. #tar xzvf cmake-2.8.8.tar.gz  
  7. #cd cmake-2.8.8  
  8. #./bootstrap  
  9. #make  
  10. #make install  
  11. #cd /usr/src  
  12. #tar xzvf mysql-5.5.25a.tar.gz  
  13. #cd mysql-5.5.25a  
  14. #cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \  
  15. -DMYSQL_DATADIR=/data/mysql \ 
  16. -DSYSCONFDIR=/etc \  
  17. -DWITH_INNOBASE_STORAGE_ENGINE=1 \  
  18. -DWITH_ARCHIVE_STORAGE_ENGINE=1 \  
  19. -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \  
  20. -DWITH_READLINE=1 \  
  21. -DWITH_SSL=system \  
  22. -DWITH_ZLIB=system \  
  23. -DWITH_LIBWRAP=0 \  
  24. -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \  
  25. -DDEFAULT_CHARSET=utf8 \  
  26. -DDEFAULT_COLLATION=utf8_general_ci  
  27. #make  
  28. #make install  
  29. #useradd -r mysql 
  30. #mkdir -p /data/mysql 
  31. #chown -R mysql.mysql /usr/local/mysql/ 
  32. #/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql 
  33. #cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnf 
  34. #vim /etc/my.cnf 
  35. [mysqld]  在mysqld配置中添加
  36. datadir = /data/mysql 
  37.  
  38. #cp -p /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 
  39. #chkconfig mysqld on 
  40. #service mysqld restart 
  • 1
  • 2
  • 3
  • 下一頁

相關文章

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.