POP系统数据库迁移实施方案纯方案12页.docx

上传人:b****3 文档编号:4000670 上传时间:2022-11-27 格式:DOCX 页数:13 大小:20.24KB
下载 相关 举报
POP系统数据库迁移实施方案纯方案12页.docx_第1页
第1页 / 共13页
POP系统数据库迁移实施方案纯方案12页.docx_第2页
第2页 / 共13页
POP系统数据库迁移实施方案纯方案12页.docx_第3页
第3页 / 共13页
POP系统数据库迁移实施方案纯方案12页.docx_第4页
第4页 / 共13页
POP系统数据库迁移实施方案纯方案12页.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

POP系统数据库迁移实施方案纯方案12页.docx

《POP系统数据库迁移实施方案纯方案12页.docx》由会员分享,可在线阅读,更多相关《POP系统数据库迁移实施方案纯方案12页.docx(13页珍藏版)》请在冰豆网上搜索。

POP系统数据库迁移实施方案纯方案12页.docx

POP系统数据库迁移实施方案纯方案12页

 

1配置GoldenGate

1.1系统环境

两个节点OracleRAC(源端)通过GoldenGate向两个节点OracleRAC(目标端)复制,环境如下:

源端

RAC版本10.2.0.4

两节点时钟尽量一致,建议配NTP。

目标端

RAC版本11.2.0.2

GoldenGate将分别在源端和目标端的节点1的一个文件系统中安装

检查OS版本和xLC版本(xLC推荐版本>=10.1)

源端

$oslevel-r

$lslpp-l|grep-ixlC

 

1.2GoldenGate配置步骤

1.2.1源端节点1,目标端节点1,以oracle用户将解压缩介质

$mkdir/back_rac/goldengate

$cpggs_AIX_ppc_ora10.2_64bit.zip/goldengate

$cd/back_rac/goldengate

$unzipggs_AIX_ppc_ora10.2_64bit.zip

$tar–xvfggs_AIX_ppc_ora10.2_64bit.tar

1.2.2源端节点1,目标端节点1,修改oracle用户.profile

exportLIBPATH=/goldengate:

$ORACLE_HOME/lib:

$LIBPATH

exportPATH=/goldengate:

$PATH

重新登录oracle用户。

1.2.3检查源端RAC节点数和字符集

SQL>showparametercluster_database

SQL>SELECT*FROMNLS_DATABASE_PARAMETERSWHEREPARAMETERIN('NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');

1.2.4检查源端归档参数

SQL>archiveloglist

源端两个节点都检查log_archive_format

SQL>showparameterLOG_ARCHIVE_FORMAT

1.2.5源端需要打开数据库最小附加日志

SQL>selectSUPPLEMENTAL_LOG_DATA_MINfromv$database;

SUPPLEMENTAL_LOG

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

NO

SQL>ALTERDATABASEADDSUPPLEMENTALLOGDATA;

SQL>ALTERSYSTEMSWITCHLOGFILE;

SQL>selectSUPPLEMENTAL_LOG_DATA_MINfromv$database;

SUPPLEMENTAL_LOG

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

YES

1.2.6源端创建GoldenGate连接用户

SQL>CREATEUSERgoldengate

IDENTIFIEDBYgoldengate

DEFAULTTABLESPACEUSERS

TEMPORARYTABLESPACETEMP

QUOTAUNLIMITEDONUSERS;

GRANTCONNECTTOgoldengate;

GRANTCREATESESSIONTOgoldengate;

GRANTALTERSESSIONTOgoldengate;

GRANTRESOURCETOgoldengate;

GRANTSELECTANYDICTIONARYTOgoldengate;

GRANTSELECTANYTABLETOgoldengate;

GRANTFLASHBACKANYTABLETOgoldengate;

GRANTALTERANYTABLETOgoldengate;

1.2.7检查目标端字符集

SQL>SELECT*FROMNLS_DATABASE_PARAMETERSWHEREPARAMETERIN('NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');

1.2.8目标端创建GoldenGate连接用户

SQL>CREATEUSERgoldengate

IDENTIFIEDBYgoldengate

DEFAULTTABLESPACEUSERS

TEMPORARYTABLESPACETEMP

QUOTAUNLIMITEDONUSERS;

GRANTALTERSESSIONTOgoldengate;

GRANTCREATESESSIONTOgoldengate;

GRANTCONNECTTOgoldengate;

GRANTRESOURCETOgoldengate;

GRANTSELECTANYDICTIONARYTOgoldengate;

GRANTSELECTANYTABLETOgoldengate;

GRANTFLASHBACKANYTABLETOgoldengate;

GRANTINSERTANYTABLETOgoldengate;

GRANTUPDATEANYTABLETOgoldengate;

GRANTDELETEANYTABLETOgoldengate;

1.2.9源端节点1,目标端节点1建系统目录和设置全局变量

$cd/goldengate

$ggsci

GGSCI>createSubDirs

GGSCI>EditParams./GLOBALS

GGSchemagoldengate

CheckpointTablegoldengate.checkpoint

GGSCI>exit

$ggsci

GGSCI>DbLoginUserIdgoldengate,Passwordgoldengate

GGSCI>AddCheckpointTable

1.2.10源端打开测试表附加日志

GGSCI>DbLoginUserIdgoldengate,Passwordgoldengate

GGSCI>AddTranDatauser_pro.*

GGSCI>AddTranDataorder_status.*

GGSCI>AddTranDatapopcard.*

GGSCI>AddTranDataconfig_center.*

GGSCI>AddTranDatapopmonitor.*

GGSCI>AddTranDatapopbi.*

GGSCI>AddTranDatapopfin.*

GGSCI>AddTranDatapoporder.*

GGSCI>AddTranDatapopware.*

GGSCI>AddTranDatapopdir.*

GGSCI>AddTranDatapopuser.*

1.2.11源端配置Manager进程

GGSCI>EditParamsmgr

Port7809

UserIdgoldengate,Passwordgoldengate

AutoRestartER*,WaitMinutes5,Retries3

LagInfoMinutes0

LagReportMinutes10

参数说明:

Port7809

监听端口

AutoRestartER*,WaitMinutes5,Retries3

遇到异常停止,自动重启复制进程

LagInfoMinutes0

LagReportMinutes10

在ggserr.log中记录延迟的时间间隔

1.2.12目标端配置Manager进程

GGSCI>EditParamsmgr

Port7809

UserIdgoldengate,Passwordgoldengate

CheckMinutes20

PurgeOldExtracts./dirdat/*,UseCheckpoints,MinKeepHours1

AutoRestartER*,WaitMinutes5,Retries3

LagInfoMinutes0

LagReportMinutes10

1.2.13源端配置TNSNAMES文件添加ASM连接串

ASM=

(DESCRIPTION=

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

(CONNECT_DATA=

(SERVER=DEDICATED)

(SERVICE_NAME=ASM)

(INSTANCE_NAME=+ASM1)

(UR=A)10g数据库需添加此行才能连上ASM实例

1.2.14源端配置DBLog抽取进程

GGSCI>EditParamsextA

ExtractextA

setenv(NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)

UserIdgoldengate,Passwordgoldengate

RmtHost172.17.8.242,MgrPort7809

RmtTrail./dirdat/rA

TRANLOGOPTIONSASMUSERsys@ASM,ASMPASSWORDwelcome1

TranLogOptionsExcludeUsergoldengate

TranLogOptionsAltArchiveLogDestPrimaryInstancepopdb1+backdatagroup,AltArchiveLogDestInstancepopdb2+backdatagroup

ThreadOptionsMaxCommitPropagationDelay10000IOLatency3000

sequenceuser_pro.*;

sequenceorder_status.*;

sequencepopcard.*;

sequencejdlottery.*;

sequencepopchongzhi.*;

sequenceairplane.*;

sequenceconfig_center.*;

sequencepopmonitor.*;

sequencepopbi.*;

sequencepopfin.*;

sequencepoporder.*;

sequencepopware.*;

sequencepopdir.*;

sequencepopuser.*;

tableuser_pro.*;

tableorder_status.*;

tablepopcard.*;

tablejdlottery.*;

tablepopchongzhi.*;

tableairplane.*;

tableconfig_center.*;

tablepopmonitor.*;

tablepopbi.*;

tablepopfin.*;

tablepoporder.*;

tablepopware.*;

tablepopdir.*;

tablepopuser.*;

SQL>selectSTART_TIMEfromgv$transaction;

当没有全局事务时

GGSCI>AddExtractextA,TranLog,BeginNow,Threads2(此处值根据RAC节点数决定)

GGSCI>AddRmtTrail./dirdat/rA,ExtractextA,MegaBytes20

参数说明:

UserIdgoldengate,Passwordgoldengate

登录源端数据库

CacheMgrCacheDirectory/goldengate/dirtmp51980MB,CacheDirectory/arch1/goldengate_tmp

缓存大事务的临时存储区

RmtHost172.17.8.242,MgrPort7809

目标端连接参数

RmtTrail./dirdat/rA

队列文件前缀

TranLogOptionsExcludeUsergoldengate

不复制用户goldengate

TranLogOptionsAltArchivedLogFormatInstanceNETDB1%t_%s_%r.dbf

TranLogOptionsAltArchivedLogFormatInstanceNETDB2%t_%s_%r.dbf

归档日志文件名格式

TranLogOptionsAltArchiveLogDestPrimaryInstanceNETDB1/arch1,AltArchiveLogDestInstanceNETDB2/arch2

归档路径

ThreadOptionsMaxCommitPropagationDelay10000IOLatency3000

允许RAC两个节点的时间差

SequenceBNYL.*;

复制序列

TableExcludeBNYL.SYS_EXPORT_SCHEMA*

TableExcludeBNYL.PLAN_TABLE

TableExcludeBNYL.BIN$*

复制排除的表

TableBNYL.*;

复制的表

1.2.15目标端配置Replicat投递进程

GGSCI>EditParamsrepA

ReplicatrepA

SetEnv(NLS_LANG="AMERICAN_AMERICA.ZHS16GBK")

UserIdgoldengate,Passwordgoldengate

DiscardFile./dirrpt/repA.dsc,Purge

AssumeTargetDefs

AllowNoOpUpdates

CheckSequenceValue

sequenceuser_pro.*,targetuser_pro.*

sequenceorder_status.*,targetorder_status.*

sequencepopcard.*,targetpopcard.*

sequencejdlottery.*,targetjdlottery.*

sequencepopchongzhi.*,targetpopchongzhi.*

sequenceairplane.*,targetairplane.*

sequenceconfig_center.*,targetconfig_center.*

sequencepopmonitor.*,targetpopmonitor.*

sequencepopbi.*,targetpopbi.*

sequencepopfin.*,targetpopfin.*

sequencepoporder.*,targetpoporder.*

sequencepopware.*,targetpopware.*

sequencepopdir.*,targetpopdir.*

sequencepopuser.*,targetpopuser.*

mapuser_pro.*,Targetuser_pro.*,InsertAppend;

maporder_status.*,Targetorder_status.*,InsertAppend;

mappopcard.*,Targetpopcard.*,InsertAppend;

mapjdlottery.*,Targetjdlottery.*,InsertAppend;

mappopchongzhi.*,Targetpopchongzhi.*,InsertAppend;

mapairplane.*,Targetairplane.*,InsertAppend;

mapconfig_center.*,Targetconfig_center.*,InsertAppend;

mappopmonitor.*,Targetpopmonitor.*,InsertAppend;

mappopbi.*,Targetpopbi.*,InsertAppend;

mappopfin.*,Targetpopfin.*,InsertAppend;

mappoporder.*,Targetpoporder.*,InsertAppend;

mappopware.*,Targetpopware.*,InsertAppend;

mappopdir.*,Targetpopdir.*,InsertAppend;

mappopuser.*,Targetpopuser.*,InsertAppend;

GGSCI>AddReplicatrepA,ExtTrail./dirdat/rA

参数说明

SetEnv(NLS_LANG="AMERICAN_AMERICA.ZHS16GBK")

设置环境变量,因为shell环境中缺NLS_LANG。

UserIdgoldengate,Passwordgoldengate

登录目标数据库的用户名、密码

AssumeTargetDefs

从目标端获取表结构

DiscardFile./dirrpt/repA.dsc,Purge

保存出错数据的文件

AllowNoOpUpdates

允许不修改任何数据的update

CheckSequenceValue

确保目标端Sequence和源端一致

SequenceBNYL.*,TargetBNYL.*

Sequence映射

MapExcludeBNYL.SYS_EXPORT_SCHEMA*

排除expdp生成的表

MapBNYL.*,TargetBNYL.*,InsertAppend;

表映射,插入时用Append方式。

1.2.16源端节点1,目标端节点1,配置sequence复制

cd/back_rac/goldengate

Sqlplus“/assysdba”

SQL>grantdbatogoldengate;

SQL>@sequence.sql

根据提示输入用户名goldengate

执行完毕后

GRANTEXECUTEongoldengate.updateSequenceTOgoldengate;

1.2.17目标端节点1,配置sequence复制

Sqlplus“/assysdba”

SQL>GRANTEXECUTEongoldengate.replicateSequenceTOgoldengate;

1.2.18源端目标端启动Manager进程、源端启动转发进程

源端

GGSCI>startmgr

目标端

GGSCI>startmgr

源端

GGSCI>startexta

exta初次启动需要近4分钟。

1.2.19记录SCN号

查询数据库中当前交易最早的开始时间,直到该时间超过OGG抽取启动时间点(保证所有事务都是在extract启动后开始的,否则可能前面部分抓取不到*)

查询和记录此时SCN号为最小所需SCN,rman等工具所能恢复到的scn必须在此之后

1.2.20源端系统变更汇总

●建立GoldenGate安装目录,目录可用空间为每天数据库归档日志量*2。

●更新oracle用户.profile的路径环境变量。

●所有被复制的表都必须是LOGGING,不能是NOLOGGING。

LOGGING表在大量数据加载时会生成大量归档日志。

●打开数据库最小附加日志。

打开附加日志后,归档生成速度会提高,提高的大小受update语句和表是否有主键影响。

根据以往经验,如果执行update的大部分表有主键,则归档日志生成速度提高5%左右,如果执行update的大部分表没有主键,则归档日志生成速度提高20%左右。

另外,建议保留最后3天归档日志。

所以变更后归档日志空间=目前每天归档日志量*110%*3天。

●源端数据库中创建goldengate连接用户。

2初始化数据

2.1将源库恢复至青龙服务器

2.1.1源库执行检查脚本

将11g$ORACLE_HOME/rdbms/admin下的utlu112i.sql脚本copy到10g的$ORACLE_HOME/rdbms/admin下,并在10g上执行。

若不执行,在恢复时将报错。

确认检查脚本执行正常。

@?

/rdbms/admin/utlu112i.sql

2.1.2使用rman对数据库进行全备份

Rmantarget/

Backupdatabaseformat‘/full%d%t.bak’includecurrentcontrolfileplusarchivelog;

2.1.3将备份以及所需归档传输到青龙服务器

2.1.4在青龙服务器编辑参数文件

删去与集群相关的参数

补充修改完毕后的参数文件

2.1.5恢复控制文件

RMAN>startupnomount;

RMAN>restorecontrolfilefrom'/backup/rman/2012/backup/*****';

2.1.6还原数据库

RMAN>alterdatabasemount;

RMAN>catalogstartwith‘/backup/rman/2012/backup’

RMAN>run{

setnewnamefordatafile'+DATA/xxx'to'/xxx';

restoredatabase;

switchdatafileall;

}

若有需要可补充实际的RMAN脚本

2.1.7恢复数据库

RMAN>run{

recoverdatabaseuntilscn=xxxxxxx;(此scn号为12号晚21点左右一个归档的lastscn,距离goldengate启动时间24小时以上)

;

}

2.1.8重建临时表空间

SQL>altertablespacetempfile‘xxxx’drop;

SQL>Altertablespacetempaddtempfile‘xxx’size1000M;(此步在2.1.10数据库open后执行)

2.1.9修改所有重做日志路径(两个线程都要修改)

SQL>alterdatabaserenamefile‘+DATA/xxx’to'/xxx/redo01_1.log';

SQL>alterdatabaserenamefile‘+DATA/xxx’to'/

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

当前位置:首页 > 工程科技 > 能源化工

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

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