溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

RAC下怎樣進行OGG 配置

發(fā)布時間:2021-11-06 09:22:25 來源:億速云 閱讀:225 作者:柒染 欄目:建站服務器

本篇文章給大家分享的是有關RAC下怎樣進行OGG 配置,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

RACOGG 配置(僅傳輸DML操作)

1. 【源端和目標端】創(chuàng)建ACFS文件系統(tǒng),在共享存儲創(chuàng)建ogg軟件安裝目錄,上傳文件并解壓縮ogg軟件

cd /ogg

tar -xvf /soft/fbo...

 

添加oracle環(huán)境變量LD_LIBRARY_PATH

vi ~/.bash_profile

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

 

安裝:

./ggsci

create subdirs

 

--完成ogg 安裝

 

2.【源端】檢查是否開啟歸檔

SQL> select name,log_mode,supplemental_log_data_min from v$database;

 

NAME      LOG_MODE     SUPPLEME

--------- ------------ --------

MMDB      NOARCHIVELOG NO

 

a.開啟歸檔

SHUTDOWN IMMEDIATE                           --關閉數(shù)據(jù)庫:

STARTUP MOUNT                                --啟動到Mount狀態(tài)

ALTER DATABASE ARCHIVE LOG;    --開啟歸檔

ALTER DATABASE OPEN                    --打開數(shù)據(jù)庫

ARCHIVE LOG LIST                     --檢查歸檔狀態(tài),確認歸檔位置是否合適

b.打開最小附加日志

ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;        --打開最小附加日志

ALTER SYSTEM SWITCH LOGFILE                                          --切換日志使生效

c.打開OGG特性

SHOW PARAMETER GOLDENGATE

ALTER SYSTEM SET ENABLE_GOLDENGATE_REPLICATION = TRUE SCOPE=BOTH;

        

3.【源端目標端】確定所有待同步的表必須有主鍵或唯一索引

COL OWNER FOR A20

COL TABLENAME FOR A30

SELECT OWNER,TABLE_NAME,CONSTRAINT_TYPE,INVALID FROM DBA_CONSTRAINTS WHERE OWNER='SCOTT' AND CONSTRAINT_TYPE IN ('P','U'); --查詢用戶下哪些表有主鍵

 

4. OGG用戶創(chuàng)建:

_________________________________________________________________

【源端】:

CREATE USER ggadmin IDENTIFIED BY ggadmin123, DEFAULT TABLESPACE USERS ;

GRANT CONNECT TO ggadmin;

GRANT CREATE SESSION TO ggadmin;

GRANT ALTER SESSION TO ggadmin;

GRANT RESOURCE TO ggadmin;

GRANT SELECT ANY DICTIONARY TO ggadmin;

GRANT SELECT ANY TABLE TO ggadmin;

GRANT FLASHBACK ANY TABLE TO ggadmin;

GRANT ALTER ANY TABLE TO ggadmin;

GRANT DBA TO ggadmin;

 

【目標端】:

建立OGG數(shù)據(jù)庫用戶

? 通過sql將數(shù)據(jù)寫入數(shù)據(jù)庫

? OGG目標數(shù)據(jù)庫用戶權限

CREATE USER ggadmin IDENTIFIED BY ggadmin123, DEFAULT TABLESPACE USERS ;

GRANT ALTER SESSION TO ggadmin;

GRANT CREATE SESSION TO ggadmin;

GRANT CONNECT TO ggadmin;

GRANT RESOURCE TO ggadmin;

GRANT SELECT ANY DICTIONARY TO ggadmin;

GRANT SELECT ANY TABLE TO ggadmin;

GRANT FLASHBACK ANY TABLE TO ggadmin;

GRANT INSERT ANY TABLE TO ggadmin;

GRANT UPDATE ANY TABLE TO ggadmin;

GRANT DELETE ANY TABLE TO ggadmin;

GRANT DBA TO ggadmin;

 

 

5.【源端配置】:

 

5.1 mgr 配置

./ggsci

GGSCI> edit param mgr

PORT 7809                                                                                                                                 //監(jiān)聽端口PORT

DYNAMICPORTLIST 7810-7900                                                                                           //動態(tài)監(jiān)聽端口PORT,監(jiān)聽端口失敗時使用

--AUTOSTART ER *                                                                                                         //開啟管理進程后,自動啟動所有的EXTRACTREPLICAT進程

AUTORESTART ER *,RETRIES 5,WAITMINUTES 3,RESETMINUTES 60              //自動重啟異常中止的進程,重試5次,每次等2分鐘,一小時后重試

STARTUPVALIDATIONDELAY 5                                                                                              //啟動時延遲5秒校驗

PURGEOLDEXTRACTS ./dirdat/*,USECHECKPOINTS, MINKEEPDAYS 3           //自動清理使用過的trail隊列,最少保留3

LAGREPORTHOURS 1                                                                                                             //每一小時檢查延遲

LAGINFOMINUTES 30                                                                                                             //延遲30分鐘記錄信息到error log

LAGCRITICALMINUTES 45                                                                                                    //50分鐘記錄警告到error log

 

GGSCI> START MGR //打開管理進程

GGSCI> INFO ALL  //驗證已打開

 

5.2 添加抽取進程及隊列文件

GGSCI> ADD EXTRACT ex_jtwx1, tranlog, begin now,thread 2

GGSCI> ADD EXTTRAIL ./dirdat/la,EXT ex_jtwx1, MEGABYTES 100

GGSCI> ADD EXTRACT dp_jtwx1, EXTTRAILSOURCE ./dirdat/la

GGSCI> ADD RMTTRAIL /ogg/dirdat/ra, EXT dp_jtwx1, MEGABYTES 100

 

5.3 配置抽取進程參數(shù)

extract 抽取進程參數(shù)配置:

./ggsci

GGSCI> edit param ex_jtwx1

EXTRACT ex_jtwx1

 

--[環(huán)境變量,非必須]

--SETENV( ORACLE_SID=xxx )

--SETENV( ORACLE_HOME=xxx )

--SETENV( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )

 

USERID ggadmin, PASSWORD ggadmin123,

TRANLOGOPTIONS DBLOGREADER, DBLOGREADER BUFSIZE 4194304, BUFSIZE 4194304

FETCHOPTIONS FETCHPKUPDATECOLS

NOCOMPRESSDELETES

EXTTRAIL ./dirdat/la

DYNAMICRESOLUTION                                        //動態(tài)解析表結構

--TRANLOGOPTIONS CONVERTUCS2CLOBS    //抽取CLOB必須加上

--GETTRUNCATES                                                   //捕獲truncate操作,默認不捕獲

--[待傳輸?shù)谋?span lang="EN-US">]

table myschema.maytable1;

table myschema.maytable2;

table myschema.*;

--TABLE hq.acct, COLS (col1, col3); --只復制1,3

--TABLE hq.acct, where (id=1 and name=2);   --過濾,只復制滿足條件記錄

--TABLE hq.acct, COLSEXCEPT (col4);      --復制除了第4

 

datapump傳輸進程參數(shù)配置:

GGSCI>edit param dp_jtwx1

extract dp_jtwx1

setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )

passthru                                                                             //passthru表示本進程是一個傳輸進程data pump,無需跟數(shù)據(jù)庫交互,只需要搬運數(shù)據(jù)即可

--REPORT AT 01:59                                                          //配置在特定時間報告?zhèn)鬏敔顟B(tài)

--reportrollover at 02:00                                      //指定每日在特定時間生成一個新的報告

rmthost 10.128.59.52,mgrport 7809, compress    //傳輸進程需要知道目標端的主機端口信息

rmttrail /ogg/dirdat/ra

Dynamicresolution

numfiles 8000

table myschema.mytable1;

table myschema.mytable2;

TABLE hq.acct;                                                                           //注意此時不用再過濾cols了。

 

5.4 添加表級附加日志

GGSCI> DBLOGIN USERID ggadmin, PASSWORD ggadmin123,

GGSCI> LIST TABLES SCOTT.*

GGSCI> ADD TRANDATA scott.emp

GGSCI> ADD TRANDATA scott.dept

....

SQL>alter table user.table add  supplemental log group ggs_table_1 (PK or UK) always;

SQL>

 

GGSCI> START *       --啟動抽取進程和傳輸進程

GGSCI> INFO ALL --檢查是否正常啟動

--------------

【備注1

GGSCI> VIEW REPORT ex_jtwx1    --排錯常用方法1

GGSCI> sh tail -10 ggserr.log  --排錯常用方法2

 

6.【目標端配置】

6.1 配置GLOBALS參數(shù)

GGSCI> EDIT PARAM ./GLOBALS

GGSCHEMA ggadmin

CHECKPOINTTABLE ggadmin.checkpointtable

 

6.2 創(chuàng)建檢查點記錄表

GGSCI> DBLOGIN USERID ggadmin, PASSWORD ggadmin123,

GGSCI> ADD CHECKPOINTTABLE ggadmin.checkpointtable

 

6.3 配置投遞進程

GGSCI> ADD REP rp_jtwx1, EXTTRAIL ./dirdat/ra, CHECKPOINTTABLE ggadmin.checkpointtable

GGSCI> EDIT PARAM rp_jtwx1

REPLICAT rp_jtwx1

 

--環(huán)境變量,非必須

--SETENV( ORACLE_SID=ogg2 )

--SETENV( ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 )

--SETENV( NLS_LANG = AMERICAN_AMERICA.AL32UTF8 )

 

USERID ggadmin, PASSWORD ggadmin

--REPORT AT 01:59                                                                   //配置在特定時間報告復制狀態(tài)

--REPORTROLLOVER AT 02:00                                                        //指定每日在特定時間生成一個新的報告

REPERROR default,discard                                                  //配置如果出現(xiàn)錯誤后的處理模式,這里abend表示出現(xiàn)錯誤即進程終止,等待客戶修正后恢復;也可以設置為discard,此時會將錯誤數(shù)據(jù)寫到下面參數(shù)定義的文件中,但是繼續(xù)處理,進程不退出

INSERTALLRECORDS

DISCARDFILE ./dirrpt/rp_jtwx1.dsc,append, megabytes 200                  //定義出錯后寫錯誤信息的目標文件,為查錯提供幫助。 Append表示在尾部添加, purge表示每次生成一個新的disard文件; megabyte表示最大允許大小,如果超過了此大小則進程也會終止。

ASSUMETARGETDEFS                                                                        //表示源和目標表的結構相同,即相同數(shù)據(jù)庫類型、表的字段定義相同

DYNAMICRESOLUTION                                                                    //動態(tài)解析表的結構,加快啟動速度

--HANDLECOLLISIONS                                                                       //沖突數(shù)據(jù)處理,主要在初始化時候用到

--GETTRUNCATES                                                                               //同步truncate 操作

MAP scott.emp, TARGET scott.emp;

MAP scott.dept, TARGET scott.dept1 , COLMAP (usedefaults , committime = @GETENV ("GGHEADER", "COMMITTIMESTAMP"));

--//定義源表和目標表的映射, colmap里面定義列映射,如果是兩端表的列全部相同則不用colmap

--userdefaults表示,沒有列在后面的列全部按照缺省規(guī)則(列名相同的對應)進行映射,而列在后面的如committime則賦給GoldenGate的一個自有變量,這里是指提交時間。

 

GGSCI> START REP rp_jtwx1  //啟動投遞進程

GGSCI> INFO ALL                      //檢查狀態(tài)

 

--------------

【備注2

GGSCI> help                                          --查看可用命令

GGSCI> help add exttrail --查看添加隊列文件命令使用方法

GGSCI> send rp_jtwx1,status --查看數(shù)據(jù)同步進度

GGSCI> stats rp_jtwx1             --查看投遞進程處理數(shù)據(jù)量統(tǒng)計

 

 

【場景一】主鍵不一致

目標端:         MAP src.s_tab, TARGET tar.t_tab, KEYCOLS ( s_tab_pk_col );

或源端:         Add trandata src.s_tab, cols ( t_tab_pk_col),nokey

【場景二】數(shù)據(jù)過濾

源端:              TABLE demo_src.people, FILTER (age > 50);

                            age需為主鍵才能過濾,或者Add trandata demo_src.people, cols (age)強制為該列加入附加日志

【場景三】數(shù)據(jù)初始化

通過導入加載初始數(shù)據(jù)后

源端:              ALTER ex_jtwx1,begin 2010-03-21 08:00:00  (保證歸檔存在)

或目標端:     ALTER REPLICAT rp_jtwx1, EXTSEQNO 53, EXTRBA 0

【場景四】數(shù)據(jù)沖突處理

replicat使用handlecollisions(必須有主鍵或者唯一索引)

以上就是RAC下怎樣進行OGG 配置,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI