專利名稱:Oracle數(shù)據(jù)庫操作監(jiān)控系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及ー種ORACLE數(shù)據(jù)庫,尤其是ー種ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng)。
背景技術(shù):
目前,數(shù)據(jù)庫管理員不能快速、有效的監(jiān)控操作人員對數(shù)據(jù)庫結(jié)構(gòu)的修改,導致操作人員超范圍操作,缺乏有效的監(jiān)管,存在安全隱患。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種能夠快速、有效的監(jiān)控操作人員對ORACLE數(shù)據(jù)庫結(jié)構(gòu)修改的監(jiān)控系統(tǒng)。為解決上述技術(shù)問題,本發(fā)明所采取的技術(shù)方案是
ー種ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng),包括在現(xiàn)有ORACLE數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)上設(shè)置 被監(jiān)測數(shù)據(jù)配置表用于存儲被監(jiān)測的數(shù)據(jù)庫;
結(jié)果表用于記錄監(jiān)控結(jié)果;
數(shù)據(jù)庫設(shè)置模塊實現(xiàn)對被監(jiān)測數(shù)據(jù)庫各種基礎(chǔ)信息的維護,并對被監(jiān)測數(shù)據(jù)庫進行新增、修改和刪除操作;
監(jiān)測類型設(shè)置模塊實現(xiàn)對被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型進行新增、修改、刪除的維護操作;數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊實現(xiàn)對被監(jiān)測數(shù)據(jù)結(jié)構(gòu)操作變更的監(jiān)控,在被監(jiān)測數(shù)據(jù)配置表中循環(huán)查找已啟用監(jiān)測的數(shù)據(jù)庫,對比被監(jiān)測數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)與本地備份表中的是否相同,并將有變更的結(jié)果記錄到結(jié)果表中;
監(jiān)測結(jié)果管理模塊對變更的數(shù)據(jù)庫結(jié)構(gòu)信息進行確認,如果更改的內(nèi)容符合要求,則更新本地備份表中對應(yīng)的數(shù)據(jù)結(jié)構(gòu)。其中,所述數(shù)據(jù)庫設(shè)置模塊維護的基礎(chǔ)屬性信息包含數(shù)據(jù)庫名稱、數(shù)據(jù)庫被監(jiān)測的用戶、數(shù)據(jù)庫IP地址、端口號、數(shù)據(jù)庫SID、數(shù)據(jù)庫連接用戶名及密碼、掃描時間、監(jiān)控對象的類型、是否啟用短信發(fā)送、要發(fā)送的手機號碼和是否啟用監(jiān)測。其中,所述監(jiān)測類型設(shè)置模塊設(shè)置的數(shù)據(jù)結(jié)構(gòu)類型包括TABLE、VIEW、INDEX、SEQUENCE,PROCEDURE、FUNCTION、PACKAGE、PACKAGE BODY、TRIGGER。其中,所述本地備份表用于存儲被監(jiān)測數(shù)據(jù)庫中dba_objects、dba_tab_cols表中的數(shù)據(jù)庫。其中,所述數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊做為Windows服務(wù)運行在服務(wù)器端。ー種ORACLE數(shù)據(jù)庫操作監(jiān)控方法,包括以下步驟
51.創(chuàng)建被監(jiān)測數(shù)據(jù)配置表和結(jié)果表,通過監(jiān)測類型設(shè)置模塊,對被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型進行維護;
52.通過數(shù)據(jù)庫設(shè)置模塊,將被監(jiān)測數(shù)據(jù)庫的連接信息錄入到系統(tǒng)中,并執(zhí)行系統(tǒng)中的同步操作,將被監(jiān)測數(shù)據(jù)庫中dba_objects、dba_tab_cols表中的數(shù)據(jù)庫導入本地備份表中以待查;53.創(chuàng)建用戶并分配dba_objects、dba_tab_cols表的查詢權(quán)限,并開通該Windows服務(wù)所在服務(wù)器對數(shù)據(jù)庫連接的訪問端ロ;
54.通過數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊,在被監(jiān)測數(shù)據(jù)配置表中循環(huán)查找已啟用監(jiān)測的數(shù)據(jù)庫,對比被監(jiān)測數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)與備份表中的是否相同,如果相同,結(jié)束此次掃描,如果不相同,則將變更的數(shù)據(jù)結(jié)構(gòu)信息記錄到結(jié)果表中;
55.通過監(jiān)測結(jié)果管理模塊,對變更的數(shù)據(jù)庫結(jié)構(gòu)信息進行確認,如果更改的內(nèi)容符合要求,則更新本地備份表中對應(yīng)的數(shù)據(jù)結(jié)構(gòu)。其中,所述步驟SI中,被監(jiān)測數(shù)據(jù)配置表用于存儲被監(jiān)測的數(shù)據(jù)庫,結(jié)果表用于記錄監(jiān)控結(jié)果;被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型包括TABLE、VIEW、INDEX、SEQUENCE、PROCEDURE、FUNCTION、PACKAGE、PACKAGE BODY、TRIGGER。
其中,所述步驟S2中,數(shù)據(jù)庫設(shè)置模塊維護的基礎(chǔ)屬性信息包含數(shù)據(jù)庫名稱、數(shù)據(jù)庫被監(jiān)測的用戶、數(shù)據(jù)庫IP地址、端口號、數(shù)據(jù)庫SID、數(shù)據(jù)庫連接用戶名及密碼、掃描時間、監(jiān)控對象的類型、是否啟用短信發(fā)送、要發(fā)送的手機號碼和是否啟用監(jiān)測。其中,所述步驟S4中,在掃描到有變更時,對于設(shè)置啟用短信發(fā)送功能的,將同時以短信方式發(fā)送到對應(yīng)數(shù)據(jù)庫設(shè)置的用戶手機中。采用上述技術(shù)方案所產(chǎn)生的有益效果在于本發(fā)明能夠同時對多個物理上分享的數(shù)據(jù)庫系統(tǒng)進行監(jiān)控,通過定時對需要監(jiān)控的數(shù)據(jù)庫用戶數(shù)據(jù)結(jié)構(gòu)進行掃描,及時發(fā)現(xiàn)用戶對數(shù)據(jù)結(jié)構(gòu)的更新情況,對于有變更的數(shù)據(jù)庫,掃描完成后,將以短信的形式發(fā)送給數(shù)據(jù)庫管理員,并將掃描到的變更結(jié)果記錄到結(jié)果表,變于數(shù)據(jù)庫管理員查看對應(yīng)的操作是否按規(guī)定執(zhí)行。本發(fā)明可以核查操作票內(nèi)容是否與實際操作一致,提高技術(shù)監(jiān)瞀手段,規(guī)范數(shù)據(jù)庫操作,降低操作風險。本發(fā)明可以及時發(fā)現(xiàn)被監(jiān)測數(shù)據(jù)庫的數(shù)據(jù)結(jié)構(gòu)變更情況,并及時通知數(shù)據(jù)庫管理員,通過監(jiān)測結(jié)果管理,可以查看此次變更修改的數(shù)據(jù)結(jié)構(gòu)詳細內(nèi)容及修改時間。本發(fā)明可做為Windows服務(wù)在服務(wù)器端長期運行,可以更好的服務(wù)于實際的數(shù)據(jù)庫管理工作需要,實現(xiàn)了數(shù)據(jù)庫操作的規(guī)范化管理,提升了數(shù)據(jù)庫管理員的管理水平,促進了操作票使用的標準化、規(guī)范化管理,提高了技術(shù)監(jiān)瞀手段,降低操作風險。
圖I是本發(fā)明的數(shù)據(jù)庫操作監(jiān)控系統(tǒng)構(gòu)成示意 圖2是本發(fā)明的數(shù)據(jù)庫操作監(jiān)控方法流程 圖3是監(jiān)控掃描數(shù)據(jù)庫流程 圖4是監(jiān)控結(jié)果管理流程圖。
具體實施例方式下面結(jié)合附圖和具體實施方式
對本發(fā)明作進ー步詳細的說明。如圖I所示為本發(fā)明的數(shù)據(jù)庫操作監(jiān)控系統(tǒng)構(gòu)成示意圖。本發(fā)明的ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng),包括在現(xiàn)有ORACLE數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)上設(shè)置被監(jiān)測數(shù)據(jù)配置表用于存儲被監(jiān)測的數(shù)據(jù)庫;結(jié)果表用于記錄監(jiān)控結(jié)果;數(shù)據(jù)庫設(shè)置模塊實現(xiàn)對被監(jiān)測數(shù)據(jù)庫各種基礎(chǔ)信息的維護,并對被監(jiān)測數(shù)據(jù)庫進行新增、修改和刪除操作;監(jiān)測類型設(shè)置模塊實現(xiàn)對被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型進行新增、修改、刪除的維護操作;數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊做為Windows服務(wù)運行在服務(wù)器端,實現(xiàn)對被監(jiān)測數(shù)據(jù)結(jié)構(gòu)操作變更的監(jiān)控,在被監(jiān)測數(shù)據(jù)配置表中循環(huán)查找已啟用監(jiān)測的數(shù)據(jù)庫,對比被監(jiān)測數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)與本地備份表中的是否相同,并將有變更的結(jié)果記錄到結(jié)果表中;監(jiān)測結(jié)果管理模塊對變更的數(shù)據(jù)庫結(jié)構(gòu)信息進行確認,如果更改的內(nèi)容符合要求,則更新本地備份表中對應(yīng)的數(shù)據(jù)結(jié)構(gòu)。其中,數(shù)據(jù)庫設(shè)置模塊維護的基礎(chǔ)屬性信息包含數(shù)據(jù)庫名稱、數(shù)據(jù)庫被監(jiān)測的用戶、數(shù)據(jù)庫IP地址、端口號、數(shù)據(jù)庫SID、數(shù)據(jù)庫連接用戶名及密碼、掃描時間、監(jiān)控對象的類型、是否啟用短信發(fā)送、要發(fā)送的手機號碼和是否啟用監(jiān)測;監(jiān)測類型設(shè)置模塊設(shè)置的數(shù)據(jù)結(jié)構(gòu)類型包括TABLE、VIEW、INDEX、SEQUENCE、PROCEDURE、FUNCTION、PACKAGE、PACKAGEBODY、TRIGGER ;本地備份表用于存儲被監(jiān)測數(shù)據(jù)庫中dba_objects、dba_tab_cols表中的數(shù)據(jù)庫。如圖2所示為本發(fā)明的數(shù)據(jù)庫操作監(jiān)控方法流程圖。本 發(fā)明的ORACLE數(shù)據(jù)庫操作監(jiān)控方法包括以下步驟
51.創(chuàng)建被監(jiān)測數(shù)據(jù)配置表和結(jié)果表,通過監(jiān)測類型設(shè)置模塊,對被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型進行維護;其中,被監(jiān)測數(shù)據(jù)配置表用于存儲被監(jiān)測的數(shù)據(jù)庫,結(jié)果表用于記錄監(jiān)控結(jié)果;被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型包括 TABLE、VIEW、INDEX、SEQUENCE、PROCEDURE、FUNCTION、PACKAGE、PACKAGE BODY、TRIGGER ;
52.通過數(shù)據(jù)庫設(shè)置模塊,將被監(jiān)測數(shù)據(jù)庫的連接信息錄入到系統(tǒng)中,并執(zhí)行系統(tǒng)中的同步操作,將被監(jiān)測數(shù)據(jù)庫中dba_objects、dba_tab_cols表中的數(shù)據(jù)庫導入本地備份表中以待查;其中,數(shù)據(jù)庫設(shè)置模塊維護的基礎(chǔ)屬性信息包含數(shù)據(jù)庫名稱、數(shù)據(jù)庫被監(jiān)測的用戶、數(shù)據(jù)庫IP地址、端口號、數(shù)據(jù)庫SID、數(shù)據(jù)庫連接用戶名及密碼、掃描時間、監(jiān)控對象的類型、是否啟用短信發(fā)送、要發(fā)送的手機號碼和是否啟用監(jiān)測;
53.創(chuàng)建用戶并分配dba_objects、dba_tab_cols表的查詢權(quán)限,并開通該Windows服務(wù)所在服務(wù)器對數(shù)據(jù)庫連接的訪問端ロ;
54.如圖3所示的監(jiān)控掃描數(shù)據(jù)庫流程圖,通過數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊,在被監(jiān)測數(shù)據(jù)配置表中循環(huán)查找已啟用監(jiān)測的數(shù)據(jù)庫,對比被監(jiān)測數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)與備份表中的是否相同,如果相同,結(jié)束此次掃描,如果不相同,則將變更的數(shù)據(jù)結(jié)構(gòu)信息記錄到結(jié)果表中;并且,在掃描到有變更時,對于設(shè)置啟用短信發(fā)送功能的,將同時以短信方式發(fā)送到對應(yīng)數(shù)據(jù)庫設(shè)置的用戶手機中;
55.如圖4所示的監(jiān)控結(jié)果管理流程圖,通過監(jiān)測結(jié)果管理模塊,對變更的數(shù)據(jù)庫結(jié)構(gòu)信息進行確認,如果更改的內(nèi)容符合要求,則更新本地備份表中對應(yīng)的數(shù)據(jù)結(jié)構(gòu)。
權(quán)利要求
1.ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng),其特征在于包括在現(xiàn)有ORACLE數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)上設(shè)置 被監(jiān)測數(shù)據(jù)配置表用于存儲被監(jiān)測的數(shù)據(jù)庫; 結(jié)果表用于記錄監(jiān)控結(jié)果; 數(shù)據(jù)庫設(shè)置模塊實現(xiàn)對被監(jiān)測數(shù)據(jù)庫各種基礎(chǔ)信息的維護,并對被監(jiān)測數(shù)據(jù)庫進行新增、修改和刪除操作; 監(jiān)測類型設(shè)置模塊實現(xiàn)對被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型進行新增、修改、刪除的維護操作; 數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊實現(xiàn)對被監(jiān)測數(shù)據(jù)結(jié)構(gòu)操作變更的監(jiān)控,在被監(jiān)測數(shù)據(jù)配置表中循環(huán)查找已啟用監(jiān)測的數(shù)據(jù)庫,對比被監(jiān)測數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)與本地備份表中的是否相同,并將有變更的結(jié)果記錄到結(jié)果表中; 監(jiān)測結(jié)果管理模塊對變更的數(shù)據(jù)庫結(jié)構(gòu)信息進行確認,如果更改的內(nèi)容符合要求,則更新本地備份表中對應(yīng)的數(shù)據(jù)結(jié)構(gòu)。
2.根據(jù)權(quán)利要求I所述的ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng),其特征在于所述數(shù)據(jù)庫設(shè)置模塊維護的基礎(chǔ)屬性信息包含數(shù)據(jù)庫名稱、數(shù)據(jù)庫被監(jiān)測的用戶、數(shù)據(jù)庫IP地址、端ロ號、數(shù)據(jù)庫SID、數(shù)據(jù)庫連接用戶名及密碼、掃描時間、監(jiān)控對象的類型、是否啟用短信發(fā)送、要發(fā)送的手機號碼和是否啟用監(jiān)測。
3.根據(jù)權(quán)利要求I所述的ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng),其特征在于所述監(jiān)測類型設(shè)置模塊設(shè)置的數(shù)據(jù)結(jié)構(gòu)類型包括TABLE、VIEW、INDEX、SEQUENCE、PROCEDURE、FUNCTION、PACKAGE、PACKAGE BODY、TRIGGER。
4.根據(jù)權(quán)利要求I所述的ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng),其特征在于所述本地備份表用于存儲被監(jiān)測數(shù)據(jù)庫中dba_objects、dba_tab_cols表中的數(shù)據(jù)庫。
5.根據(jù)權(quán)利要求I所述的ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng),其特征在于所述數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊做為Windows服務(wù)運行在服務(wù)器端。
6.ORACLE數(shù)據(jù)庫操作監(jiān)控方法,其特征在于包括以下步驟 51.創(chuàng)建被監(jiān)測數(shù)據(jù)配置表和結(jié)果表,通過監(jiān)測類型設(shè)置模塊,對被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型進行維護; 52.通過數(shù)據(jù)庫設(shè)置模塊,將被監(jiān)測數(shù)據(jù)庫的連接信息錄入到系統(tǒng)中,并執(zhí)行系統(tǒng)中的同步操作,將被監(jiān)測數(shù)據(jù)庫中dba_objects、dba_tab_cols表中的數(shù)據(jù)庫導入本地備份表中以待查; 53.創(chuàng)建用戶并分配dba_objects、dba_tab_cols表的查詢權(quán)限,并開通該Windows服務(wù)所在服務(wù)器對數(shù)據(jù)庫連接的訪問端ロ; 54.通過數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊,在被監(jiān)測數(shù)據(jù)配置表中循環(huán)查找已啟用監(jiān)測的數(shù)據(jù)庫,對比被監(jiān)測數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)與備份表中的是否相同,如果相同,結(jié)束此次掃描,如果不相同,則將變更的數(shù)據(jù)結(jié)構(gòu)信息記錄到結(jié)果表中; 55.通過監(jiān)測結(jié)果管理模塊,對變更的數(shù)據(jù)庫結(jié)構(gòu)信息進行確認,如果更改的內(nèi)容符合要求,則更新本地備份表中對應(yīng)的數(shù)據(jù)結(jié)構(gòu)。
7.根據(jù)權(quán)利要求6所述的ORACLE數(shù)據(jù)庫操作監(jiān)控方法,其特征在于所述步驟SI中,被監(jiān)測數(shù)據(jù)配置表用于存儲被監(jiān)測的數(shù)據(jù)庫,結(jié)果表用于記錄監(jiān)控結(jié)果;被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型包括 TABLE、VIEW、INDEX、SEQUENCE、PROCEDURE、FUNCTION、PACKAGE、PACKAGE BODY、TRIGGER。
8.根據(jù)權(quán)利要求6所述的ORACLE數(shù)據(jù)庫操作監(jiān)控方法,其特征在于所述步驟S2中,數(shù)據(jù)庫設(shè)置模塊維護的基礎(chǔ)屬性信息包含數(shù)據(jù)庫名稱、數(shù)據(jù)庫被監(jiān)測的用戶、數(shù)據(jù)庫IP地址、端口號、數(shù)據(jù)庫SID、數(shù)據(jù)庫連接用戶名及密碼、掃描時間、監(jiān)控對象的類型、是否啟用短信發(fā)送、要發(fā)送的手機號碼和是否啟用監(jiān)測。
9.根據(jù)權(quán)利要求6所述的ORACLE數(shù)據(jù)庫操作監(jiān)控方法,其特征在于所述步驟S4中,在掃描到有變更時,對于設(shè)置啟用短信發(fā)送功能的,將同時以短信方式發(fā)送到對應(yīng)數(shù)據(jù)庫設(shè)置的用戶手機中。
全文摘要
本發(fā)明公開了一種ORACLE數(shù)據(jù)庫操作監(jiān)控系統(tǒng),包括存儲被監(jiān)測的數(shù)據(jù)庫的被監(jiān)測數(shù)據(jù)配置表,記錄監(jiān)控結(jié)果的結(jié)果表,對被監(jiān)測數(shù)據(jù)庫各種基礎(chǔ)信息的維護,并對被監(jiān)測數(shù)據(jù)庫進行新增、修改和刪除操作的數(shù)據(jù)庫設(shè)置模塊,對被監(jiān)測的數(shù)據(jù)結(jié)構(gòu)類型進行新增、修改、刪除的維護操作的監(jiān)測類型設(shè)置模塊,實現(xiàn)對被監(jiān)測數(shù)據(jù)結(jié)構(gòu)操作變更的監(jiān)控的數(shù)據(jù)庫操作監(jiān)測服務(wù)模塊,對變更的數(shù)據(jù)庫結(jié)構(gòu)信息進行確認的監(jiān)測結(jié)果管理模塊。本發(fā)明可及時發(fā)現(xiàn)被監(jiān)測數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)變更情況,及時通知數(shù)據(jù)庫管理員,通過監(jiān)測結(jié)果管理,查看此次變更修改的數(shù)據(jù)結(jié)構(gòu)詳細內(nèi)容及修改時間。本發(fā)明可以核查操作票內(nèi)容是否與實際操作一致,提高技術(shù)監(jiān)督手段,規(guī)范數(shù)據(jù)庫操作,降低操作風險。
文檔編號G06F17/30GK102855319SQ20121032364
公開日2013年1月2日 申請日期2012年9月5日 優(yōu)先權(quán)日2012年9月5日
發(fā)明者劉平, 李井泉, 辛銳, 孔明, 白濤, 國明, 高旭, 崔志坤, 周文芳, 申蕾 申請人:國家電網(wǎng)公司, 河北省電力公司, 河北省電力公司信息通信分公司