溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

OGG維護(hù)優(yōu)化腳本(一)-需求分析篇

發(fā)布時間:2020-06-16 19:59:38 來源:網(wǎng)絡(luò) 閱讀:2189 作者:netsman1030 欄目:關(guān)系型數(shù)據(jù)庫


這套維護(hù)優(yōu)化腳本,是我在業(yè)余時間編寫的,專門用于針對goldengate數(shù)據(jù)同步工具的腳本

主要原因還是本人有點(diǎn)懶不喜歡繁瑣的手動操作。所以借助shell腳本來減低自己的工作量

部分參考了一些網(wǎng)絡(luò)大牛的shell腳本設(shè)計(jì)

因?yàn)殡x職的緣故估計(jì)以后職業(yè)生涯中可能不會用到,因此將該腳本的設(shè)計(jì)方案以及具體內(nèi)容共享出來

給各位網(wǎng)友學(xué)習(xí)和參考OGG維護(hù)優(yōu)化腳本(一)-需求分析篇


因?yàn)槟芰栴}部分功能可能寫的比較粗糙,希望各位別見怪。歡迎各位提出自己意見。謝謝各位


我會慢慢更新博文完善內(nèi)容。


一、腳本設(shè)計(jì)目的

我在進(jìn)行OGG的運(yùn)維工作,會遇到以下問題

1>    加表步驟繁瑣

部分需求提供表存在表格式不規(guī)范,已經(jīng)重復(fù)配置,導(dǎo)致加表時需花費(fèi)時間進(jìn)行重復(fù)配置確認(rèn) 

2>    因應(yīng)用頻繁修改表結(jié)構(gòu)導(dǎo)致目標(biāo)端頻繁異常中斷,同時影響進(jìn)程內(nèi)其他表的正常同步

3>    因維護(hù)需要停止進(jìn)程操作中,遇到長事務(wù)過多,導(dǎo)致比較繁瑣的跳過長事務(wù)操作。

4>    因數(shù)據(jù)庫異常導(dǎo)致的進(jìn)程非正常延時,導(dǎo)致數(shù)據(jù)同步滯后,同時因監(jiān)控未能及時通知,導(dǎo)致歸檔文件被備份清理導(dǎo)致的進(jìn)程中斷

5>    因線路增加導(dǎo)致后期運(yùn)維(注釋加表)操作日益繁瑣。同時OGG配置信息過于混亂,難以統(tǒng)一查詢

 

因此需要通過有效的輔助手段優(yōu)化或改善目前運(yùn)維中會遇到的問題


二、腳本設(shè)計(jì)思路

使用腳本直接整合重復(fù)表過濾以及附加日志添加操作。


1.優(yōu)化大批量新增表需求的加表操作

直接操作prm文件

在編輯原文件時自動備份,確保因?yàn)檎`操作導(dǎo)致異常后可以正常進(jìn)行恢復(fù)

每一步操作都有日志記錄確??勺凡椴僮魅?/span>

配有參數(shù)條件的表需要特別手動調(diào)整

注:該腳本需要對所有進(jìn)程進(jìn)行格式注釋配置,方能生效

大概腳本功能ER圖(僅為需求設(shè)計(jì),部分功能已經(jīng)完成,部分尚未完成)


OGG維護(hù)優(yōu)化腳本(一)-需求分析篇


2.單表一鍵插入

這是根據(jù)多表批量插入腳本測試后單獨(dú)設(shè)計(jì)的,針對少量加表需求的腳本

可以按照指令  表名區(qū)域名  操作用戶名

的格式快速插入進(jìn)程,并完成附加日志的增加操作

該腳本僅針對EXTRACTPUMP進(jìn)程,無法對REPLICAT進(jìn)程進(jìn)行操作。

 

大概腳本功能ER

OGG維護(hù)優(yōu)化腳本(一)-需求分析篇

3.跳過長事務(wù)

正常運(yùn)維中,每次加表或者修改EXTRACT配置后,必須對每個進(jìn)程進(jìn)行啟停

以對配置生效。但是因?yàn)閿?shù)據(jù)庫長事務(wù)導(dǎo)致進(jìn)程必須進(jìn)行長事務(wù)跳過操作,才能正常停止。

如果長事務(wù)過多,該操作較為繁瑣,需要通過showtrans獲取長事務(wù)信息,再比對,修改成指令后于ggsci內(nèi)執(zhí)行

因此專門設(shè)計(jì)該腳本用于自動化的對EXTRACT進(jìn)程進(jìn)行長事務(wù)跳過操作

OGG維護(hù)優(yōu)化腳本(一)-需求分析篇


4.批量注釋

用于應(yīng)對業(yè)務(wù)取消相關(guān)表同步配置的需求

因?yàn)?/span>部分業(yè)務(wù)方需要對源端進(jìn)行歷史數(shù)據(jù)清理,因?yàn)榍謇聿僮鲿r大量的delete或者update操作會導(dǎo)致大批量的歸檔文件生成。可能導(dǎo)致數(shù)據(jù)鏈路的高延時。

因此需要對已配置的表信息進(jìn)行注釋處理

因?yàn)閿?shù)據(jù)清理量大時,表數(shù)量可能會達(dá)到40-50

一張張的加注釋肯定會把自己累的發(fā)飆的,所以需求時設(shè)計(jì)了該個批量注釋腳本


OGG維護(hù)優(yōu)化腳本(一)-需求分析篇

5.批量取消注釋

該腳本功能與批量注釋腳本功能相反

主要用于應(yīng)對應(yīng)用數(shù)據(jù)清理后要求取消注釋的操作

OGG維護(hù)優(yōu)化腳本(一)-需求分析篇



6.信息上傳

這個腳本專門用于發(fā)送OGG生成的定義文件,日志,或者其他相關(guān)信息到指定的目標(biāo)機(jī)器

可作為同步定義文件,日志分類整理或者整理配置信息的輔助功能腳本??梢栽谄渌麅?yōu)化腳本中以指定格式被調(diào)用

因?yàn)槭峭ㄟ^SSH協(xié)議發(fā)送,因此需要在防火墻安全策略上做出相應(yīng)配置才能正常發(fā)送

同時可以通過計(jì)劃任務(wù)的方式定時執(zhí)行

OGG維護(hù)優(yōu)化腳本(一)-需求分析篇


7.進(jìn)程配置信息查詢

該腳本通過進(jìn)程內(nèi)人為填寫的進(jìn)程INFO信息,獲取并整理為進(jìn)程詳細(xì)配置信息表

包括源端,源端IP,發(fā)送目標(biāo)端及IP,定義文件等等信息(可根據(jù)需求調(diào)整)

分為本機(jī)查詢和上傳用HTML2個版本

OGG維護(hù)優(yōu)化腳本(一)-需求分析篇

8.定義文件自動同步

因?yàn)樵炊伺c目標(biāo)端存在表結(jié)構(gòu)的異常,因此OGG通過定義文件來確保數(shù)據(jù)能夠正常同步

但是因?yàn)槟壳斑\(yùn)維中,部分源端的開發(fā)人員經(jīng)常不經(jīng)預(yù)先提醒的頻繁修改表結(jié)構(gòu)

或因?yàn)槎x文件的損壞,配置錯誤,導(dǎo)致目標(biāo)端replicate進(jìn)程異常。

以致目標(biāo)端trail文件積壓,導(dǎo)致磁盤空間告警等連鎖系統(tǒng)異常問題。OGG維護(hù)優(yōu)化腳本(一)-需求分析篇


因此通過定義文件自動同步腳本,可以實(shí)時的更新定義文件,確保目標(biāo)端replicate進(jìn)程的正常運(yùn)行

注:該腳本需要對定義文件生成prm文件進(jìn)行格式注釋配置,方能生效(詳見后面的說明),同時需配置源端的計(jì)劃任務(wù),目標(biāo)端的自動重啟參數(shù)確保寫入進(jìn)程因?yàn)閿?shù)據(jù)格式異常中斷后,能夠重啟讀取新的定義文件

OGG維護(hù)優(yōu)化腳本(一)-需求分析篇

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI