您好,欢迎访问三七文档
InsertPictureHereInsertPictureHereOGG104学习笔记主要内容•OGG安装•OGG的技术特点•Extract的配置•Replicat的配置•简单配置案例版本V1.0OGG的主要技术特点(1)•一个GoldenGate实例就是一个管理进程(Managerprocess),这个管理进程也是整个GoldenGate实例运行时最主要的控制进程OGG的主要技术特点(2)•Extract从数据库的事务日志中采集变化的已提交数据,通过或者不通过datapump到目标主机,目标主机上有serverCollector和Replicat,Replicat读trail文件,使用nativeSQL到目标数据库•Extract从数据库采集数据、传输trail文件到replicat,replicat读trail文件到数据库,每个过程都有checkpoint用于故障恢复•OGG属于逻辑备份,与oracle的dataguard有些不同,dataguard支持物理备份恢复和逻辑备份恢复OGG架构•OGG主要由如下一些组件组成:Extract、Datapump、Replicat、Trailsorextractfiles、Checkpoints、Manager、CollectorOGGCheckpoint(1)7CaptureCommitOrderedSourceTrailSourceDatabaseBegin,TX1Insert,TX1Begin,TX2Update,TX1Insert,TX2Commit,TX2Begin,TX3Insert,TX3Begin,TX4Commit,TX3Delete,TX4Begin,TX2Insert,TX2Commit,TX2Begin,TX3Insert,TX3Commit,TX3StartofOldestOpen(Uncommitted)TransactionCurrentReadPositionCaptureCheckpointCurrentWritePosition8CapturePumpCommitOrderedSourceTrailCommitOrderedTargetTrailSourceDatabaseBegin,TX1Insert,TX1Begin,TX2Update,TX1Insert,TX2Commit,TX2Begin,TX3Insert,TX3Begin,TX4Commit,TX3Delete,TX4Begin,TX2Insert,TX2Commit,TX2Begin,TX3Insert,TX3Commit,TX3Begin,TX2Insert,TX2Commit,TX2StartofOldestOpen(Uncommitted)TransactionCurrentReadPositionCaptureCheckpointCurrentWritePositionCurrentReadPositionPumpCheckpointCurrentWritePositionOGGCheckpoint(2)9CaptureDeliveryPumpCommitOrderedSourceTrailCommitOrderedTargetTrailSourceDatabaseTargetDatabaseBegin,TX1Insert,TX1Begin,TX2Update,TX1Insert,TX2Commit,TX2Begin,TX3Insert,TX3Begin,TX4Commit,TX3Delete,TX4Begin,TX2Insert,TX2Commit,TX2Begin,TX3Insert,TX3Commit,TX3Begin,TX2Insert,TX2Commit,TX2StartofOldestOpen(Uncommitted)TransactionCurrentReadPositionCaptureCheckpointCurrentWritePositionCurrentReadPositionPumpCheckpointCurrentWritePositionCurrentReadPositionDeliveryCheckpointOGGCheckpoint(3)OGG安装环境的基本要求(1)•内存•GoldenGateGGSCI命令接口工具对于每个GoldenGate实例可以支持并发300个Extract和Replicat进程•每个Extract和Replicat进程需要大约25-55MB内存,这主要取决于transaction的大小和并发的transaction数量•磁盘•OGG本身很小•Trail文件的数量和大小,一般算法是存储空间=(每天的数据库日志增量/3)*GoldenGate队列的的保留天数(一般建议保留7天)OGG安装环境的基本要求(2)•网络•TCP/IP•主要是OGG进程使用的端口、通讯用端口的开放•用于两个GoldenGate的Managerprocess之间通信(比如Source的Managerprocess和Target的Managerprocess)•本地GoldenGate进程间通信使用的端口范围:缺省的端口范围从7840开始,或者可以定义一个从7840+256的端口•配置防火墙允许接受来自GoldenGate端口的请求•建议保存一份分配给GoldenGate的端口使用记录•如果可能的话,可以设置FTP端口用于GoldenGate传输数据、参数和来自Source和Target的reportOGG安装环境的基本要求(3)•RAC•OGG的相关软件和工作目录需要配置在shareddisk上,从而保证对所有node都是可用的•RAC必要保持时钟同步NTP•数据库客户端必须是fullclient•数据库用户•在数据库中创建一个供OGG使用的专用用户,OGG所有进程可以使用这个用户连接到数据库(Extract/Replicat/Manager/Defgen)•对于Oracle10g及以后的版本,如果使用了AutomaticStorageManagement(ASM),OGG的Extract进程需要一个用户来访问ASM实例,但GoldenGate不支持O/S认证的授权方式,,可以使用sys或任何其他具有sysdba/sysasm权限的用户来连接到ASM实例OGG安装环境的基本要求(4)•对数据库的要求•数据库处于归档模式下•打开补充日志•打开forcelogging•常用命令(Oracle)•SQLalterdatabaseaddsupplementallogdata•SQLaltersystemswitchlog•SQLshutdownimmediate•SQLstartupmount•SQLalterdatabaseARCHIVELOG•SQLstartupopenOGG安装•在源和目标都安装OGG•安装过程很简单,解压到目录下(目录不能有空格)•执行ggsci•CREATESUBDIRS•安装前要仔细阅读releasenote,相关数据库的安装文档•OGG要连接数据库用户的创建和授权•对操作系统和数据库的版本、补丁要求•相关参数收集Oracle数据库信息•可以使用相关脚本检查某个schema下的表、索引、过程、func、view等的数量;看是否有表没有索引、PK;是否有很多列的表有examplescripts检查某个schema下数据类型的数量看是否有不支持类型和BLOB、CLOB等sequencetrigger;统计过去7天每小时处理的logvolume等,具体的checklist,请参考ChecklistforOGGonOracle.xlsx•有相关sql脚本可用参考•上述过程一般出现在方案设计阶段,在系统上线后可以考虑使用脚本做方案的优化Extract的配置内容•Groupname–associateswithacheckpointfile•Wheretosendthedata•Localsystem•Multipleremotesystems•OnetomanyGoldenGatetrails•Whatisbeingcaptured•Whichtables•Whichrowsandcolumns•Whichoperations•Whichcolumnmappingtoapply•Whichdatatransformationstoapply•Extract的缺省行为•AllExtractparametersassumeadefaultvalue:•Captureallinsert,updateanddeleteoperations•Committeddataonly•Fullimageforinserts•Onlyprimarykeyandchangedcolumnsforupdates•Onlyprimarykeyfordeletes•Onlyafter-imageofupdate•Senddatawithouttransformation•Buffertransactions•Untilablockisfullor•Untiltimeelapses•BasedonaveragetransactionvolumesExtract的配置过程•源数据库,增加extract及相关参数•增加localtrail和datapump及相关参数•datapump其实是第二个extract,主要用于是读取primaryextract生成的本地trail,然后transfer到远程;在GG的一般配置中,只有一个远程的trail,primaryextract将数据先保留在内存,然后到远程的trail,当网络或者远程主机不可用时,可能导致本地内存使用outage,如果使用了本地trail和datapump可以避免上述问题出现•还可以使用datapump做数据转换和过滤;整合多个数据源的数据到一个目标系统•同步一个数据源和多个target,在本地可以配置多个datapump分别对应不同的targets•增加remotetrail•启动extract,将trail文件transfer到远程InitialDataLoad•可以使用Extract做目标数据库的初始化•一般不使用•建议使用数据库的工作做初始化Replicat的配置内容•Groupname–associatedwithacheckpointfile•Listofsourcetotargetrelationships•Optionalrow-levelselectioncriteria•Optionalcolumnmappingfacilities•Optionaltransformationservices•OptionalstoredprocedureorSQLqueryexecution•Errorhandling•VariousoptionalparametersettingsReplicat的缺省行为•AllReplicatparametersassumeadefaultvalue:•Applyallinserts,update,deleteoperations•Smarttransactionalgrouping•100sourceoperationsaregroupedintoasingletargettransaction•Processabendsonanyoperationalfailure•Rollbacktransactiontolastgoodcheckpoint•Optionalerrorhandling•OptionalmappingtosecondarytableforexceptionsReplicat的配置过程•目标数据库,增加replicat及相关参数•增加trail及相关参数•启动Replicat举例:配置Extract的基本
本文标题:OGG基础培训.
链接地址:https://www.777doc.com/doc-2890158 .html