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

下載本文檔

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

文檔簡介

目錄一、GoldenGate介紹1二、GoldenGate安裝實施42.1創(chuàng)建GoldenGate軟件安裝目錄42.2 GoldenGate的管理用戶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)Oracle GoldenGate主要由如下組件組成 Extract Data pump Trails Collector Replicat ManagerOracle GoldenGate 數(shù)據(jù)復(fù)制過程如下:利用抽取進程(Extract Process)在源端數(shù)據(jù)庫中讀取Online Redo Log或者Archive Log,然后進行解析,只提取其中數(shù)據(jù)的變化信息,比如DML操作增、刪、改操作,將抽取的信息轉(zhuǎn)換為GoldenGate自定義的中間格式存放在隊列文件(trail file)中。再利用傳輸進程將隊列文件(trail file)通過TCP/IP傳送到目標(biāo)系統(tǒng)。目標(biāo)端有一個進程叫Server Collector,這個進程接受了從源端傳輸過來的數(shù)據(jù)變化信息,把信息緩存到GoldenGate 隊列文件(trail file)當(dāng)中,等待目標(biāo)端的復(fù)制進程讀取數(shù)據(jù)。 GoldenGate 復(fù)制進程(replicat process)從隊列文件(trail file)中讀取數(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ù)庫服務(wù)器上創(chuàng)建文件系統(tǒng):/u01/gg,作為GoldenGate的安裝目錄。2.2 GoldenGate的管理用戶安裝GoldenGate軟件和維護GoldenGate軟件時,可以使用系統(tǒng)上的oracle用戶。GoldenGate安裝目錄的所有者必須是GoldenGate管理用戶,本次實施過程中使用oracle用戶作為GoldenGate管理用戶,添加oracle用戶的環(huán)境變量(在生產(chǎn)端和容災(zāi)端均要進行以下操作):export GG_HOME=/u01/ggexport LD_LIBRARY_PATH=$GG_HOME:$ORACLE_HOME/lib:/usr/bin:/libexport PATH=$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)端均要進行以下操作):GGSCIcreate subdirs至此,GoldenGate軟件安裝完畢。2.4設(shè)置數(shù)據(jù)庫歸檔模式查看數(shù)據(jù)庫的歸檔模式:SQLarchive log list;如果是非歸檔模式,需要開啟歸檔模式:shutdown immediate;startup mount;alter database archivelog;alter database open;2.5打開數(shù)據(jù)庫的附加日志打開附加日志并切換日志(保證Online redo log和Archive log一致)alter database add supplemental log data ;alter database add supplemental log data (primary key, unique,foreign key) columns;alter system switch logfile;2.6開啟數(shù)據(jù)庫強制日志模式alter database force logging;2.7創(chuàng)建GoldenGate管理用戶在生產(chǎn)端和容災(zāi)端均要進行以下操作:-create tablespaceSQLcreate tablespace ogg datafile $ORACLE_BASE/oradata/test/ogg01.dbf size 300M ;- create the user SQLcreate user ogg identified by ogg default tablespace ogg;- grant role privileges SQLgrant resource, connect, dba to ogg;2.8編輯GLOBALS參數(shù)文件切換到GoldenGate安裝目錄下,執(zhí)行命令:cd /u01/gg./ggsciGGSCIEDIT PARAMS ./GLOBALS -指定進行DDL復(fù)制的數(shù)據(jù)庫用戶,DML可不配置在文件中添加以下內(nèi)容:GGSCHEMA ogg -指定的進行DDL復(fù)制的數(shù)據(jù)庫用戶CHECKPOINTTABLE ogg.checkpoint利用默認的密鑰,生成密文:GGSCIencrypt password ogg encryptkey defaultEncrypted password: AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB 記錄這個密文,將在以下進程參數(shù)的配置中使用。2.9管理進程MGR參數(shù)配置PORT 7839DYNAMICPORTLIST 7840-7860-AUTOSTART *AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3PURGEOLDEXTRACTS ./dirdat/*,USECHECKPOINTS, MINKEEPDAYS 7LAGREPORTHOURS 1LAGINFOMINUTES 30LAGCRITICALMINUTES 45以下兩句用于DDL,單獨配置DML時,可不添加PURGEDDLHISTORY MINKEEPDAYS 11,MAXKEEPDAYS 14PURGEMARKERHISTORY MINKEEPDAYS 11, MAXKEEPDAYS 142.10 在目標(biāo)端配置GoldenGate軟件復(fù)制進程Dblogin userid ogg,password oggAdd checkpointtable ogg.checktable2.11抽取進程EXTN參數(shù)配置Add extract extn,tranlog,begin nowAdd exttrail ./dirdat/na,extract extn,megabytes 100EXTRACT extnsetenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)userid ogg, password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB, ENCRYPTKEY defaultREPORTCOUNT EVERY 1 MINUTES, RATEDISCARDFILE ./dirrpt/discard_extn.dsc,APPEND,MEGABYTES 1024DBOPTIONS ALLOWUNUSEDCOLUMNWARNLONGTRANS 2h,CHECKINTERVAL 3mEXTTRAIL ./dirdat/naTRANLOGOPTIONS EXCLUDEUSER OGG TRANLOGOPTIONS ALTARCHIVEDLOGFORMAT %t_%s_%r.dbfFETCHOPTIONS NOUSESNAPSHOTTRANLOGOPTIONS CONVERTUCS2CLOBSTRANLOGOPTIONS altarchivelogdest primary instance test /oradata/arch-TRANLOGOPTIONS RAWDEVICEOFFSET 0DYNAMICRESOLUTION以下兩句是配置DDL需要:DDL INCLUDE ALLDDLOPTIONS addtrandata, NOCROSSRENAME, REPORT table QQQ.*;table CUI.*;2.11 傳輸進程DPEN參數(shù)配置Add extract dpen,exttrailsource ./dirdat/naAdd rmttrail ./dirdat/na,extract dpenEXTRACT dpenRMTHOST 192.168.56.7 , MGRPORT 7839, compressPASSTHRUnumfiles 50000RMTTRAIL ./dirdat/naTABLE QQQ.*;TABLE CUI.*;2.12建立OGG的DDL對象$ cd /u01/gg $ sqlplus / as sysdbaSQL marker_setup.sqlEnter GoldenGate schema name:oggalter system set recyclebin=off;SQL ddl_setup.sqlEnter GoldenGate schema name: oggSQL role_setup.sqlGrant this role to each user assigned to the Extract, Replicat, GGSCI, and Manager processes, by using the following SQL command:SQLGRANT GGS_GGSUSER_ROLE TO where is the user assigned to the GoldenGate processes.注意這里的提示:需要手工將這個GGS_GGSUSER_ROLE指定給extract所使用的數(shù)據(jù)庫用戶(即參數(shù)文件里面通過userid指定的用戶),可以到sqlplus下執(zhí)行類似的sql:SQLGRANT GGS_GGSUSER_ROLE TO ogg;注:這里的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)建進程 EXTN GGSCIadd extract extn,tranlog,begin nowGGSCIadd exttrail ./dirdat/na,extract extn,megabytes 500/創(chuàng)建進程 DPEN GGSCIadd extract dpen,exttrailsource ./dirdat/naGGSCIadd rmttrail ./dirdat/na,extract dpen,megabytes 500在生產(chǎn)端啟動管理進程:GGSCI start mgr啟用DDL 捕獲trigger:$ cd /u01/gg$ sqlplus “/as sysdba”SQL ddl_enable.sql在生產(chǎn)端啟動抽取進程:GGSCI start EXTN在數(shù)據(jù)庫中,獲取當(dāng)前的SCN號,并且記錄這個SCN號:SQLselect to_char(dbms_flashback.get_system_change_number) from dual;603809在數(shù)據(jù)庫中,創(chuàng)建數(shù)據(jù)泵所需目錄并賦予權(quán)限:SQLCREATE OR REPLACE DIRECTORY DATA_PUMP AS /u01;SQLgrant read ,write on DIRECTORY DATA_PUMP to ogg;在生產(chǎn)端利用數(shù)據(jù)泵導(dǎo)出數(shù)據(jù):expdp ogg/ogg schemas=QQQ directory=DATA_PUMP dumpfile=QQQ_bak_%U flashback_scn=123456789 logfile=expdp_QQQ.log filesize=4096mexpdp ogg/ogg schemas=CUI directory=DATA_PUMP dumpfile=CUI_bak_%U flashback_scn=123456789 logfile=expdp_ CUI.log filesize=4096mexpdp ogg/ogg schemas=test1 directory=DATA_PUMP dumpfile=test1_bak_%U flashback_scn=603809 logfile=expdp_QQQ.log filesize=4096m把導(dǎo)出的文件傳輸?shù)饺轂?zāi)端,利用數(shù)據(jù)泵將數(shù)據(jù)導(dǎo)入:Impdp ogg/ogg DIRECTORY=DATA_PUMP DUMPFILE=QQQ_bak_%U logfile=impdp_ QQQ.logImpdp ogg/ogg DIRECTORY=DATA_PUMP DUMPFILE=CUI_bak_%U logfile=impdp_CUI.log2.14 容災(zāi)端管理進程MGR參數(shù)配置PORT 7839DYNAMICPORTLIST 7840-7860-AUTOSTART ER *-AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 2userid ogg, password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB, ENCRYPTKEY default2.15編輯GLOBALS參數(shù)文件切換到GoldenGate安裝目錄下,執(zhí)行命令:cd /u01/gg./ggsciggsciEDIT PARAMS ./GLOBALS在文件中添加以下內(nèi)容:GGSCHEMA ogg -指定的進行DDL復(fù)制的數(shù)據(jù)庫用戶2.16 容災(zāi)端復(fù)制進程REPN參數(shù)配置REPLICAT repnsetenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)userid ogg, password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB, ENCRYPTKEY defaultSQLEXEC ALTER SESSION SET CONSTRAINTS=DEFERREDREPORT AT 01:59REPORTCOUNT EVERY 30 MINUTES, RATEREPERROR DEFAULT, ABENDassumetargetdefsDISCARDFILE ./dirrpt/repna.dsc, APPEND, MEGABYTES 1024DISCARDROLLOVER AT 02:30ALLOWNOOPUPDATESREPERROR (1403, discard)DDL INCLUDE MAPPED DDLOPTIONS REPORTMAPEXCLUDE QQQ.T0417MAP QQQ.*, TARGET QQQ.*;MAP CUI.*, TARGET CUI.*;2.17創(chuàng)建復(fù)制進程repn 執(zhí)行以下命令創(chuàng)建復(fù)制進程repn:GGSCIadd replicat repn, exttrail ./dirdat/na, nodbcheckpoint2.18啟動生產(chǎn)端傳輸進程和容災(zāi)端復(fù)制進程GGSCIstart dpenGGSCIstart REPLICAT repn aftercsn 1234567892.19測試場景(1)在生產(chǎn)端數(shù)據(jù)庫上,創(chuàng)建一張表。(2)在生產(chǎn)端數(shù)據(jù)庫上,修改這個張表的數(shù)據(jù)。(3)在生產(chǎn)端數(shù)據(jù)庫上,刪除這張表。三GoldenGate基本運維命令(1)查看進程狀態(tài)GGSCIinfo all 查看GG整體運行情況,比如進程Lag延時,檢查點延時。GGSCIinfo 查看某個進程的運行狀況,比如抽取進程正在讀取哪個歸檔日志或者聯(lián)機重做日志,傳輸進程正在傳送哪一個隊列文件,復(fù)制進程正在使用哪一個隊列文件。GGSCIinfo showch 查看某個進程運行的詳細信息。(2)查看進程報告GGSCIview report 報錯時,從進程報告里獲取錯誤信息。(3)在操作系統(tǒng)上,查看GoldenGate安裝目錄的使用率$ df -h查看ogg目錄是否撐滿。四Logdump工具使用五Goldengate初級的性能優(yōu)化BatchsqlInsert abend限制內(nèi)存使用顆粒度拆分六、goldengate版本升級七、goldengate雙向復(fù)制八、生產(chǎn)庫與容災(zāi)庫之間的回切八、異構(gòu)數(shù)據(jù)庫之間的數(shù)據(jù)轉(zhuǎn)換,數(shù)據(jù)過濾篩選 四、常見故障排除故障(1)錯誤信息:OGG-00446 Could not find archived log for sequence 53586 thread 1 under alternative destinations. SQL . Last alternative log tried /arch_cx/1_53586_776148274.arc., error retrieving redo file name for sequence 53586, archived = 1, use_alternate = 0Not able to establish initial position for sequence 53586, rba 44286992.處理辦法:將缺失的歸檔日志從備份中恢復(fù)出來。如果依舊找不到所需歸檔日志,那么只能重新實施數(shù)據(jù)初始化。故障(2)錯誤信息:OGG-01154 Oracle GoldenGate Delivery for Oracle, repn.prm: SQL error 1691

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論