MySQL資料庫複製操作的詳細實現步驟介紹
MySQL資料庫複製操作大致可以分為三個步驟:
步驟1:主伺服器將資料的改變記錄到二進位制日誌中。
步驟2:從伺服器將主伺服器的binary log events複製到它的中繼日誌(relay log)中。
步驟3:從伺服器重做中繼日誌中的事件,將資料的改變與從伺服器保持同步。
詳細步驟如下:
首先,主伺服器會記錄二進位制日誌,每個事務更新資料完成之前,主伺服器將這些操作的資訊記錄在二進位制日誌裡面,在事件寫入二進位制日誌完成後,主伺服器通知儲存引擎
提交事務。
Slave上面的I/O程式連線上Master,併發出日誌請求,Master接收到來自Slave的IO程式的請求後,透過負責複製的IO程式根據請求資訊讀取制定日誌指定位置之後的日誌資訊,
返回給Slave的IO程式。返回資訊中除了日誌所包含的資訊之外,還包括本次返回的資訊已經到Master端的bin-log檔案的名稱已經bin-log的位置。
Slave的I/O程式接收到資訊後,將接收到的日誌內容依次新增到Slave端的relay-log檔案的最末端,並將讀取到Master端的bin-log的檔案和位置記錄到master-info檔案中。
Slave的SQL程式檢測到replay-log中新增了內容後,會馬上解析replay-log的內容成為在Master端真實執行時候的那些可執行的內容,並在自身執行。
MySQL的複製環境90%以上都是一個Master帶一個或者多個Slave的架構模式,如果master和slave的壓力不是太大的話,非同步
複製的延時一般都很少。尤其是slave端的複製方式改成兩個程式處理以後,更是減小了slave端的延時。
備註:對於資料實時性要求不是特別嚴格的應用,只需要透過廉價的PC伺服器來擴充套件slave的數量,將讀壓力分散到多臺slave
的機器上面,即可解決資料庫端的讀壓力瓶頸。這在很大程度上解決了目前很多中小企業網站的資料庫壓力瓶頸問題,甚至有些
大型網站也在使用類似方案解決MySQL資料庫瓶頸。
步驟1:主伺服器將資料的改變記錄到二進位制日誌中。
步驟2:從伺服器將主伺服器的binary log events複製到它的中繼日誌(relay log)中。
步驟3:從伺服器重做中繼日誌中的事件,將資料的改變與從伺服器保持同步。
詳細步驟如下:
首先,主伺服器會記錄二進位制日誌,每個事務更新資料完成之前,主伺服器將這些操作的資訊記錄在二進位制日誌裡面,在事件寫入二進位制日誌完成後,主伺服器通知儲存引擎
提交事務。
Slave上面的I/O程式連線上Master,併發出日誌請求,Master接收到來自Slave的IO程式的請求後,透過負責複製的IO程式根據請求資訊讀取制定日誌指定位置之後的日誌資訊,
返回給Slave的IO程式。返回資訊中除了日誌所包含的資訊之外,還包括本次返回的資訊已經到Master端的bin-log檔案的名稱已經bin-log的位置。
Slave的I/O程式接收到資訊後,將接收到的日誌內容依次新增到Slave端的relay-log檔案的最末端,並將讀取到Master端的bin-log的檔案和位置記錄到master-info檔案中。
Slave的SQL程式檢測到replay-log中新增了內容後,會馬上解析replay-log的內容成為在Master端真實執行時候的那些可執行的內容,並在自身執行。
MySQL的複製環境90%以上都是一個Master帶一個或者多個Slave的架構模式,如果master和slave的壓力不是太大的話,非同步
複製的延時一般都很少。尤其是slave端的複製方式改成兩個程式處理以後,更是減小了slave端的延時。
備註:對於資料實時性要求不是特別嚴格的應用,只需要透過廉價的PC伺服器來擴充套件slave的數量,將讀壓力分散到多臺slave
的機器上面,即可解決資料庫端的讀壓力瓶頸。這在很大程度上解決了目前很多中小企業網站的資料庫壓力瓶頸問題,甚至有些
大型網站也在使用類似方案解決MySQL資料庫瓶頸。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2121399/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- rman複製資料庫詳細的步驟資料庫
- mysql 主從複製搭建詳細步驟MySql
- 複製資料庫步驟資料庫
- Centos MySQL資料庫遷移詳細步驟CentOSMySql資料庫
- MySQL主從複製的詳細過程介紹MySql
- 資料庫複製(一)–複製介紹資料庫
- 【JDBC的實現步驟……MySQL資料庫】JDBCMySql資料庫
- 如何恢復Mysql資料庫的詳細介紹MySql資料庫
- 使用create database語句建立資料庫的詳細操作步驟Database資料庫
- ORACLE資料庫升級詳細步驟Oracle資料庫
- 使用XtraBackup搭建mysql主從複製的操作步驟MySql
- Oracle資料庫登入流程的步驟介紹Oracle資料庫
- mysql資料庫實現主從複製MySql資料庫
- Oracle 高階複製配置步驟詳細說明Oracle
- Redis主從複製工作原理和步驟介紹Redis
- 最新最詳細步驟介紹iOS APP上架iOSAPP
- MySQL主從複製之GTID模式詳細介紹鞴嬈MySql模式
- duplicate資料庫的操作步驟資料庫
- MySQL的安裝步驟(詳細)MySql
- MyBatis的逆向工程詳細步驟操作MyBatis
- mysql主主複製(雙主複製)配置步驟MySql
- phpExcel實現Excel資料的匯入匯出(全步驟詳細解析)PHPExcel
- mysql建立master/slave詳細步驟MySqlAST
- 如何實現DDD事件建模的詳細步驟 - goeleven事件Go
- MySQL 複製介紹及搭建MySql
- mysql資料庫的主從複製和主主複製實踐MySql資料庫
- Linux上透過binlog檔案恢復mysql資料庫詳細步驟LinuxMySql資料庫
- informix資料庫擴容操作步驟ORM資料庫
- mysql binlog詳細介紹MySql
- 使用Oracle可傳輸表空間的特性複製資料(2)操作步驟Oracle
- linux下mysql主從複製,實現資料庫同步LinuxMySql資料庫
- 如何錄製螢幕影片?詳細的錄屏操作步驟告訴你
- 介紹JSP程式動態網站環境搭建的詳細步驟JS網站
- 在Oracle中實現資料庫的複製Oracle資料庫
- 達夢資料庫索引管理方法詳細介紹資料庫索引
- mysql主從複製詳細部署MySql
- MySQL資料庫安裝步驟-WindowsMySql資料庫Windows
- mysql資料庫‘複製’的辦法MySql資料庫