您的位置:首页 > 运维架构 > Linux

Linux安装使用GoldenGate

2014-04-23 11:19 357 查看
如何安装使用goldengate

一.环境:

OS:linux CentOS_Final_5.5(64bit)

DB:oracle11gR2(单机模式)

goldengate: ggs_Linux_x64_ora11g_64bit_v11_1_1_0_0_078.tar

网络:局域网,源端IP 192.168.128.100 镜像端IP 192.168.128.101

二.目标:

实现源端到镜像端的数据同步(单向)

三.源端数据库实施:

1数据库准备

1.1开启数据库归档日志

查看数据库当前日志模式archive log list;更改为归档模式shutdown immediate;start mount;alter database archivelog;alter database open;

开启第二归档路径(可选)alter system set log_archive_dest_2=’location=/archive_2OPTIONAL’ scope=spfile;alter system archive log start tolog_archive_dest_2;查看第二归档日志是否生效(重启数据库)show parameter archive;

1.2开启supplemental logging和force logging

查看当前数据库是否开启supplementalloggingselect SUPPLEMENTAL_LOG_DATA_MIN fromv$database;开启数据库级别的最小supplementalloggingalter database add supplemental log data;
查看当前数据库forcelogging的状态select force_logging from v$database;开启forceloggingalter database force logging;

1.3创建goldengate管理用户,并赋予相关权限

创建管理用户的表空间create tablespace tbs_ggmgr datafiel ‘/u01/app/oracle/goldengate/ggmgr.dbf’size 50M autoextend on;创建goldengate管理用户create user ggmgr identified by oracledefault tablespace tbs_ggmgr temporary tablespace TEMP quota unlimited ontbs_ggmgr;赋予ggmgr相关权限(想简单的话,可以赋予DBA权限)grant CONNECT,RESOURCE to ggmgr;grant CREATE SESSION,ALTER SESSION toggmgr;grant SELECT ANY DICTIONARY,SELECT ANYTABLE to ggmgr;grant CREATE TABLE,ALTER ANY TABLE to ggmgr;

1.4创建测试用户和表

create user test identified by test;conn test/test;create table test(stuid number(8),stuname varchar2(20),stupasswd varchar2(20));insert into test values(1,’test1’,’test1);insert into test values(2,’test2’,’test2’);commit;

2goldengate安装及参数设置

2.1设置goldengate运行所需的环境变量

编辑oracle的home目录下.bash_profile文件vi .bash_profile添加如下内容exportLD_LIBRARY_PATH=$ORACLE_BASE/goldengate:$ORACLE_HOME/lib

2.2创建goldengate安装目录

通常将goldengate安装在ORACLE_BASE目录下mkdir –p /u01/app/oracle/goldengate/

2.3解压并初始化goldengate

将goldengate压缩文件解压到goldengate得安装目录tar vxf ggs_Linux_x64_ora11g_64bit_v11_1_1_0_0_078.tar执行./ggsci进入GGSCI创建目录结构create subdirs --只在第一次启动执行

2.4 添加trandata

在GGSCI中dbloign userid ggmgr,password oracle对要进行复制的表添加表级supplemental loggingadd trandata test.*查看info trandata test.*

2.5添加并配置mgr进程

edit param mgr添加如下内容port 7809purgeoldextracts ./dirdat/*,usecheckpoints, minkeepfiles 20

2.6添加并配置extract进程

添加一个extract进程add extract exts100,tranlog,begin now给extract进程指定trail文件add exttrail ./dirdat/s1,extract exts100,megabytes 100配置extract的参数edit param exts100添加如下内容(开启第二归档的情况下)extract exts100userid ggmgr,password oracletranlogoptions archivedlogonlytranlogoptions altarchivelogdest instanceorcl /archive_2tranlogoptions altarchivedlogformat%t_%s_%r.dbfgettruncatesreportcount every 30 minutes,ratediscardfile./dirrpt/exts100.dsc,APPEND,MEGABYTES 100exttail ./dirdat/s1table TEST.TEST;

2.7添加并配置pump进程

add extract dps100 exttrailsource./dirdat/s1add rmttrail ./dirdat/t1,extract dps100配置pump进程参数edit param dps100extract dps100userid ggmgr,password oraclermthost 192.168.128.101,mgrport7809,compressnumfiles 5000DYNAMICRESOLUTIONrmttrail ./dirdat/t1table TEST.TEST;

2.8检查进程是否能够成功启动

start <进程名>start mgrstart exts100start dps100
查看进程状态info all

四.镜像端数据库的初始化

1.从源端数据库导出相关的数据和表结构(需要相关权限,可以使用有DBA权限的用户)

exp username/password file=test_1203013.dmpowner=test triggers=n indexes=n log=test_120313.log;

2.将导出的数据文件传到镜像端

可以使用ftp

3.在镜像端创建和源端对应的用户和表空间,要保持表空间的名字一致

create user test identified by test;

4.在镜像端导入数据文件(需要相关权限,可以使用有DBA权限的用户)

imp username/password file=test_120313.dmpfromuser=test touser=test log=test_120313.log;
查看数据是否导入成功

五.镜像端数据库实施

1数据库准备

创建管理用户的表空间create tablespace tbs_ggmgr datafiel ‘/u01/app/oracle/goldengate/ggmgr.dbf’size 50M autoextend on;创建goldengate管理用户create user ggmgr identified by oracledefault tablespace tbs_ggmgr temporary tablespace TEMP quota unlimited ontbs_ggmgr;赋予ggmgr相关权限(想简单的话,可以赋予DBA权限)grant CONNECT,RESOURCE to ggmgr;grant CREATE SESSION,ALTER SESSION toggmgr;grant SELECT ANY DICTIONARY,SELECT ANYTABLE to ggmgr;grant CREATE TABLE to ggmgr;

2goldengate安装及参数设置

2.1.设置goldengate运行所需的环境变量

编辑oracle的home目录下.bash_profile文件vi .bash_profile添加如下内容exportLD_LIBRARY_PATH=$ORACLE_BASE/goldengate:$ORACLE_HOME/lib

2.2.创建goldengate安装目录

通常将goldengate安装在ORACLE_BASE目录下mkdir –p /u01/app/oracle/goldengate/

2.3.解压并初始化goldengate

将goldengate压缩文件解压到goldengate得安装目录tar vxf ggs_Linux_x64_ora11g_64bit_v11_1_1_0_0_078.tar执行./ggsci进入GGSCI创建目录结构create subdirs --只在第一次启动执行

2.4编辑全局参数文件

dblogin userid ggmgr,password oracleedit params ./GLOBALS添加如下内容checkpointtable ggmgr.ogg_checkpointtable添加检查点表add checkpointtableggmgr.ogg_checkpointtable

2.5.添加并配置mgr进程

edit param mgr添加如下内容port 7809(这里没有加入清除trail文件的设置)

2.6.添加并配置replicat进程

add replicat rept101,exttrail ./dirdat/t1编辑replicat进程的参数文件edit param rept101添加如下内容replicat rept101userid ggmgr,password oracleASSUMETARGETDEFSDISCARDFILE ./dirrpt/rept101.dsc,PURGEMAP TEST.TEST, TARGET TEST.TEST;

2.7检查进程能否成功启动

start <进程名>start mgrstart rept101
查看进程状态info all

六.测试

1.在源端数据库插入数据

insert into test values(3,’test3,’test3’);commit;

2.生成归档日志

alter system switch logfile;

3.查看镜像端数据库

select * from test;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 数据库 database