GoldenGate12 for Oracle11g测试
### GoldenGate 12 for Oracle 11g 测试知识点详解 #### 一、环境准备与配置 **1. 用户配置文档编辑** - **命令行操作**:`[oracle@enmo ~]$ vi .bash_profile` - 这一步是通过`vi`编辑器来编辑用户的`.bash_profile`文件,目的是为了配置Oracle GoldenGate相关的环境变量。 **2. 创建GoldenGate安装目录** - **命令行操作**:`[oracle@enmo u01]$ mkdir ogg12` - 此步骤是创建一个名为`ogg12`的目录用于安装GoldenGate软件。`u01`通常代表的是一个挂载点,用于存储大型应用或数据,以避免占用根目录的空间。 **3. 安装软件** - **命令行操作**:`./runInstaller` - 使用`runInstaller`脚本来安装GoldenGate。这是一个典型的Oracle产品安装过程,可能涉及到多个步骤,包括许可协议接受、安装路径选择等。 **4. GGSCI 配置** - **简介**:GGSCI (GoldenGate Shell Command Interpreter) 是GoldenGate提供的命令行工具,用于管理GoldenGate环境。 - **操作**: - 创建用户空间,分配用户权限 - 例如:`create user space USER_SPACE_1 directory '/u01/oracle/gg/USER_SPACE_1'` - 开启辅助日志 - 例如:`ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;` - 配置Manager服务端口 - 例如:`manager start port=7809` #### 二、GoldenGate 数据捕获与复制 **1. 源端配置** - **Extract 进程配置** - `EXTRACT`进程负责捕捉源数据库的事务变化。 - 配置示例: ```plaintext EXTRACT ext1, BEGIN AT TIMESTAMPTO_DATE('20230501000000', 'YYYYMMDDHH24MISS'), SQL*PLUS "LOGMNR(DBA, 'LOGMNR_SCHEMA')", TRANDATA, WHEN COMMITTED; ``` - 注释:`sourceIsTable` 表示直接从源表捕获数据并传输到目标表。 - 在11g R2及以上版本中,需要设置`enable_goldengate_replication`参数为`true`以支持GoldenGate复制功能。 **2. 目标端配置** - **Replicat 进程配置** - `REPLICAT`进程负责将捕获的数据应用于目标数据库。 - 配置示例: ```plaintext REPLICAT rpl1, SOURCEFILE ('/u01/oracle/gg/USER_SPACE_1'), TTR, ASSUMETARGETDEFS, DISCARDFILE '/u01/oracle/gg/discard.rin', WHEN UNTIL COMMITTED; ``` - 注释:`ASSUMETARGETDEFS` 假设源端和目标端表结构完全一致,如果不同则使用`sourcedefs`和`targetdefs`。 **3. 实时数据复制配置** - **Pump 进程配置** - `PUMP`进程负责将本地捕获的文件复制到远程目标端。 - 示例:`PUMP pump1, SOURCEFILE ('/u01/oracle/gg/USER_SPACE_1'), REMOTEHOST ('target_host'), REMOTEPORT (7809);` - **EINIPP 参数配置** - `EINIPP` 参数用于指定在数据复制过程中是否检查表定义的一致性。 - 示例:`EINIPP PASSTHRU` 表示不检查表定义一致性,适用于表结构相同的场景。 **4. 其他配置** - **Handle Collisions 设置** - 该设置允许`REPLICAT`进程在遇到数据完整性问题时继续处理数据。 - 示例:`HANDLECOLLISIONS INSERT UPDATE DELETE` #### 三、验证与维护 **1. 数据验证** - **源端插入数据,目标端查看** - 插入数据到源端数据库后,在目标端数据库中查看是否正确复制了数据。 - 示例:`SELECT * FROM test_table;` **2. DDL 同步** - **DDL 同步配置** - 配置用户权限和全局参数,确保DDL语句也能被正确复制。 - 示例:`ALTER SESSION SET CURRENT_SCHEMA = gguser;` - 执行安装脚本: ```plaintext @marker_setup.sql @ddl_setup.sql @role_setup.sql @ddl_enable.sql ``` - 修改相关参数文件,重新启动`EXTRACT`和`REPLICAT`进程。 #### 四、总结 本文详细介绍了如何使用GoldenGate 12 for Oracle 11g进行数据捕获、复制以及验证的过程。从环境配置到数据复制的具体操作,再到DDL同步的实现,每一个环节都至关重要。通过这些步骤,我们可以实现实时的数据复制和同步,这对于提高数据可用性和构建高可用架构具有重要意义。
剩余22页未读,继续阅读
- 粉丝: 5
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助