成都网站建设设计

将想法与焦点和您一起共享

OGG维护优化脚本(一)-需求分析篇

这套维护优化脚本,是我在业余时间编写的,专门用于针对goldengate数据同步工具的脚本

我们提供的服务有:成都网站设计、成都网站建设、外贸网站建设、微信公众号开发、网站优化、网站认证、昌黎ssl等。为成百上千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的昌黎网站制作公司

主要原因还是本人有点懒不喜欢繁琐的手动操作。所以借助shell脚本来减低自己的工作量

部分参考了一些网络大牛的shell脚本设计

因为离职的缘故估计以后职业生涯中可能不会用到,因此将该脚本的设计方案以及具体内容共享出来

给各位网友学习和参考OGG维护优化脚本(一)-需求分析篇

因为能力问题部分功能可能写的比较粗糙,希望各位别见怪。欢迎各位提出自己意见。谢谢各位

我会慢慢更新博文完善内容。

一、脚本设计目的

我在进行OGG的运维工作,会遇到以下问题

1>    加表步骤繁琐

部分需求提供表存在表格式不规范,已经重复配置,导致加表时需花费时间进行重复配置确认 

2>    因应用频繁修改表结构导致目标端频繁异常中断,同时影响进程内其他表的正常同步

3>    因维护需要停止进程操作中,遇到长事务过多,导致比较繁琐的跳过长事务操作。

4>    因数据库异常导致的进程非正常延时,导致数据同步滞后,同时因监控未能及时通知,导致归档文件被备份清理导致的进程中断

5>    因线路增加导致后期运维(注释加表)操作日益繁琐。同时OGG配置信息过于混乱,难以统一查询

 

因此需要通过有效的辅助手段优化或改善目前运维中会遇到的问题

二、脚本设计思路

使用脚本直接整合重复表过滤以及附加日志添加操作。

1.优化大批量新增表需求的加表操作

直接操作prm文件

在编辑原文件时自动备份,确保因为误操作导致异常后可以正常进行恢复

每一步操作都有日志记录确保可追查操作人

配有参数条件的表需要特别手动调整

注:该脚本需要对所有进程进行格式注释配置,方能生效

大概脚本功能ER图(仅为需求设计,部分功能已经完成,部分尚未完成)


OGG维护优化脚本(一)-需求分析篇

2.单表一键插入

这是根据多表批量插入脚本测试后单独设计的,针对少量加表需求的脚本

可以按照指令 表名区域名 操作用户名

的格式快速插入进程,并完成附加日志的增加操作

该脚本仅针对EXTRACT和PUMP进程,无法对REPLICAT进程进行操作。

 

大概脚本功能ER图

OGG维护优化脚本(一)-需求分析篇

3.跳过长事务

正常运维中,每次加表或者修改EXTRACT配置后,必须对每个进程进行启停

以对配置生效。但是因为数据库长事务导致进程必须进行长事务跳过操作,才能正常停止。

如果长事务过多,该操作较为繁琐,需要通过showtrans获取长事务信息,再比对,修改成指令后于ggsci内执行

因此专门设计该脚本用于自动化的对EXTRACT进程进行长事务跳过操作

OGG维护优化脚本(一)-需求分析篇

4.批量注释

用于应对业务取消相关表同步配置的需求

因为部分业务方需要对源端进行历史数据清理,因为清理操作时大量的delete或者update操作会导致大批量的归档文件生成。可能导致数据链路的高延时。

因此需要对已配置的表信息进行注释处理

因为数据清理量大时,表数量可能会达到40-50张

一张张的加注释肯定会把自己累的发飙的,所以需求时设计了该个批量注释脚本

OGG维护优化脚本(一)-需求分析篇

5.批量取消注释

该脚本功能与批量注释脚本功能相反

主要用于应对应用数据清理后要求取消注释的操作

OGG维护优化脚本(一)-需求分析篇

6.信息上传

这个脚本专门用于发送OGG生成的定义文件,日志,或者其他相关信息到指定的目标机器

可作为同步定义文件,日志分类整理或者整理配置信息的辅助功能脚本。可以在其他优化脚本中以指定格式被调用

因为是通过SSH协议发送,因此需要在防火墙安全策略上做出相应配置才能正常发送

同时可以通过计划任务的方式定时执行

OGG维护优化脚本(一)-需求分析篇

7.进程配置信息查询

该脚本通过进程内人为填写的进程INFO信息,获取并整理为进程详细配置信息表

包括源端,源端IP,发送目标端及IP,定义文件等等信息(可根据需求调整)

分为本机查询和上传用HTML2个版本

OGG维护优化脚本(一)-需求分析篇

8.定义文件自动同步

因为源端与目标端存在表结构的异常,因此OGG通过定义文件来确保数据能够正常同步

但是因为目前运维中,部分源端的开发人员经常不经预先提醒的频繁修改表结构

或因为定义文件的损坏,配置错误,导致目标端replicate进程异常。

以致目标端trail文件积压,导致磁盘空间告警等连锁系统异常问题。OGG维护优化脚本(一)-需求分析篇

因此通过定义文件自动同步脚本,可以实时的更新定义文件,确保目标端replicate进程的正常运行

注:该脚本需要对定义文件生成prm文件进行格式注释配置,方能生效(详见后面的说明),同时需配置源端的计划任务,目标端的自动重启参数确保写入进程因为数据格式异常中断后,能够重启读取新的定义文件

OGG维护优化脚本(一)-需求分析篇


当前文章:OGG维护优化脚本(一)-需求分析篇
URL分享:http://chengdu.cdxwcx.cn/article/ppdccd.html