1993-2021金蝶国际软件集团有限公司④内部公开请勿外传符礼龄OracleGoldenGate安装部署与日常运维2021-05-13金蝶中国大企业技术支持部2课程收益课程收益1.了解OracleGoldenGate的工作原理和部署模式2.熟悉OracleGoldenGate安装部署过程3.熟悉OracleGoldenGate日常运维方法3目录1OracleGoldenGate工作原理3OracleGoldenGate软件安装4OracleGoldenGate部署过程CONTENTS5OracleGoldenGate日常运维2OracleGoldenGate部署模式4PART1:OracleGoldenGate工作原理OracleGoldenGate安装部署与日常运维51.OracleGolenGate工作原理概念:OracleGoldenGate是一种用于实时同步数据的工具,主要用于在各种企业系统间以亚秒级速度复制和集成事务数据,可以灵活地在不同类型的数据库间实现数据的同步操作。原理:OracleGoldenGate实时读取源数据库日志,从中捕获源数据库的变化内容,生成经过压缩与加密的队列文件,并将该队列文件传输至目标数据库,目标端进行相应队列文件解析并获取源数据库的变化内容,以此完成对目标数据库的更新。(谁负责做这个工作?-----进程)61.OracleGolenGate工作原理NetworkExtract(capture)进程:从日志中获取变更的信息,将变更信息输出到Trail文件(主键值+变更值)源端Trail文件:保存变更信息的中间文件Extract(DataPump)进程:读取Trail文件,将变更信息传输到目标端Collector进程:接受Extract下传输过来的数据存为Trail文件目标端Trail文件:保存变更信息的中间文件Replicat(capture)进程:从Trail文件中获取变更信息,转换成SQL语句在目标库上运行(以行为单位+基于主键值)源DB目标DBExtract(capture)Extract(DataPump)源Trail目标TrailCollectorReplicatManagerManagerManager进程:可以启动、关闭、监控其他进程,报告错误事件、分配数据存储空间,发布阈值报告Redo或archive日志文件:附加日志模式下,主键值和变更值输出到日志文件中71.OracleGolenGate工作原理源端进程及队列文件81.OracleGolenGate工作原理目标端进程及队列文件91.OracleGolenGate工作原理OracleGoldGate目录10PART2:OracleGoldGate部署模式OracleGoldenGate安装部署与日常运维112.OracleGoldenGate部署模式单向复制备份、查询双向复制灾备、双业务中心点对点多业务中心广播复制数据分发集中复制数据仓库多级复制层次化企业数据12PART3:OracleGoldGate软件安装OracleGoldenGate安装部署与日常运维133.OracleGoldenGate软件安装3.1解压软件、运行脚本3.2选择数据库版本3.3选择软件安装位置3.4开始安装3.5安装完成后关闭 oracle用户下解压软件,也可以新建一个专门的操作系统账号来管理ogg$unzip191004_fbo_ggs_Linux_x64_shiphome.zip$cdfbo_ggs_Linux_x64_shiphome/Disk1/$./runInstaller 进入安装目录运行安装脚本软件下载地址:https://www.oracle.com/middleware/technologies/goldengate-downloads.html143.OracleGoldenGate软件安装3.1解压软件、运行脚本3.2选择数据库版本3.3选择软件安装位置3.4开始安装3.5安装完成后关闭153.OracleGoldenGate软件安装3.1解压软件、运行脚本3.2选择数据库版本3.3选择软件安装位置3.4开始安装3.5安装完成后关闭163.OracleGoldenGate软件安装3.1解压软件、运行脚本3.2选择数据库版本3.3选择软件安装位置3.4开始安装3.5安装完成后关闭173.OracleGoldenGate软件安装3.1解压软件、运行脚本3.2选择数据库版本3.3选择软件安装位置3.4开始安装3.5安装完成后关闭183.OracleGoldenGate软件安装3.1解压软件、运行脚本3.2选择数据库版本3.3选择软件安装位置3.4开始安装3.5安装完成后关闭19PART4:OracleGolenGate部署过程OracleGoldenGate安装部署与日常运维204.OracleGoldenGate部署源端目标端IP地址172.20.110.152172.20.110.191操作系统版本CentOS7.6CentOS7.6数据库版本Oracle12.2.0.1.0Oracle12.2.0.1.0OGG版本19.1.0.0.419.1.0.0.4数据库实例名称linux01linux02安装目录/kingdee/ogg/source/kingdee/ogg/source环境规划214.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程 设置环境变量将如下环境变量加入oracle用户profile文件中(如果用oracle用户管理ogg的话)exportOGG_HOME=/kingdee/ogg/source 检查数据库是否启用归档日志模式、最小附加日志、forcelogging属性,如没有则需启用selectlog_mode,supplemental_log_data_min,force_loggingfromv$database; 创建OGG数据库用户的默认表空间createtablespaceoggdatafile'/u01/app/oracle/oradata/linux01/ogg01.dbf'size1mautoextendon; 创建ogg数据库用户指定默认表空间并授权createuseroggidentifiedbyoggdefaulttablespaceogg;grantdbatoogg; 修改数据库参数altersystemsetENABLE_GOLDENGATE_REPLICATION=true;说明:目标库对是否启用归档日志模式、最小附加日志、forcelogging属性没有强制要求224.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程创建输出目录$cd$OGG_HOME$./ggsciGGSCI(linux01)1>createsubdirs234.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源端MANAGER管理进程EXTRACT抽取进程EXTRACT传输进程目标端MANAGER管理进程REPLICAT复制进程244.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源和目标端配置mgr管理进程254.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源和目标端启动mgr管理进程264.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源端配置EXTRACT抽取进程274.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源端添加抽取进程和队列文件284.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源端配置EXTRACT传输进程294.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源端添加传输进程和队列文件304.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源端添加附加日志,启动进程314.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程目标端配置REPLICAT进程324.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程目标端添加检查点和队列文件334.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程源库导出数据目标库导入数据查询scn号,导出数据˵Ã÷.t344.OracleGoldenGate部署4.1数据库环境准备4.2创建输出目录4.3配置OGG进程4.4数据初始化4.5启动复制进程35PART5:OracleGoldenGate日常运维OracleGoldenGate安装部署与日常运维365.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表启动单个进程启动所有进程(不包括mgr进程)启动所有ET开头的进程启动所有extract进程mgr进程的启停375.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表查看进程状态infoall//查看所有进程运行状态info进程名//查看某个进程运行状态查看进程状态info进程名,detail//查看某个进程详细信息info进程名,showch//查看某个进程的检查点信息,当需要重启时有用RUNNING:正常运行STOPPED:正常停止或未能启动ABENDED:异常中断385.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表 查看进程状态infoall//查看所有进程运行状态info进程名//查看某个进程运行状态 查看进程详细信息info进程名,detail//查看指定进程详细信息info进程名,showch//查看某个进程的检查点信息,当需要重启时有用查看进程状态info进程名,detail//查看某个进程详细信息info进程名,showch//查看某个进程的检查点信息,当需要重启时有用(抽取进程)395.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表 查看进程状态infoall//查看所有进程运行状态info进程名//查看某个进程运行状态 查看进程详细信息info进程名,detail//查看指定进程详细信息info进程名,showch//查看某个进程的检查点信息,当需要重启时有用方法一:ggsci>view/editparams进程名方法二:操作系统命令查看或编辑$OGG_HOME/dirprm/目录下对应参数文件405.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表 查看进程状态infoall//查看所有进程运行状态info进程名//查看某个进程运行状态 查看进程详细信息info进程名,detail//查看指定进程详细信息info进程名,showch//查看某个进程的检查点信息,当需要重启时有用ggserr.logggsci命令的历史记录各个进程的启动与停止已执行的处理信息和警告消息发生的错误进程报告文件单个进程启动信息单个进程参数信息OracleGoldenGate版本、数据库版本信息单个进程信息和警告消息单个进程发生的错误415.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表方法一:ggsci>viewggsevt方法二:操作系统命令查看$OGG_HOME目录下对应ggserr.logggserr.log425.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表方法一:ggsci>view/editreport进程名方法二:操作系统命令查看或编辑$OGG_HOME/dirprm/目录下对应report文件进程报告文件435.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表 查看进程状态infoall//查看所有进程运行状态info进程名//查看某个进程运行状态 查看进程详细信息info进程名,detail//查看指定进程详细信息info进程名,showch//查看某个进程的检查点信息,当需要重启时有用修改复制表结构第一步:目标端停止复制进程第二步:目标端数据库执行修改表结构的脚本(主要是增加、删除字段)第三步:源端停止抽取和传输进程第四步:源端数据库执行修改表结构的脚本第五步:目标端开启目标进程第六步:源端开启抽取和传输进程445.OracleGoldenGate日常运维5.1进程启停、状态检查5.2查看、编辑参数文件5.3查看进程日志信息5.4修改复制表结构5.5添加复制表 查看进程状态infoall//查看所有进程运行状态info进程名//查看某个进程运行状态 查看进程详细信息info进程名,detail//查看指定进程详细信息info进程名,showch//查看某个进程的检查点信息,当需要重启时有用添加复制表第一步:源端添加新表附加日志(addtrandataeas01.test2)第二步:停止进程,修改参数(传输进程、抽取进程、复制进程)第三步:新表数据初始化第四步:启动进程(传输进程、抽取进程、复制进程)抽取/传输:tableeas01.test2;复制:mapeas01.test2,targeteas01.test2,filter(@getenv("TRANSACTION","csn")>xxx)45课后学习OracleGoldGate官方文档位置:https://docs.oracle.com/en/middleware/goldengate/core/index.htmlThanksterimakasih感謝谢谢ありがとうขอบคุ ณ1993-2021金蝶国际软件集团有限公司