《OracleActiveDataGuardADG可行性方案》由會(huì)員分享,可在線閱讀,更多相關(guān)《OracleActiveDataGuardADG可行性方案(7頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、OracleActiveDataGuard數(shù)據(jù)同步復(fù)制技術(shù)方案概述OracleActiveDataGuard是Oracle11g版本推出的新功能。該功能可以實(shí)現(xiàn)Oracle數(shù)據(jù)庫(kù)讀寫分離。ActiveDataGuard從底層技術(shù)上實(shí)現(xiàn)了在日志恢復(fù)數(shù)據(jù)的同時(shí)可以用只讀的方式打開數(shù)據(jù)庫(kù),用戶可以在備用數(shù)據(jù)庫(kù)上進(jìn)行查詢、報(bào)表等操作,這類似邏輯DataGuard備用數(shù)據(jù)庫(kù)的功能(查詢功能方面),數(shù)據(jù)同步的效率更高、對(duì)硬件的資源要求更低。可以更大程度地發(fā)揮物理備用數(shù)據(jù)庫(kù)的硬件資源的效能。ActiveDataGuard用于維護(hù)Oracle數(shù)據(jù)庫(kù)的單獨(dú)、同步物理副本,從而實(shí)現(xiàn)HA/DR。ActiveData
2、Guard支持高可用性(通過(guò)零數(shù)據(jù)丟失和/或自動(dòng)故障切換)和災(zāi)難恢復(fù)。并且數(shù)據(jù)同步的效率更高、對(duì)硬件的資源要求更低。是一種有效可行的解決方案。隨著OracleADG的出現(xiàn),Oracle在讀寫分離的支持上又得到進(jìn)一步提升,可以在延遲很少的情況下提供讀,而且不會(huì)出現(xiàn)復(fù)制錯(cuò)誤或者數(shù)據(jù)不一致的問題。ActiveDataguardReaderFarm架構(gòu)至少存在以下優(yōu)勢(shì):1 .管理維護(hù)簡(jiǎn)單,DBA只要熟悉Dataguard的管理即可,無(wú)需再額外學(xué)習(xí)其他方面的新知識(shí);2 .ActiveDataguardReaderFarm節(jié)點(diǎn)是靈活可擴(kuò)展的,可以在線添加或者刪除節(jié)點(diǎn),并且可以線性擴(kuò)展而不對(duì)生產(chǎn)系統(tǒng)造成影響
3、;3 .可以真正做到實(shí)時(shí)查詢,不會(huì)應(yīng)為大事務(wù)造成同步阻塞,性能有保障;4 .沒有數(shù)據(jù)類型的限制;5 .高可用性,節(jié)點(diǎn)的宕機(jī)都不會(huì)影響到數(shù)據(jù)庫(kù)的可用性。OracleActiveDataGuard系統(tǒng)架構(gòu)如下:PrimaiyDatabaseProcessesPrimarytransactionsRedobufferlgwrArchivedredoARCOIReal-timeappMstandbyredologsArchivedrelologsMRPorstandbydatabaseBackupReportsActiveDataGuard的同步是通過(guò)standby數(shù)據(jù)庫(kù)對(duì)主數(shù)據(jù)庫(kù)文件的不斷copy,
4、不斷應(yīng)用主庫(kù)傳輸過(guò)來(lái)的redo重做日志來(lái)保持和主庫(kù)的物理結(jié)構(gòu)一致。standby數(shù)據(jù)庫(kù)分為物理standby和邏輯standby。主備庫(kù)之間走的是SSL協(xié)議,SS朋用RSA公鑰密碼和對(duì)稱密鑰加密,提供身份驗(yàn)證、加密和數(shù)據(jù)完整性。ActiveDataGuard從底層技術(shù)上實(shí)現(xiàn)了在日志恢復(fù)數(shù)據(jù)的同時(shí)可以用只讀的方式打開數(shù)據(jù)庫(kù),用戶可以在備用數(shù)據(jù)庫(kù)上進(jìn)行查詢、報(bào)表等操作。OracleActiveDataGuard包括一個(gè)生產(chǎn)數(shù)據(jù)庫(kù),也稱為主數(shù)據(jù)庫(kù),以及一個(gè)或多個(gè)備用數(shù)據(jù)庫(kù),這些備用數(shù)據(jù)庫(kù)是與主數(shù)據(jù)庫(kù)在事務(wù)上一致的副本。DataGuard利用重做數(shù)據(jù)保持這種事務(wù)一致性。當(dāng)主數(shù)據(jù)庫(kù)中發(fā)生事務(wù)時(shí),則生成重
5、做數(shù)據(jù)并將其寫入本地重做日志文件中。通過(guò)OracleActiveDataGuard,還將重做數(shù)據(jù)傳輸?shù)絺溆谜军c(diǎn)上,并應(yīng)用到備用數(shù)據(jù)庫(kù)中,從而使備用數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)保持同步。OracleActiveDataGuard允許管理員選擇將重做數(shù)據(jù)同步還是異步地發(fā)送到備用站點(diǎn)上。備用數(shù)據(jù)庫(kù)的底層技術(shù)是OracleActiveDataGuard重做應(yīng)用(物理備用數(shù)據(jù)庫(kù))。物理備用數(shù)據(jù)庫(kù)在磁盤上擁有和主數(shù)據(jù)庫(kù)逐塊相同的數(shù)據(jù)庫(kù)結(jié)構(gòu),并且使用Oracle介質(zhì)恢復(fù)進(jìn)行更新。i.硬件及操作系統(tǒng)需求X系統(tǒng)平臺(tái)硬件配置操作系統(tǒng)存儲(chǔ)異構(gòu)同一個(gè)Data不同服務(wù)器的硬必須一致,不過(guò)支持Gurid配置中的件配置可以/、操作系統(tǒng)
6、版本可所有oracle數(shù)同,比如cpu,以略有差異,比據(jù)庫(kù)必須運(yùn)行內(nèi)存,存儲(chǔ)設(shè)備,如(linuxas4&linuxprimary數(shù)于相同的平臺(tái)。但是必須確保as5),primary數(shù)據(jù)庫(kù)比如inter架構(gòu)standby數(shù)據(jù)庫(kù)據(jù)庫(kù)和standbyVS下的32位linux服務(wù)器有足夠的數(shù)據(jù)庫(kù)的目錄路standby數(shù)據(jù)庫(kù)系統(tǒng)可以與inter架構(gòu)下的32位linux系統(tǒng)組成一組DataGuard。64位HP-UX也可以與32位HP-UX組成一組DataGuard磁盤空間用來(lái)接收及應(yīng)用redo數(shù)據(jù)徑可以/、同2.軟件需求ActiveDataGuard作為Oracle企業(yè)版一個(gè)特性功能,標(biāo)準(zhǔn)版不支持。而且
7、作為Oracle軟件的單獨(dú)組件(類似OracleRac組件),需要單獨(dú)收取費(fèi)用。同一個(gè)DataGuard配置中所有數(shù)據(jù)庫(kù)初始化參數(shù):COMPAT舊LE的值必須相同。Primary數(shù)據(jù)庫(kù)必須運(yùn)行于歸檔模式,并且務(wù)必確保在primary數(shù)據(jù)庫(kù)上打開FORCELOGGING以避免用戶通過(guò)nologging等方式避免寫redo造成對(duì)應(yīng)的操作無(wú)法傳輸?shù)絪tandby數(shù)據(jù)庫(kù)。Primary和standby數(shù)據(jù)庫(kù)均可應(yīng)用于單實(shí)例或RAC架構(gòu)下,并且同一個(gè)dataguard配置可以混合使用邏輯standby和物理standby。Primary和standby數(shù)據(jù)庫(kù)可以在同一臺(tái)服務(wù)器,但需要注意各自的數(shù)據(jù)文件存
8、放目錄,避免重寫或覆蓋。使用具有sysdba系統(tǒng)權(quán)限的用戶管理primary和standby數(shù)據(jù)庫(kù)。建議數(shù)據(jù)庫(kù)必須采用相同的存儲(chǔ)架構(gòu)。比如存儲(chǔ)采用ASM/OMF的話,那不分primarty或是standby也都需要采用ASM/OMF。各服務(wù)器的時(shí)間設(shè)置,時(shí)區(qū)/時(shí)間設(shè)置需一致。四、ActiveDataGuarcE作模式OracleActiveDataGuard有MAXPERFORMANCE,MAXAVAILABILIJMIAXPROTECTIONE種數(shù)據(jù)保護(hù)模式:模式數(shù)據(jù)丟失風(fēng)險(xiǎn)傳輸如果備用數(shù)據(jù)庫(kù)未提交任何確認(rèn)最高保護(hù)零數(shù)據(jù)丟失雙重故障保護(hù)同步僅當(dāng)從備用數(shù)據(jù)庫(kù)收到已將事務(wù)的重做硬化到磁盤的確認(rèn)后
9、,才向應(yīng)用程序發(fā)送提交成功信號(hào)。最局可用性零數(shù)據(jù)丟失單重故障保護(hù)同步快速同步遠(yuǎn)程同步僅當(dāng)收到備用數(shù)據(jù)庫(kù)的確認(rèn)后,或超出閾值期限后,才向應(yīng)用程序發(fā)送提交成功信號(hào),蝌T取其先最高性能可能有極小的數(shù)據(jù)丟失風(fēng)險(xiǎn)日止升少主數(shù)據(jù)庫(kù)從不等待備用數(shù)據(jù)庫(kù)的確認(rèn),而是直接向應(yīng)用程序發(fā)送提交成功信號(hào)。OracleActiveDataGuard支持多種物理架構(gòu)模式,Primary和standby數(shù)據(jù)庫(kù)均可應(yīng)用于單實(shí)例或RAC架構(gòu)下。目前采用較多的物理架構(gòu)模式有如下兩種:1.主機(jī)數(shù)據(jù)庫(kù)(RAQ+備機(jī)數(shù)據(jù)庫(kù)(DG單機(jī))+同磁盤陣列:數(shù)據(jù)庫(kù)陣列2.主機(jī)數(shù)據(jù)庫(kù)(RAQ+備機(jī)數(shù)據(jù)庫(kù)(RAQ+同磁盤陣列:數(shù)據(jù)庫(kù)陣列(比對(duì)比以上兩
10、種方案,備機(jī)部署為RAC雙機(jī)方式為備機(jī)查詢應(yīng)用提供更好的高可用性如負(fù)載均衡和應(yīng)用透明切塊),但同時(shí)也增加日常維護(hù)的復(fù)雜程度。如果考慮能夠持續(xù)穩(wěn)定地向外圍系統(tǒng)提供數(shù)據(jù)查詢服務(wù),推薦使用主備機(jī)數(shù)據(jù)庫(kù)均為RAC的模式。六、方案特點(diǎn)1 .高性能、高可靠性本方案采用本地備份與遠(yuǎn)程復(fù)制相結(jié)合,最大限度的保證業(yè)務(wù)數(shù)據(jù)的安全性。結(jié)合對(duì)操作系統(tǒng)級(jí)和數(shù)據(jù)庫(kù)級(jí)的性能優(yōu)化,消除系統(tǒng)瓶頸,使硬件資源得到最大限度的利用。2 .方便靈活在系統(tǒng)中,備份數(shù)據(jù)中心的數(shù)據(jù)庫(kù)系統(tǒng)可以切換到打開狀態(tài),不同于冷容災(zāi)模式下容災(zāi)站點(diǎn)的數(shù)據(jù)庫(kù)系統(tǒng)在進(jìn)行數(shù)據(jù)復(fù)制是不可用的情況。因此,備份數(shù)據(jù)中心可以通過(guò)為其它系統(tǒng)提供數(shù)據(jù)共享服務(wù)。如通過(guò)備份數(shù)據(jù)
11、中心為綜合查詢系統(tǒng)提供快速的數(shù)據(jù)抽取功能,并且實(shí)現(xiàn)數(shù)據(jù)的抽取與生產(chǎn)系統(tǒng)完全隔離,減少對(duì)生產(chǎn)系統(tǒng)的影響。3 .高效率、低負(fù)載數(shù)據(jù)復(fù)制引擎使用基于Log的復(fù)制,復(fù)制操作集中于對(duì)數(shù)據(jù)的改變,因此將對(duì)源數(shù)據(jù)庫(kù)系統(tǒng)、源操作系統(tǒng)和網(wǎng)絡(luò)的影響最小化。數(shù)據(jù)復(fù)制引擎效率很高,同時(shí)保證了復(fù)制數(shù)據(jù)的精確性。在源數(shù)據(jù)庫(kù)一端,數(shù)據(jù)復(fù)制引擎嚴(yán)格地遵守讀一致性模式。在目標(biāo)數(shù)據(jù)庫(kù)一端,數(shù)據(jù)復(fù)制引擎使用Oracle內(nèi)部交易格式提交事務(wù),在容災(zāi)端的交易執(zhí)行速度遠(yuǎn)遠(yuǎn)高于標(biāo)準(zhǔn)SQL語(yǔ)句執(zhí)行速度。同時(shí)系統(tǒng)保證操作次序和會(huì)話上下文的一致。4 .全面-數(shù)據(jù)類型、DML和DDL復(fù)制系統(tǒng)支持Oracle所有的數(shù)據(jù)類型、DML和DDL復(fù)制。在復(fù)制時(shí),系統(tǒng)可選擇性地在用戶級(jí)、對(duì)象級(jí)、命令級(jí)排除(exclude)不需要復(fù)制的內(nèi)容。