GoldenGate基本原理、安裝過程和基本維護_第1頁
GoldenGate基本原理、安裝過程和基本維護_第2頁
GoldenGate基本原理、安裝過程和基本維護_第3頁
GoldenGate基本原理、安裝過程和基本維護_第4頁
GoldenGate基本原理、安裝過程和基本維護_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

目錄一、GoldenGate介紹1二、GoldenGate安裝實施42.1創(chuàng)立GoldenGate軟件安裝目錄42.2GoldenGate的管理用戶42.3安裝GoldenGate軟件52.4設(shè)置數(shù)據(jù)庫歸檔模式52.5翻開數(shù)據(jù)庫的附加日志62.6開啟數(shù)據(jù)庫強制日志模式62.7創(chuàng)立GoldenGate管理用戶62.8編輯GLOBALS參數(shù)文件72.9管理進程MGR參數(shù)配置72.10抽取進程EXTN參數(shù)配置82.11傳輸進程DPEN參數(shù)配置92.12建立OGG的DDL對象102.13數(shù)據(jù)初始化112.14容災(zāi)端管理進程MGR參數(shù)配置132.15編輯GLOBALS參數(shù)文件142.16容災(zāi)端復(fù)制進程REPN參數(shù)配置142.17創(chuàng)立復(fù)制進程repn152.18啟動生產(chǎn)端傳輸進程和容災(zāi)端復(fù)制進程152.19測試場景16三.GoldenGate根本運維命令16四、常見故障排除17一、GoldenGate介紹GoldenGate軟件是一種基于日志的結(jié)構(gòu)化數(shù)據(jù)復(fù)制軟件。GoldenGate能夠?qū)崿F(xiàn)大量交易數(shù)據(jù)的實時捕捉、變換和投遞,實現(xiàn)源數(shù)據(jù)庫與目標(biāo)數(shù)據(jù)庫的數(shù)據(jù)同步,保持亞秒級的數(shù)據(jù)延遲。GoldenGate能夠支持多種拓撲結(jié)構(gòu),包括一對一,一對多,多對一,層疊和雙向復(fù)制等等。GoldenGate根本架構(gòu)OracleGoldenGate主要由如下組件組成●Extract●Datapump●Trails●Collector●Replicat●ManagerOracleGoldenGate數(shù)據(jù)復(fù)制過程如下:利用抽取進程(ExtractProcess)在源端數(shù)據(jù)庫中讀取OnlineRedoLog或者ArchiveLog,然后進行解析,只提取其中數(shù)據(jù)的變化信息,比方DML操作——增、刪、改操作,將抽取的信息轉(zhuǎn)換為GoldenGate自定義的中間格式存放在隊列文件(trailfile)中。再利用傳輸進程將隊列文件(trailfile)通過TCP/IP傳送到目標(biāo)系統(tǒng)。目標(biāo)端有一個進程叫ServerCollector,這個進程接受了從源端傳輸過來的數(shù)據(jù)變化信息,把信息緩存到GoldenGate隊列文件(trailfile)當(dāng)中,等待目標(biāo)端的復(fù)制進程讀取數(shù)據(jù)。GoldenGate復(fù)制進程(replicatprocess)從隊列文件(trailfile)中讀取數(shù)據(jù)變化信息,并創(chuàng)立對應(yīng)的SQL語句,通過數(shù)據(jù)庫的本地接口執(zhí)行,提交到目標(biāo)端數(shù)據(jù)庫,提交成功后更新自己的檢查點,記錄已經(jīng)完成復(fù)制的位置,數(shù)據(jù)的復(fù)制過程最終完成。二、GoldenGate安裝實施2.1創(chuàng)立GoldenGate軟件安裝目錄在數(shù)據(jù)庫效勞器上創(chuàng)立文件系統(tǒng):/u01/gg,作為GoldenGate的安裝目錄。2.2GoldenGate的管理用戶安裝GoldenGate軟件和維護GoldenGate軟件時,可以使用系統(tǒng)上的oracle用戶。GoldenGate安裝目錄的所有者必須是GoldenGate管理用戶,本次實施過程中使用oracle用戶作為GoldenGate管理用戶,添加oracle用戶的環(huán)境變量(在生產(chǎn)端和容災(zāi)端均要進行以下操作):exportGG_HOME=/u01/ggexportLD_LIBRARY_PATH=$GG_HOME:$ORACLE_HOME/lib:/usr/bin:/libexportPATH=$GG_HOME:$PATH2.3安裝GoldenGate軟件切換到oracle用戶,將GG軟件的壓縮包存放到GoldenGate安裝目錄下,即/u01/gg,將這個壓縮包進行解壓到GoldenGate安裝目錄下(在生產(chǎn)端和容災(zāi)端均要進行以下操作):tar-zxvf*.gz進入到GoldenGate安裝目錄,運行GGSCI命令以進入GG界面(在生產(chǎn)端和容災(zāi)端均要進行以下操作):cd/u01/gg./ggsci在GGSCI界面下創(chuàng)立子目錄(在生產(chǎn)端和容災(zāi)端均要進行以下操作):GGSCI>createsubdirs至此,GoldenGate軟件安裝完畢。2.4設(shè)置數(shù)據(jù)庫歸檔模式查看數(shù)據(jù)庫的歸檔模式:SQL>archiveloglist;如果是非歸檔模式,需要開啟歸檔模式:shutdownimmediate;startupmount;alterdatabasearchivelog;alterdatabaseopen;2.5翻開數(shù)據(jù)庫的附加日志翻開附加日志并切換日志〔保證Onlineredolog和Archivelog一致〕alterdatabaseaddsupplementallogdata;alterdatabaseaddsupplementallogdata(primarykey,unique,foreignkey)columns;altersystemswitchlogfile;2.6開啟數(shù)據(jù)庫強制日志模式alterdatabaseforcelogging;2.7創(chuàng)立GoldenGate管理用戶在生產(chǎn)端和容災(zāi)端均要進行以下操作:--createtablespaceSQL>createtablespaceoggdatafile'$ORACLE_BASE/oradata/test/ogg01.dbf'size300M;--createtheuserSQL>createuseroggidentifiedbyoggdefaulttablespaceogg;--grantroleprivilegesSQL>grantresource,connect,dbatoogg;2.8編輯GLOBALS參數(shù)文件切換到GoldenGate安裝目錄下,執(zhí)行命令:cd/u01/gg./ggsciGGSCI>EDITPARAMS./GLOBALS在文件中添加以下內(nèi)容:GGSCHEMAogg--指定的進行DDL復(fù)制的數(shù)據(jù)庫用戶利用默認的密鑰,生成密文:GGSCI>encryptpasswordoggencryptkeydefaultEncryptedpassword:AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB記錄這個密文,將在以下進程參數(shù)的配置中使用。2.9管理進程MGR參數(shù)配置PORT7839DYNAMICPORTLIST7840-7860--AUTOSTARTER*--AUTORESTARTEXTRACT*,RETRIES5,WAITMINUTES3PURGEOLDEXTRACTS./dirdat/*,usecheckpoints,minkeepdays2useridogg,passwordAACAAAAAAAAAAADAHBLDCCIIOIRFNEPB,ENCRYPTKYdefaultPURGEDDLHISTORYMINKEEPDAYS11,MAXKEEPDAYS14PURGEMARKERHISTORYMINKEEPDAYS11,MAXKEEPDAYS142.10抽取進程EXTN參數(shù)配置EXTRACTextnsetenv(NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252)useridogg,passwordAACAAAAAAAAAAADAHBLDCCIIOIRFNEPB,ENCRYPTKEYdefaultREPORTCOUNTEVERY1MINUTES,RATEDISCARDFILE./dirrpt/discard_extn.dsc,APPEND,MEGABYTES1024DBOPTIONSALLOWUNUSEDCOLUMNWARNLONGTRANS2h,CHECKINTERVAL3mEXTTRAIL./dirdat/naTRANLOGOPTIONSEXCLUDEUSEROGGTRANLOGOPTIONSALTARCHIVEDLOGFORMAT%t_%s_%r.dbfFETCHOPTIONSNOUSESNAPSHOTTRANLOGOPTIONSCONVERTUCS2CLOBSTRANLOGOPTIONSaltarchivelogdestprimaryinstancetest/oradata/arch--TRANLOGOPTIONSRAWDEVICEOFFSET0DYNAMICRESOLUTIONDDLINCLUDEALLDDLOPTIONSaddtrandata,NOCROSSRENAME,REPORTtableQQQ.*;tableCUI.*;2.11傳輸進程DPEN參數(shù)配置EXTRACTdpenRMTHOST192.168.4.171,MGRPORT7839,compressPASSTHRUnumfiles50000RMTTRAIL./dirdat/naTABLEQQQ.*;TABLECUI.*;2.12建立OGG的DDL對象$cd/u01/gg$sqlplus"/assysdba"SQL>@marker_setup.sqlEnterGoldenGateschemaname:oggaltersystemsetrecyclebin=off;SQL>@ddl_setup.sqlEnterGoldenGateschemaname:oggSQL>@role_setup.sqlGrantthisroletoeachuserassignedtotheExtract,Replicat,GGSCI,andManagerprocesses,byusingthefollowingSQLcommand:SQL>GRANTGGS_GGSUSER_ROLETO<loggedUser>where<loggedUser>istheuserassignedtotheGoldenGateprocesses.注意這里的提示:需要手工將這個GGS_GGSUSER_ROLE指定給extract所使用的數(shù)據(jù)庫用戶〔即參數(shù)文件里面通過userid指定的用戶〕,可以到sqlplus下執(zhí)行類似的sql:SQL>GRANTGGS_GGSUSER_ROLETOogg;注:這里的ogg是extract使用的用戶。如果你有多個extract,使用不同的數(shù)據(jù)庫用戶,那么需要重述以上過程全部賦予GGS_GGSUSER_ROLE權(quán)限。運行以下腳本,使觸發(fā)器生效:SQL>@ddl_enable.sql注:在生產(chǎn)端開啟抽取前,先禁用DDL捕獲觸發(fā)器,調(diào)用ddl_disable.sql。2.13數(shù)據(jù)初始化在初始化過程中,源數(shù)據(jù)庫不需要停機,初始化過程分為三個局部:生產(chǎn)端開啟抽取進程;生產(chǎn)端導(dǎo)出數(shù)據(jù);容災(zāi)端導(dǎo)入數(shù)據(jù);在生產(chǎn)端添加抽取進程、傳輸進程以及相應(yīng)的隊列文件,執(zhí)行命令如下://創(chuàng)立進程EXTNGGSCI>addextractextn,tranlog,beginnowGGSCI>addexttrail./dirdat/na,extractextn,megabytes500//創(chuàng)立進程DPENGGSCI>addextractdpen,exttrailsource./dirdat/naGGSCI>addrmttrail./dirdat/na,extractdpen,megabytes500在生產(chǎn)端啟動管理進程:GGSCI>startmgr啟用DDL捕獲trigger:$cd/u01/gg$sqlplus“/assysdba〞SQL>@ddl_enable.sql在生產(chǎn)端啟動抽取進程:GGSCI>startEXTN在數(shù)據(jù)庫中,獲取當(dāng)前的SCN號,并且記錄這個SCN號:SQL>selectto_char(dbms_flashback.get_system_change_number)fromdual;603809在數(shù)據(jù)庫中,創(chuàng)立數(shù)據(jù)泵所需目錄并賦予權(quán)限:SQL>CREATEORREPLACEDIRECTORYDATA_PUMPAS'/u01';SQL>grantread,writeonDIRECTORYDATA_PUMPtoogg;在生產(chǎn)端利用數(shù)據(jù)泵導(dǎo)出數(shù)據(jù):expdpogg/oggschemas='QQQ'directory=DATA_PUMPdumpfile=QQQ_bak_%Uflashback_scn=123456789logfile=expdp_QQQ.logfilesize=4096mexpdpogg/oggschemas='CUI'directory=DATA_PUMPdumpfile=CUI_bak_%Uflashback_scn=123456789logfile=expdp_CUI.logfilesize=4096mexpdpogg/oggschemas='test1'directory=DATA_PUMPdumpfile=test1_bak_%Uflashback_scn=603809logfile=expdp_QQQ.logfilesize=4096m把導(dǎo)出的文件傳輸?shù)饺轂?zāi)端,利用數(shù)據(jù)泵將數(shù)據(jù)導(dǎo)入:Impdpogg/oggDIRECTORY=DATA_PUMPDUMPFILE=QQQ_bak_%Ulogfile=impdp_QQQ.logImpdpogg/oggDIRECTORY=DATA_PUMPDUMPFILE=CUI_bak_%Ulogfile=impdp_CUI.log2.14容災(zāi)端管理進程MGR參數(shù)配置PORT7839DYNAMICPORTLIST7840-7860--AUTOSTARTER*--AUTORESTARTEXTRACT*,RETRIES5,WAITMINUTES3PURGEOLDEXTRACTS./dirdat/*,usecheckpoints,minkeepdays2useridogg,passwordAACAAAAAAAAAAADAHBLDCCIIOIRFNEPB,ENCRYPTKEYdefault2.15編輯GLOBALS參數(shù)文件切換到GoldenGate安裝目錄下,執(zhí)行命令:cd/u01/gg./ggsciggsci>EDITPARAMS./GLOBALS在文件中添加以下內(nèi)容:GGSCHEMAogg--指定的進行DDL復(fù)制的數(shù)據(jù)庫用戶2.16容災(zāi)端復(fù)制進程REPN參數(shù)配置REPLICATrepnsetenv(NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252)useridogg,passwordAACAAAAAAAAAAADAHBLDCCIIOIRFNEPB,ENCRYPTKEYdefaultSQLEXEC"ALTERSESSIONSETCONSTRAINTS=DEFERRED"REPORTAT01:59REPORTCOUNTEVERY30MINUTES,RATEREPERRORDEFAULT,ABENDassumetargetdefsDISCARDFILE./dirrpt/repna.dsc,APPEND,MEGABYTES1024DISCARDROLLOVERAT02:30ALLOWNOOPUPDATESREPERROR(1403,discard)DDLINCLUDEMAPPEDDDLOPTIONSREPORTMAPEXCLUDEQQQ.T0417MAPQQQ.*,TARGETQQQ.*;MAPCUI.*,TARGETCUI.*;2.17創(chuàng)立復(fù)制進程repn執(zhí)行以下命令創(chuàng)立復(fù)制進程repn:GGSCI>addreplicatrepn,exttrail./dirdat/na,nodbcheckpoint2.18啟動生產(chǎn)端傳輸進程和容災(zāi)端復(fù)制進程GGSCI>startdpenGGSCI>startREPLICATrepnaftercsn1234567892.19測試場景〔1〕在生產(chǎn)端數(shù)據(jù)庫上,創(chuàng)立一張表?!?〕在生產(chǎn)端數(shù)據(jù)庫上,修改這個張表的數(shù)據(jù)。〔3〕在生產(chǎn)端數(shù)據(jù)庫上,刪除這張表。三.GoldenGate根本運維命令〔1〕查看進程狀態(tài)GGSCI>infoall——查看GG整體運行情況,比方進程Lag延時,檢查點延時。GGSCI>info<進程名>——查看某個進程的運行狀況,比方抽取進程正在讀取哪個歸檔日志或者聯(lián)機重做日志,傳輸進程正在傳送哪一個隊列文件,復(fù)制進程正在使用哪一個隊列文件。GGSCI>info<進程名>showch——查看某個進程運行的詳細信息?!?〕查看進程報告GGSCI>viewreport<進程名>——報錯時,從進程報告里獲取錯誤信息。〔3〕在操作系統(tǒng)上,查看GoldenGate安裝目錄的使用率$df-h——查看ogg目錄是否撐滿。四.Logdump工具使用五.Goldengate初級的性能優(yōu)化BatchsqlInsertabend限制內(nèi)存使用顆粒度拆分六、goldengate版本升級七、goldengate雙向復(fù)制八、生產(chǎn)庫與容災(zāi)庫之間的回切八、異構(gòu)數(shù)據(jù)庫之間的數(shù)據(jù)轉(zhuǎn)換,數(shù)據(jù)過濾篩選四、常見故障排除故障〔1〕錯誤信息:OGG-00446Couldnotfindarchivedlogforsequence53586thread1underalternativedestinations.SQL<SELECTMAX(sequence#)FROMv$logWHEREthread#=:ora_thread>.Lastalternativelogtried/arch_cx/1_53586_776148274.arc.,errorretrievingredofilenameforsequence53586,archived=1,use_alternate=0Notabletoestablishinitialpositionforsequence53586,rba44286992.處理方法:將缺失的歸檔日志從備份中恢復(fù)出來。如果依舊找不到所需歸檔日志,那么只能重新實施數(shù)據(jù)初始化。故障〔2〕錯誤信息:OGG-01154OracleGoldenGateDeliveryforOracle,repn.prm:SQLerror1691mappingDATA_USER.DMH_WJXXBtoDATA_USER.DMH_WJXXBOCIErrorORA-01691:unabletoextendlobsegmentDATA_USER.SYS_LOB0000083691C00014$$by16384intablespaceDATA_USER_LOB_U128M_1(status=1691),SQL<INSERTINTO"DATA_USER"."DMH_WJXXB"("DMH_WJXXB_ID","DMH_ZLXXB_ID","DMH_GPXXB_ID","DMH_PCXXB_ID","PICIH","

溫馨提示

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

評論

0/150

提交評論