Oracle GoldenGate安装(一)

对于源端是  oracle  的数据库,无论是什么操作系统、数据库  ,都必须满足最小附加日至、归档日志、强制日志开启才能安装部署  ogg  ,具体操作如下:

 

开启最小附加日志

SQL> select supplemental_log_data_min from v$database;

 

SUPPLEME

--------

NO                    

 

若不是YES  ,需要打开

打开语句:

SQL> alter database add supplemental log data;      

 

注:  supplemental log  可以指示数据库在日志中添加额外信息到日志流中  ,  开启后对于修改操作,  oracle  就会同时附加一些能够唯一标识修改记录的列到  redo log  中。

 

开启  归档

确认归档是否开启(以  11g RAC  为例):

[root@s1-11g ~]#   su - oracle

 [oracle@s1-11g ~]$ sqlplus "/ as   sysdba"

SQL*Plus: Release   11.2.0.4.0 Production on Wed Aug 5 10:56:20 2015

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

Connected to:

Oracle Database   11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the   Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and   Real Application Testing options

SQL> archive log list

Database log   mode              Archive Mode

Automatic archival             Enabled

Archive destination            +DATA

Oldest online log   sequence     82

Next log sequence   to archive   0

Current log   sequence           83

SQL>

 

以上说明归档已经开启,如果没有开启,请参照以下方法开启归档:

[root@s1-11g ~]#   su - oracle

[oracle@s1-11g   ~]$ sqlplus "/ as sysdba"

SQL> alter   system set log_archive_dest_1='location=+DKWHDATA/DKWHDB/ARCHIVELOG' scope   =both sid='*';

关闭双节点数据库:

SQL>shutdown   immediate;

在一节点将一号实例启动:

SQL>startup   mount;

SQL> alter   database archivelog ;

Database altered.

 

SQL> alter   database open;

Database altered

 

   将二号实例也启动:

SQL>startup;

检查归档是否开启  :

SQL> archive log list

Database log   mode              Archive Mode

Automatic archival             Enabled

Archive destination            +DKWHDATA/DKWHDB/ARCHIVELOG

Oldest online log   sequence     82

Next log sequence   to archive   0

Current log   sequence           83

 

 

打开force logging

SQL> select force_logging from v$database;

 

FOR

---

YES

如果状态为  YES  ,则已经打开,如果状态为  NO  ,则参考下面步骤

SQL> ALTER DATABASE FORCE LOGGING;

 

注:指定数据库为  Force Logging  模式后,数据库将会记录除临时表空间或临时回滚段外所有的操作,而忽略类似  NOLOGGING  之类的指定参数  ,  对数据库中的所有操作都产生日志信息写入到  redo log  中。

 

OGG classic  模式下(本文档均是按  ogg v11  版本的  classic  模式配置),需要排除压缩表、不支持的列、物化视图。

查询压缩表

SQL>

SQL>

 

查询不支持的列的表格

SQL>

 

查询物化视 

SQL>

 

查询nologging  的表

查看要复制的表的日志信息是完整的,确保是logging  。把nologing  变成logging 

SQL>

查询出的结果改成  logging  命令

SQL> alter table oggtest.test logging;

 

查看两边数据库字符集

SQL> select value from nls_database_parameters where parameter='NLS_CHARACTERSET';

VALUE

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

ZHS16GBK

 

 

源端创建管理用户

创建管理用户

SQL> create tablespace odc_tps datafile '+MCDATA/ora11g/odc01.dbf' size 100M autoextend on;

 

SQL> create user odc identified by odc default tablespace odc_tps;

 

授权, DBA  权限在安装成功后可以收回

GRANT CONNECT TO odc;

GRANT ALTER ANY TABLE TO odc;

GRANT ALTER SESSION TO odc;

GRANT CREATE SESSION TO odc;

GRANT FLASHBACK ANY TABLE TO odc;

GRANT SELECT ANY DICTIONARY TO odc;

GRANT SELECT ANY TABLE TO odc;

GRANT SELECT ANY TRANSACTION TO ODC;

GRANT RESOURCE TO odc;

GRANT DBA TO odc;

安装成功后可以收回  dba  权限,但是要授予  UNLIMITED TABLESPACE  权限:

GRANT UNLIMITED TABLESPACE TO odc;

或者  alter user odc quota unlimited on users;

 

 ddl_setup  时报错,通过授予以下权限解决。

grant create any table to odc;

grant create any view to odc;

grant create any procedure to odc;

grant create any sequence to odc;

grant create any index to odc;

grant create any trigger to odc;

grant create any view to odc;

 

配置library  环境变量

不同操作系统不同的环境变量配置:

HP-UX : SHLIB_PATH

AIX : LIBPATH

LINUX :   LD_LIBRARY_PATH

例如:

export LD_LIBRARY_PATH =$ORACLE_HOME/lib:$LD_LIBRARY_PATH

 

安装软件

1.  将对应操作系统数据库版本的介质拷贝到源端后,创建安装目录或文件系统,

例如 /odc

# su - oracle

$ mkdir /odc

 

注:在windows  上面安装前,需要确保安装必要的库文件,不然可能导致ogg  无法打开。

报错如下:

                                             

查阅官网文档:

Oracle GoldenGate for Oracle Installation and Setup Guide

The following are additional considerations in support of Oracle GoldenGate.

Before installing Oracle GoldenGate on a Windows system, install and configure the Microsoft Visual C ++ 2005 SP1 Redistributable Package.

Make certain it is the SP1 version of this package, and make certain to get the correct bit version for your server.

This package installs runtime components of Visual C++ Libraries.

根据相应的操作系统安装对应的库文件。

 

2.  解压软件安装包

$ cd /odc

$ tar xf ggs_LINUX_ppc_ora11g_64bit_v11_1_1_0_11_001.tar

 

注:如果是 windows  ,需要单独安装服务

运行cmd  cd  到安装软件目录下,执行:

C:\odc> install addservice

 

3.  创建子工作目录

解压并解包成功后在/odc  目录执行

$ ./ggsci

ggsci>

 

以上所创建的目录的作用:

Name

purpose


dirchk

Checkpoint files

用来存放检查点(checkpoint)  文件次检查点是ogg  自己的检查点与实例不同

dirdat

GoldenGate trails

用来存放TRAIL  文件

dirdef

Data definition files

用来存放通过DEFGEN  工具生成的源或目标端数据定义文件

dirprm

Parameter files

用来存放配置参数文件

dirpcs

Process status files

用来存放进程状态文件

dirrpt

Report files

用来存放进程报告文件

dirsql

SQL script files

用来存放SQL  脚本文件

dirtmp

Temporary files

当事物所需要的内存超过已分配内存时默认存储在这个目录

 

4.  创建管理进程

 

创建管理进程所需参数:

参数

阀值

定义

port

7809

mgr  进程使用的TCP/IP  端口侦听请求,默认端口为7809

DYNAMICPORTLIST

7800-7810

指定可用动态   TCP/IP  端口列表,用于源端与目标端进程通信的绑定,最大支持256  个端口

PURGEOLDEXTRACTS

./dirdat/sm*

定期清理抽取出的过期文件,可以被设置在Manager, Extract, and Replicat  参数文件中,oracle  建议设置在Manager 

USECHECKPOINTS


根据任何MINKEEP  规则,允许清除那些已经被Extract  Replicat  进程检测过的,保证数据不丢失。

MINKEEPHOURS

24

trail  文件的保留时间,超过这个时间则删除

autorestart

extract *

指定进程失败时自动重启

retries

10

指定尝试重新启动进程的次数(默认尝试次)

waitminutes

10

指定重新启动进程的等待时间,直到必要资源变得可用或一些其他的事件发生。默认的延迟时间为分钟。

 

具体设置如下:

ggsci>edit param mgr

输入:

DYNAMICPORTLIST 7800-7810

PURGEOLDEXTRACTS ./dirdat/sm*, USECHECKPOINTS, MINKEEPHOURS 24

autorestart extract * retries 10 waitminutes 10

autostart ER *

 

ggsci>

输入:

CHECKPOINTTABLE odc.ggs_checkpoint ---  保存退出

 

ggsci>start mgr

 

注:

OGG12c  以后的版本安装采用图形化界面,可忽略装在共享存储上的警告!


请使用浏览器的分享功能分享到微信等