課件2主從復制用_第1頁
課件2主從復制用_第2頁
課件2主從復制用_第3頁
課件2主從復制用_第4頁
課件2主從復制用_第5頁
已閱讀5頁,還剩19頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、課程目標Ø掌握數據庫的大數據處理方案和HAØ掌握為什么需要數據庫中間件,何為數據庫中間件Ø掌握不同場景所需的數據庫中間件特性Ø掌握數據庫中間件設計要點分庫分表用海量數據專題課程安排04高可用方案企業級數據庫集群之HA 高可用架構03讀寫分離如何使用數據庫中間件實現讀寫分離02原理主從工作原理理解, binlog的底層原理分析01概念和實戰何為主從,主從復制拓撲類型和實戰搭建01何為主從,主從拓撲類型和實戰搭建為什么需要主從數據庫存在海量數據量、性能、高并發讀寫的問題我們用分庫分表來處理海量數據我們用分庫分表、分區提升性能我們用分庫分表、分布式緩存應對高并

2、發讀寫為解決數據、問題我們需要數據庫中間件。還有什么方式應對讀寫?何為主從主從:MySQL提供了的功能,就是把一個數據庫的數據到其它數據庫的機制,源數據庫稱為主服務器,目的數據庫稱為從服務器構建高性能應用的基礎:Ø 實現數據庫的讀寫分離Ø 實現數據庫高可用的基礎等。主從的拓撲結構Ø一主多從由一個master和多個slave組成,Slave之間并不相互通信,只能與master進行通信。如果寫操作較少,而讀操作很多時,可以采取這種結構。Ø互為主從中的兩臺服務器,既是master,又是另一臺服務器的slave,兩臺mysql都可讀寫Ø級聯也就是打開l

3、og-slave-update選項,然后通過(或者是級別)來減少Master端因為所帶來的,相當于從服務器再帶從服務器器02主從工作原理理解,binlog的底層原理分析實現原理1:主服務器將更新操作寫入二進制日志文件(binarylog)2:當從服務器連上主服務器的時候,它告訴主服務器它最后一次更新日志的位置,然后拷貝該位置后的二進制日志文件到它的中繼日志(relaylog)3:從服務器會重做中繼日志中的,更新到數據庫中binlog的底層原理分析mysql的數據更新,主從主要依靠binlog類型Ø 基于語句的(Statement):在從服務器上執行與主服務器上一樣的SQL語句(ins

4、ert)Ø 基于行的(Row):把改變的內容過去,而不是把命令在從服務器上執行一次(update)Ø 混合類型的會采用基于行的(Mixed):默認采用基于語句的。,一旦發現基于語句的無法精確的時,就主從Ø主從基本原則1:每個slave只能有一個master2:每個slave只能有一個唯一的服務器ID 3:每個master可以有很多slave4:如果你設置log_slave_updates,slave可以是其它slave的master5:MySQL不支持多主服務器,即一個slave可以有多個masterØ主從最大的問題延時由于所有的寫操作都是先在Maste

5、r上操作,然后同步更新到Slave上,所以從Master同步到Slave有一定的延遲,很繁忙的時候,延遲問題會更加嚴重,Slave數量的增加也會使這個問題更加嚴重。03如何使用數據庫中間件實現讀寫分離讀寫分離數據庫經過后,多臺擁有一樣的數據,這樣就可以同時利用這些來分擔應用的請求,通常的方式是,主服務器負責處理寫的請求,而其余從服務器負責處理讀的請求,這就是所謂的讀寫分離。讀寫分離的實現任務就一個:決定請求交給哪一個服務器來處理那么中間件如何來配置讀寫分離?Mycat讀寫分離ØØ配置mysql端主從的數據自動同步,mycat不負責任何的數據同步問題。Mycat配置讀寫分離,

6、具體參數參面章節。<dataHost name="localhost1" maxCon="1000" minCon="10" balance="3" writeType="0" dbType="mysql"<heartbeat>select user()</heartbeat><writeHost host="hostM1" url="192.168.1.201:3306" user="ro

7、ot" password="123456">dbDriver="native"><readHost host="hostS1" url="192.168.1.202:3306" user="root" password="123456"</writeHost></dataHost>weight="1" /><dataHost name="localhost1" maxCon

8、="1000" minCon="10"<heartbeat>select user()</heartbeat><writeHost host="hostM1" url="192.168.1.201:3306"<writeHost host="hostS1" url="192.168.1.202:3306"</dataHost>balance="1"writeType="0" dbType=

9、"mysql" dbDriver="native">user="root"user="root"password="123456"></writeHost>password="123456"></writeHost>第一種當寫掛了讀不可用,第二種可以繼續使用。事務內部的一切操作都會走寫節點,所以讀操作不要加事務。Sharding-JDBC讀寫分離ØØ配置mysql主從,Sharding-JDBC不負責任何的數據同步

10、問題。應用中配置Sharding-JDBC讀寫分離shardingRule:masterSlaveRules: ms_ds0:masterDataSourceName: ds0 slaveDataSourceNames:- ds0_slave0- ds0_slave1 loadBalanceAlgorithmType: ROUND_ROBINms_ds1: masterDataSourceName: ds1 slaveDataSourceNames:- ds1_slave0- ds1_slave1 loadBalanceAlgorithmType: ROUND_ROBIN04企業級數據庫集群之

11、HA高可用架構什么是HAHA(HighAvailable),高可用性集群,指的是通過一組計算機系統提供透明的冗余處理能力,從而保證系統服務高度的連續可用。其主要是利用技術,多個不同數據庫主機之間進行,以保持數據的一致性,并通過一些第開源軟件來實現負載均衡和統一的成本。接口,既減少應用程序開發的復雜性,也降低了企業的運營HA基本實現原理Ø軟件節點之間通過心跳或信息報文來確定健康狀態(故障檢測)Ø當前提供服務的出現問題后,需要按照一定的規則,投票出新的提供服務的,并接管服務(故障切換)Ø能實現請求均勻分發(負載均衡)Ø提供虛擬IP給外部(對應用透明)企業中MySQL的HA架構Ø主從ØKeepalived+LVS+MySQLØHeartBeat+MySQLØHeartBeat+DRDB+MySQLHA架構-主從主從方案缺點Ø 從庫切換成主庫需要作改動,改動時間內服務不可用,Ø 不能故障、故障切換、負載均衡、對應用透明。HA架構-Keepalived+LVS+MySQLØ Keepalived提供故障檢測、故障切換、對應用透明功能Ø LVS提供負載均衡功能Ø提供數據同步功能和讀寫功能HA架構-Heart

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論