Linux安装和配置ogg单向数据复制支持DDL.docx

上传人:b****4 文档编号:12096817 上传时间:2023-04-17 格式:DOCX 页数:23 大小:87.02KB
下载 相关 举报
Linux安装和配置ogg单向数据复制支持DDL.docx_第1页
第1页 / 共23页
Linux安装和配置ogg单向数据复制支持DDL.docx_第2页
第2页 / 共23页
Linux安装和配置ogg单向数据复制支持DDL.docx_第3页
第3页 / 共23页
Linux安装和配置ogg单向数据复制支持DDL.docx_第4页
第4页 / 共23页
Linux安装和配置ogg单向数据复制支持DDL.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

Linux安装和配置ogg单向数据复制支持DDL.docx

《Linux安装和配置ogg单向数据复制支持DDL.docx》由会员分享,可在线阅读,更多相关《Linux安装和配置ogg单向数据复制支持DDL.docx(23页珍藏版)》请在冰豆网上搜索。

Linux安装和配置ogg单向数据复制支持DDL.docx

Linux安装和配置ogg单向数据复制支持DDL

本实验环境:

源端redhat5.4Oracle10.2.0.4目标端redhat6.3Oracle11.2.0.3

一、软件安装

1.配置环境

以Oracle用户登录,设置环境变量

修改.bash_profile,增加如下内容:

exportLD_LIBRARY_PATH=/goldengate:

$ORACLE_HOME/lib:

$LD_LIBRARY_PATH

保存退出

/goldengate为ogg安装目录

运行source~/.bash_profile使环境变量生效

以root用户在根目录下创建goldengate目录,此目录名可自定义:

mkdir/goldengate

chownoracle:

oinstall–R/goldengate

2.上传并解压安装文件

不同的操作系统平台和oracle版本需要使用不同版本的ogg软件。

使用oracle用户通过ftp上传ogg软件并解压缩至/goldengate安装目录

tarzxvf*.gz或者gunzip*.gz或者tarxvf*.tar或者unzip*.zip

3.创建子目录

在/goldengate,ogg安装目录下运行GGS命令行控制界面:

cd/goldengate

./ggsci

在GGS命令行界面下创建子目录:

createsubdirs

以上步骤在源端和目标端都要进行操作。

如果ggsci无启动,说明环境就是没有配置好或对应的版本不对。

二、源端配置

1.数据库开启归档

确认数据库是否处于归档模式:

Selectlog_modefromv$database;

如果不是,开启归档模式:

指定归档目录altersystemsetlog_archive_dest_1="location=+ASM_DATA"scope=both;

shutdownimmediate;

startupmount;

alterdatabasearchivelog;

alterdatabaseopen;

2.开启数据库的附加日志

通过以下sql语句检查数据库附加日志的打开状况:

SelectSUPPLEMENTAL_LOG_DATA_MINfromv$database;

返回值yes为打开。

如果没有开启,请执行如下命令打开

alterdatabaseaddsupplementallogdata;

altersystemswitchlogfile;

3.开启数据库强制日志模式

通过以下sql语句检查数据库是否开启强制日志模式:

Selectforce_loggingfromv$database;

返回值yes为打开。

如果没有开启,请执行如下命令打开

alterdatabaseforcelogging;

4.配置管理进程

在/goldengate目录下运行GGS命令行控制界面:

cd/goldengate

./ggsci

确认参数文件中的端口没有被占用

netstat–a|grep7809

编辑参数,在ggsci下执行

editparamsmgr

PORT7809

AUTOSTARTER*

AUTORESTARTEXTRACT*,RETRIES100,WAITMINUTES2

PURGEOLDEXTRACTS./dirdat/*,USECHECKPOINTS,MINKEEPDAYS3

LAGREPORTHOURS1

LAGINFOMINUTES30

LAGCRITICALMINUTES45

SYSLOGERROR,WARN

各参数解释

5.新建goldengate用户、表空间及赋予权限

SQL>createtablespacetbs_oggdatafile'/u01/app/oracle/oradata/mydb/tbs_ogg.dbf'size100Mautoextendon;

Tablespacecreated.

SQL>createusergoldengateidentifiedbygoldengatedefaulttablespacetbs_ogg;

Usercreated.

SQL>grantdba,connect,resourcetogoldengate;

Grantsucceeded.

6.增加同步表的附加日志

本实验使用ogg同步SCOTT用户下的所有表

如果SCOTT用户被锁定使用以下命令解锁

alteruserscottaccountunlock;

alteruserscottidentifiedby"123456";

SCOTT用户下有四张表

SQL>selecttable_namefromuser_tables;

TABLE_NAME

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

DEPT

EMP

BONUS

SALGRADE

GGSCI(rhel5)1>dbloginuseridgoldengatepasswordgoldengate

Successfullyloggedintodatabase.

删除原有同步表的附加日志,如果以后配置过ogg的执行

GGSCI(rhel5)2>deletetrandatascott.*

LoggingofsupplementalredologdataisalreadydisabledfortableSCOTT.BONUS.

LoggingofsupplementalredologdataisalreadydisabledfortableSCOTT.DEPT.

LoggingofsupplementalredologdataisalreadydisabledfortableSCOTT.EMP.

LoggingofsupplementalredologdataisalreadydisabledfortableSCOTT.SALGRADE.

增加同步表的附加日志

GGSCI(rhel5)3>addtrandatascott.*

2016-06-1911:

49:

35WARNINGOGG-00869NouniquekeyisdefinedfortableBONUS.Allviablecolumnswillbeusedtorepresentthekey,butmaynotguaranteeuniqueness.KEYCOLSmaybeusedtodefinethekey.

LoggingofsupplementalredodataenabledfortableSCOTT.BONUS.

LoggingofsupplementalredodataenabledfortableSCOTT.DEPT.

LoggingofsupplementalredodataenabledfortableSCOTT.EMP.

2016-06-1911:

49:

35WARNINGOGG-00869NouniquekeyisdefinedfortableSALGRADE.Allviablecolumnswillbeusedtorepresentthekey,butmaynotguaranteeuniqueness.KEYCOLSmaybeusedtodefinethekey.

LoggingofsupplementalredodataenabledfortableSCOTT.SALGRADE.

WARNINGOGG-00869NouniquekeyisdefinedfortableBONUS.Allviablecolumnswillbeusedtorepresentthekey,butmaynotguaranteeuniqueness.KEYCOLSmaybeusedtodefinethekey.

可以使用在参数文件中加入KEYCOLS手动指定主键,语法为tabletable_name,KEYCOLS(col_name[,col_name,…]);也可以为表添加主键本实验不做添加,没有主键可能会使ogg会造成数据不同步。

7.抽取进程配置文件

增加配置文件exttab.prm,加入如下内容后保存,也可以在本地创建exttab.prm然后加入内容后通过FTP工具上传到OGG安装目录的dirprm目录下,注意根据实际情况标红部分:

GGSCI>editparamsexttab

exttab.prm内容

EXTRACTEXTTAB

DYNAMICRESOLUTION

SETENV(NLS_LANG="AMERICAN_AMERICA.ZHS16GBK")

SETENV(ORACLE_HOME="/u01/app/oracle/product/10.2.0/db1")

SETENV(ORACLE_SID="mydb")

USERIDgoldengate,PASSWORDgoldengate

DISCARDFILE./dirrpt/exttab.dsc,APPEND,MEGABYTES1024

TRANLOGOPTIONSASMUSERSYS@ASM,ASMPASSWORD123456--访问ASM读取日志

EXTTRAIL./dirdat/tl

tablescott.*

各参数解释:

如果主机上存在多个数据库实例,需要设置:

Setenv(ORACLE_SID=sid_name)

NLS_LANG需要设置和数据库语言环境一至

(select*fromnls_database_parameters查询当前数据库字符集)

(如果需要排除某些表,可以添加TABLEEXCLUDETEST.TEST1,必须添加在TABLETEST.*前面)

如果RedoLog存储在ASM中,设置CatpureASM连接方式如下:

Oracle10.2.0.5或11.2.0.2之前版本:

TRANLOGOPTIONSASMUSERsys@asminst,asmpasswordoracle

直接访问ASM的方式需要配置ASM的监听,在tnsname.ora目录下添加

ASM=

(DESCRIPTION=

(ADDRESS_LIST=

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

(CONNECT_DATA=

(SERVICE_NAME=+ASM)

(INSTANCE_NAME=+ASM)

(SERVER=DEDICATED)

(UR=A)

Oracle10.2.0.5、11.2.0.2或之以后版本,GoldenGate为11g或以后版本:

TRANLOGOPTIONSDBLOGREADER

如果在AIX或HPUX平台数据库的redolog使用的是RAW,则可能需要设置参数:

TRANLOGOPTIONSRAWDEVICEOFFSET,设置此参数:

TRANLOGOPTIONSRAWDEVICEOFFSET0

--仅限于AIX平台下使用裸设备时使用,其它平台或非裸设备均不需要

--需要在Aix操作系统中去查有没有偏移量,如果有偏移量的话,该参数不需要进行设置,goldengate的默认就可以了;

--如果没有偏移量,则需要设置为0;

8.传输进程配置文件

增加给目标库传输进程配置文件dp_tab.prm,加入如下内容后保存,也可以在本地创建dp_tab.prm然后加入内容后通过FTP工具上传到OGG安装目录的dirprm目录下,注意根据实际情况替换标红部分:

GGSCI>editparamsdp_tab

dp_tab.prm内容:

EXTRACTDP_TAB

PASSTHRU

RMTHOST192.168.56.201,mgrport7809,compress

RMTTRAIL./dirdat/tl

tablescott.*;

9.配置OGG抽取进程和传输进程

增加抽取进程,只有源端数据库为RAC情况才需要“,threadsn”

GGSCI>addextractexttab,tranlog,beginnow[,threadsn]

建立抽取进程和队列文件关联关系

GGSCI>addexttrail./dirdat/tl,extractexttab,megabytes200

增加传输进程组

GGSCI>addextractdp_tab,exttrailsource./dirdat/tl

建立传输进程和目标端队列文件关联关系

GGSCI>addrmttrail./dirdat/tl,extractdp_tab,megabytes200

启动抽取进程和传输进程

GGSCI>startexttab

GGSCI>startdp_tab

GGSCI>infoall

注:

启动抽取进程和传输进程前需要启动管理进程

三、目标端操作

1.创建goldengate用户、表空间及赋予权限

SQL>createtablespacetab_oggdatafile'/u01/app/oracle/oradata/mydb/tab_ogg.dbf'size100Mautoextendon;

Tablespacecreated.

SQL>createusergoldengateidentifiedbygoldengatedefaulttablespacetab_ogg;

Usercreated.

SQL>grantdba,connect,resourcetogoldengate;

Grantsucceeded.

本实验要把数据同步到一个ogg用户下,需要先创建该用户,本步非必需。

SQL>createuseroggidentifiedby123456defaulttablespaceusers;

Usercreated.

SQL>grantresource,connect,dbatoogg;

Grantsucceeded.

2.GLOBALS配置

在/goldengate,ogg安装目录下运行GGS命令行控制界面:

cd/goldengate

./ggsci

在ggsci下执行

editparams./GLOBALS

CHECKPOINTTABLEgoldengate.checkpoint;

退出ggsci

3.创建checkpoint表

在/goldengate,ogg安装目录下运行GGS命令行控制界面:

cd/goldengate

./ggsci

在ggsci下执行

dbloginuseridgoldengate,passwordgoldengate

addcheckpointtable

4.配置管理进程

在/goldengate,ogg安装目录下运行GGS命令行控制界面:

cd/goldengate

./ggsci

确认参数文件中的端口没有被占用

netstat–a|grep7809

编辑参数,在ggsci下执行

editparamsmgr

PORT7809

AUTOSTARTER*

AUTORESTARTEXTRACT*,RETRIES5,WAITMINUTES3

PURGEOLDEXTRACTS./dirdat/*,usecheckpoints,minkeepdays3

LAGREPORTHOURS1

LAGINFOMINUTES30

LAGCRITICALMINUTES45

5.启动管理进程

startmgr

到/goldengate/dirdat目录下查看有没有队列文件tl*传过来

6.复制进程配置文件

增加到目标库复制进程的配置文件reptab.prm,加入如下内容后保存,也可以在本地创建reptab.prm然后加入内容后通过FTP工具上传到OGG安装目录的dirprm目录下,注意根据实际情况替换标红部分:

GGSCI>editparamsreptab

reptab.prm内容(其中环境变量NLS_LANG与源端保持一致):

replicatreptab

SETENV(NLS_LANG="AMERICAN_AMERICA.ZHS16GBK")

SETENV(ORACLE_SID="mydb")

useridgoldengate,passwordgoldengate

reperrordefault,discard

discardfile/goldengate/dirrpt/reptab.dsc,append,megabytes1024

dynamicresolution

ASSUMETARGETDEFS

mapscott.*,targetogg.*;

IntheReplicatparamPleasetryASSUMETARGETDEFS,ifsourceandtargethavesametablestructure..

ifboththestructuresaredifferent,generatethesourcedefinitionanduseSOURCEDEFSinReplicateParam.

7.配置OGG复制进程

./ggsci

增加到目标库的复制进程

GGSCI>addreplicatreptab,exttrail./dirdat/mo,checkpointtableogg.checkpoint

配完后暂时不要启动进程

四、数据初始化

OGG进程正式运行前必须确保源端和目标端的数据是一致的,所以必须进行数据初始化。

以下数据初始化采用数据泵的方式执行,在数据初始化前,必须确保源端抽取进程为运行状态,目标端复制进程为停止状态(源端传输进程无要求)。

1.源端导出数据

以下命令注意根据实际情况替换标红部分:

使用oracle用户登录源端系统,进入OGG安装目录/goldengate下,创建导出数据文件目录,如:

expdp_data,

$mkdirexpdp_data

$sqlplus/nolog

SQL>conn/assysdba

SQL>select*fromdba_directories;

创建数据导出目录和赋权

SQL>createdirectoryogg_dump_diras'/goldengate/expdp_data';

SQL>grantread,writeondirectoryogg_dump_dirtoscott;

查询当前数据库的SCN号,并记录下来,下一步要用到

SQL>selectcurrent_scnfromv$database;

CURRENT_SCN

-----------

631836

SQL>exit

导出数据文件

expdpscott/tigerdirectory=ogg_dump_dirdumpfile=scott_20151230.dmptables=EMP,DEPT,BONUS,SALGRADElogfile=scott.logflashback_scn=631836

如果tables参数过长,也可以使用parfile=scott_tab.par

scott_tab.par文件内容如下

tables=EMP,DEPT,BONUS,SALGRADE

将生成的DMP文件复制到目标端的/goldengate/impdp_data(如果不存在,需先创建此目录)目录下,也可通过FTP工具先下载到本地再上传到目标端相应目录

scpscott_20151230.dmporacle@192.168.56.201:

/goldengate/impdp_data

2.目标端导入数据

以下命令注意根据实际情况替换标红部分:

使用oracle用户登录目标端系统,进入OGG安装目录下,创建导入数据文件目录,如:

/impdp_data,

[oracle@jlptgwdbgoldengate]$mkdirimpdp_data

[oracle@jlptgwdbgoldengate]$sqlplus/nolog

SQL>conn/assysdba

创建数据导入目录和赋权

SQL>select*fromdba_directories;

SQL>createdirectoryogg_dump_diras'/goldengate/impdp_data';

SQL>grantread,writeondirectoryogg_dump_dirtoogg;

如果导出数据使用的用户名和表空间与目标端不同,请在导入impdp命令中加入REMAP_SCHEMA参数和REMAP_TABLESPACE参数

$impdpogg/123456directory=ogg_dump_dirdumpfile=scott_20151230.dmplogfile=table.logtable_exists_action=replaceremap_schema=scott:

oggremap_tablespace=users:

tbs1

3.启动复制进程

./ggsci

此处SCN号为导出数据时查询的SCN号

GGSCI>startreptab,aftercsn631836

ogg配置完成,可以进行测试

五、添加DDL复制支持

1.源端配置

进入goldengate安装目录,以sysdba角色进入sqlplus

[oracle@primarygoldengate]$sqlplus/assysdba

关闭数据库回收站(11G以后可以不用关)

SQL>altersystemsetrecyclebin=offscope=both;

清空回收站

SQL>purgerecyclebin

运行goldengateDDL支持配置脚本,顺序必须一致

SQL>@marker_setup.sql

SQL>@ddl_setup.sql

SQL>@role_setup.sql

SQL>@marker_setup.sql

Markersetupscript

YouwillbepromptedforthenameofaschemafortheGoldenGatedatab

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1