关于ogg的dml和ddl测试

I:安装包版本及下载

a.安装包:

Ogg version:

121210_ggs_Windows_x64_shiphome.zip

Oracle version:

win64_11gR2_database

 

b.下载ogg最新版本:

http://www.oracle.com/index.html --》downloads-->middleware-->goldengate-->

Accept License Agreement  勾上同意


12cwindows下最新版本是:

点击下载,然后跳转到license登陆界面:

我的账号:[email protected]

我的密码:824661247!@#qweZl

下载的文件名称如下:

121210_ggs_Windows_x64_shiphome.zip

 

 

II:构思(适用场景:数据仓库读写分离前台报表)

a.测试拓扑图


b.测试环境准备

准备1windows 7_64bit虚拟机: win7-1

Win7-1 ip地址:10.21.45.85  源数据库:sourcedb 

目标数据库:targetdb 和db3(2个目标数据库设置一致即可)

C.测试需要达到的目标

Configuring DML AND DDL Support

 

第一步:仅安装数据库软件

第二步:配置数据库

a.连接字符串配置

1.使用 net Manger 配置连接字符串

SOURCE =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST =10.21.45.85)(PORT = 1521))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = sourcedb)

    )

  )

 

TARGET =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.21.45.85)(PORT = 1521))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = targetdb)

    )

  )

DB3 =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)( HOST =10.21.45.85)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = db3)

)

)

b.目标库DB3上设置(targetdb目标库上也执行同样的操作)

1.创建ogg用户授予dba角色权限(ogg用户用于goldengate进程replicat访问分析redo log)

2.创建receiver用户授予dba角色权限(receiver用户用于目标库测试演示源库dml和ddl操作后效果查看)

Cmdà

Microsoft Windows [版本 6.1.7601]

版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

 

C:\Users\Administrator>sqlplus sys/oracle@db3 as sysdba

 

SQL*Plus: Release11.2.0.1.0 Production on 星期日 4月 19 19:58:18 2015

 

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

 

 连接到:

Oracle Database11gEnterprise Edition Release11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

 

SQL> sho parameter db_name

 

NAME                                 TYPE        VALUE

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

db_name                              string      db3

SQL> create user ogg identified by oracle default tablespace users;

 

用户已创建。

 

SQL> grant dba to ogg;

 

授权成功。

 

SQL> create user receiver identified by oracle default tablespace users;

 

用户已创建。

SQL> conn sys/oracle@db3 as sysdba

已连接。

SQL> grant dba to receiver;

 

授权成功。

 

SQL> conn receiver/oracle@db3

已连接。

SQL> create table t(id int);

 

表已创建。

c.源库sourcedb上设置

1.创建ogg用户授予dba角色权限(ogg用户用于goldengate进程extract访问分析redo log)

2.创建sender用户授予dba角色权限(sender用户用于源库测试演示session的dml和ddl操作)

Cmdà命令类同目标库设置

 

 第三步:数据库归档处理(sourcedb,targetdb,db3均设置归档)

一键归档脚本如下:

conn sys/oracle as sysdba

alter database add supplemental log data;

alter database force logging;

shutdown immediate

startup mount

alter database archivelog;

alter database open;

select log_mode,supplemental_log_data_min,force_logging from v$database;

 

第四步:安装ogg软件

1.  双击执行setup.exe

解压ogg安装压缩包:

C:\Users\Administrator\Desktop\121210_ggs_Windows_x64_shiphome\ggs_Windows_x64_shiphome\Disk1\setup.exe 双击运行

     2.下载这个文件安装即可:http://download.microsoft.com/download/3/2/2/3224B87F-CFA0-4E70-BDA3-3DE650EFEBA5/vcredist_x64.exe

 

第五步:配置ogg

注册服务:GGSCI (win7) 1> install addservice addevents(12c的貌似不用注册)

1.  GGSCI (win7) 1>create subdirs 

源库上和目标库上都创建,创建目录文件后(比之前多了10个文件夹)


 

2.  源库上创建并开启管理进程:

GGSCI (win7) 2> edit params mgr

GGSCI (win7) 3>Start mgr

 
           3.  源库上创建 extract

GGSCI (win7) 4> add extract ext4, tranlog, begin now

EXTRACT added.

GGSCI (win7) 5> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING

EXTRACT     STOPPED     EXT1        00:00:00      00:00:04

EXTRACT     STOPPED     EXT2       00:00:00      00:00:04

 

4添加本地trail文件

GGSCI (win7) 6> add exttrail C:\ogg\dirdat\dl, extract ext4

EXTTRAIL added.

 

GGSCI (win7) 8> view params ext4

extract ext4

setenv(ORACLE_SID='SOURCE')

DDL INCLUDE ALL

USERID OGG@SOURCE, password oracle

rmthost win7, mgrport 7809

rmttrail c:\ogg\dirdat\dl

table sender.*;

 
     5.目标数据库创建checkpoint

GGSCI (win7) 9>edit params GLOBALS

GGSCHEMA OGG

CHECKPOINTTABLE OGG.CKPT

 

GGSCI (win7) 10>Dblogin userid ogg@target password oracle

GGSCI (win7) 11>Add checkpointtable ogg.ckpt

 

 6.目标库上创建 replicat

GGSCI>add replicat rep4, exttrail c:\ogg\dirdat\dl, checkpointtable ogg.ckpt

REPLICAT added.

replicat rep4

userid ogg@target, password oracle

reperror default abend

DDL INCLUDE ALL

assumetargetdefs

map sender.*, target receiver.*;

 

 第六开启ddl操作

以下操作在源端、目标端都要执行

安装DDL相关对象时,建议退出所有应用程序,并防止数据库有新的连接,否则可能导致操作失败。
安装支持DDL同步对象,可通过下述命令实现:
1.创建ogg单独表空间tbs_ogg(用于存放goldengate ddl对象)

C:\Users\Administrator>sqlplus sys/oracle@source as sysdba

SQL*Plus: Release11.2.0.1.0 Production on 星期日 4月 19 21:06:37 2015

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

连接到:

Oracle Database11gEnterprise Edition Release11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select default_tablespace from dba_users where username='OGG';

DEFAULT_TABLESPACE

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

USERS

SQL> create tablespace tbs_ogg datafile 'c:\oracle\sourcedata\tbs_ogg.dbf'size10mautoextend on nex

t10m;

表空间已创建。

SQL> alter user ogg default tablespace tbs_ogg;

用户已更改。

SQL> select default_tablespace from dba_users where username='OGG';

DEFAULT_TABLESPACE

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

TBS_OGG

SQL>

2. 赋予GoldenGate用户utl_file执行权限(最好断开所有数据库连接、停止监听)

SQL> conn sys/oracle@source as sysdba

已连接。

SQL> grant execute on utl_file to ogg;

授权成功。

SQL> conn sys/oracle@target as sysdba

已连接。

SQL> grant execute on utl_file to ogg;

授权成功。

SQL> conn sys/oracle@db3 as sysdba

已连接。

SQL> grant execute on utl_file to ogg;

授权成功。


3.c:\ogg\params.sql脚本设置

ddl_fire_error_in_trigger=‘TRUE’

allow_invisible_index_keys = 'TRUE'


4.创建GLOBALS参数

GGSCI (win7) 9>edit params GLOBALS

GGSCHEMA OGG

《依次执行以下脚本》

marker_setup.sql    

ddl_setup.sql   

role_setup.sql 

Grant the role to all GoldenGate Extract users    

ddl_enable.sql

install and use the optional performance tool

 

5.OGG之DDL复制配置时执行marker_setup.sql hang的问题

C:\Users\Administrator>cd c:\

 

c:\>cd c:\ogg  ---注意一定要先切换到脚本目录下在进入数据库@调用脚本,否则hang

c:\ogg>sqlplus sys/oracle@source as sysdba

SQL*Plus: Release11.2.0.1.0 Production on 星期日 4月 19 21:56:29 2015

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

连接到:

Oracle Database11gEnterprise Edition Release11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

 

SQL> @marker_setup

Marker setup script

You will be prompted for the name of a schema for the Oracle GoldenGate database objects.

NOTE: The schema must be created prior to running this script.

NOTE: Stop all DDL replication before starting this installation.

 

Enter Oracle GoldenGate schema name:ogg

 

 Marker setup table script complete, running verification script...

Please enter the name of a schema for the GoldenGate database objects:

Setting schema name to OGG

 

MARKER TABLE

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

OK

 

MARKER SEQUENCE

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

OK

 

Script complete.

SQL>

6.SQL> @ddl_setup   --以下是执行脚本ddl_setup情况开始


Oracle GoldenGate DDL Replication setup script


Verifying that current user has privileges to install DDL Replication...


You will be prompted for the name of a schema for the Oracle GoldenGate database objects.

NOTE: For an Oracle10gsource, the system recycle bin must be disabled. For Oracle11gand later, i

t can be enabled.

NOTE: The schema must be created prior to running this script.

NOTE: Stop all DDL replication before starting this installation.


Enter Oracle GoldenGate schema name:ogg


Working, please wait ...

Spooling to file ddl_setup_spool.txt


Checking for sessions that are holding locks on Oracle Golden Gate metadata tables ...


Check complete.

Using OGG as a Oracle GoldenGate schema name.


Working, please wait ...

DDL replication setup script complete, running verification script...

Please enter the name of a schema for the GoldenGate database objects:

Setting schema name to OGG

CLEAR_TRACE STATUS:


Line/pos             Error

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

No errors            No errors


CREATE_TRACE STATUS:


Line/pos             Error

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

No errors            No errors


TRACE_PUT_LINE STATUS:


Line/pos             Error

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

No errors            No errors


INITIAL_SETUP STATUS:


Line/pos             Error

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

No errors            No errors


DDLVERSIONSPECIFIC PACKAGE STATUS:


Line/pos             Error

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

No errors            No errors


DDLREPLICATION PACKAGE STATUS:


Line/pos             Error

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

No errors            No errors


DDLREPLICATION PACKAGE BODY STATUS:


Line/pos             Error

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

No errors            No errors


DDL IGNORE TABLE

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

OK


DDL IGNORE LOG TABLE

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

OK


DDLAUX  PACKAGE STATUS:


Line/pos             Error

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

No errors            No errors


DDLAUX PACKAGE BODY STATUS:


Line/pos             Error

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

No errors            No errors


SYS.DDLCTXINFO  PACKAGE STATUS:


Line/pos             Error

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

No errors            No errors


SYS.DDLCTXINFO  PACKAGE BODY STATUS:


Line/pos             Error

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

No errors            No errors


DDL HISTORY TABLE

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

OK


DDL HISTORY TABLE(1)

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

OK


DDL DUMP TABLES

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

OK


DDL DUMP COLUMNS

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

OK


DDL DUMP LOG GROUPS

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

OK


DDL DUMP PARTITIONS

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

OK


DDL DUMP PRIMARY KEYS

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

OK


DDL SEQUENCE

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

OK


GGS_TEMP_COLS

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

OK


GGS_TEMP_UK

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

OK


DDL TRIGGER CODE STATUS:


Line/pos             Error

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

No errors            No errors


DDL TRIGGER INSTALL STATUS

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

OK


DDL TRIGGER RUNNING STATUS

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

ENABLED


STAYMETADATA IN TRIGGER

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

OFF


DDL TRIGGER SQL TRACING

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

0


DDL TRIGGER TRACE LEVEL

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

0


LOCATION OF DDL TRACE FILE

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

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

c:\oracle\diag\rdbms\sourcedb\source\trace/ggs_ddl_trace.log


Analyzing installation status...



VERSION OF DDL REPLICATION

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

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

OGGCORE_12.1.2.1.0_PLATFORMS_140920.0203


STATUS OF DDL REPLICATION

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

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

SUCCESSFUL installation of DDL Replication software components


Script complete.

--以上是执行脚本ddl_setup情况结束


7.SQL> @role_setup  --以下是执行脚本role_setup情况开始


GGS Role setup script


This script will drop and recreate the role GGS_GGSUSER_ROLE

To use a different role name, quit this script and then edit the params.sql script to change the gg_

role parameter to the preferred name. (Do not run the script.)


You will be prompted for the name of a schema for the GoldenGate database objects.

NOTE: The schema must be created prior to running this script.

NOTE: Stop all DDL replication before starting this installation.


Enter GoldenGate schema name:ogg

已写入 file role_setup_set.txt


PL/SQL 过程已成功完成。



Role setup script complete


Grant this role to each user assigned to the Extract, GGSCI, and Manager processes, by using the fol

lowing SQL command:


GRANT GGS_GGSUSER_ROLE TO


where is the user assigned to the GoldenGate processes.

--以上是执行脚本role_setup情况结束


8.授予ogg角色ggs_ggsuser_role

SQL> grant ggs_ggsuser_role to ogg;

 

授权成功。

 

9.运行脚本 @ddl_enable.sql

SQL> @ddl_enable.sql

触发器已更改

     
10.将DDL相关对象pinshared pool

实施此操作需要调用dbms_shared_pool包,需要事先确认此包是否已安装。
确认dbms_shared_pool包是否已安装,通过下述命令实现:
desc dbms_shared_pool

将DDL对象pin到shared pool,通过下述命令实现:
@ddl_pin ogg

SQL> desc dbms_shared_pool

PROCEDURE ABORTED_REQUEST_THRESHOLD

参数名称                       类型                    输入/输出默认值?

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

THRESHOLD_SIZE                 NUMBER                  IN

PROCEDURE KEEP

参数名称                       类型                    输入/输出默认值?

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

NAME                           VARCHAR2                IN

FLAG                           CHAR                    IN     DEFAULT

PROCEDURE PURGE

参数名称                       类型                    输入/输出默认值?

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

NAME                           VARCHAR2                IN

FLAG                           CHAR                    IN     DEFAULT

HEAPS                          NUMBER                  IN     DEFAULT

PROCEDURE SIZES

参数名称                       类型                    输入/输出默认值?

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

MINSIZE                        NUMBER                  IN

PROCEDURE UNKEEP

参数名称                       类型                    输入/输出默认值?

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

NAME                           VARCHAR2                IN

FLAG                           CHAR                    IN     DEFAULT


SQL> @ddl_pin ogg


PL/SQL 过程已成功完成。



PL/SQL 过程已成功完成。



PL/SQL 过程已成功完成。



cmd-->

Microsoft Windows [版本 6.1.7601]

版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\Users\Administrator>cd c:\ogg

c:\ogg>ggsci

Oracle GoldenGate Command Interpreter for Oracle

Version12.1.2.1.0 OGGCORE_12.1.2.1.0_PLATFORMS_140920.0203

Windows x64 (optimized), Oracle11gon Sep 20 2014 07:17:50

Operating system character set identified as GBK.

Copyright (C) 1995, 2014, Oracle and/or its affiliates. All rights reserved.

GGSCI (win7) 1> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     STOPPED

EXTRACT     STOPPED     EXT1        00:00:00      176:44:48

EXTRACT     STOPPED     EXT2        00:00:00      172:11:22

EXTRACT     ABENDED     EXT3        00:00:00      171:23:16

REPLICAT    STOPPED     REP1        00:00:00      176:44:47

 

GGSCI (win7) 2> add extract ext4, tranlog, begin now

EXTRACT added.

 

GGSCI (win7) 3> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

 

MANAGER     STOPPED

EXTRACT     STOPPED     EXT1        00:00:00      176:45:45

EXTRACT     STOPPED     EXT2        00:00:00      172:12:19

EXTRACT     ABENDED     EXT3        00:00:00      171:24:13

EXTRACT     STOPPED     EXT4        00:00:00      00:00:04

REPLICAT    STOPPED     REP1        00:00:00      176:45:44

 

 GGSCI (win7) 5> add exttrail c:\ogg\dirdat\dl, extract ext4

EXTTRAIL added.

 

 GGSCI (win7) 6> edit params ext4

 

GGSCI (win7) 8> view params ext4

extract ext4

setenv(ORACLE_SID='SOURCE')

ddl include all

USERID OGG@SOURCE, password oracle

rmthost10.21.45.85, mgrport 7809

rmttrail c:\ogg\dirdat\dl

table sender.*;

 
     GGSCI (win7) 10> view params mgr

PORT 7809

 GGSCI (win7) 11> edit params GLOBALS

 GGSCI (win7) 12> add replicat rep4, exttrail c:\ogg\dirdat\dl, checkpointtable ogg.checkpoint

REPLICAT added.

 

GGSCI (win7) 13> info all

 Program     Status      Group       Lag at Chkpt  Time Since Chkpt

 MANAGER     STOPPED

EXTRACT     STOPPED     EXT1        00:00:00      177:11:30

EXTRACT     STOPPED     EXT2        00:00:00      172:38:04

EXTRACT     ABENDED     EXT3        00:00:00      171:49:57

EXTRACT     STOPPED     EXT4        00:00:00      00:25:49

REPLICAT    STOPPED     REP1        00:00:00      177:11:29

REPLICAT    STOPPED     REP2        00:00:00      00:00:04

 

GGSCI (win7) 14> edit params rep4

 

GGSCI (win7) 15> view params rep4

replicat rep2

userid ogg@target, password oracle

reperror default abend

assumetargetdefs

DDL INCLUDE MAPPED

DDLERROR DEFAULT IGNORE RETRYOP

map sender.*, target receiver.*;

 

GGSCI (win7) 16> start mgr

Manager started.

 

 GGSCI (win7) 17> start ext4

Sending START request to MANAGER ...

EXTRACT EXT4 starting

 

 GGSCI (win7) 18> info all

 

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

 MANAGER     RUNNING

EXTRACT     STOPPED     EXT1        00:00:00      177:20:08

EXTRACT     STOPPED     EXT2        00:00:00      172:46:42

EXTRACT     ABENDED     EXT3        00:00:00      171:58:36

EXTRACT     RUNNING     EXT4        00:34:27      00:00:00

REPLICAT    STOPPED     REP1        00:00:00      177:20:07

REPLICAT    STOPPED     REP2        00:00:00      00:08:42

 

 GGSCI (win7) 19> start rep2

 

Sending START request to MANAGER ...

REPLICAT REP2 starting

 

 GGSCI (win7) 20> info all

 Program     Status      Group       Lag at Chkpt  Time Since Chkpt

 MANAGER     RUNNING

EXTRACT     STOPPED     EXT1        00:00:00      177:20:29

EXTRACT     STOPPED     EXT2        00:00:00      172:47:03

EXTRACT     ABENDED     EXT3        00:00:00      171:58:56

EXTRACT     RUNNING     EXT4        00:00:00      00:00:10

REPLICAT    STOPPED     REP1        00:00:00      177:20:28

REPLICAT    RUNNING     REP2        00:00:00      00:00:02

 

Ok,成功!


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29267792/viewspace-1586435/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29267792/viewspace-1586435/

你可能感兴趣的:(关于ogg的dml和ddl测试)