[發(fā)明專利]一種數(shù)據(jù)庫變更管理方法及裝置有效
| 申請?zhí)枺?/td> | 201110227096.1 | 申請日: | 2011-08-09 |
| 公開(公告)號: | CN102929878A | 公開(公告)日: | 2013-02-13 |
| 發(fā)明(設(shè)計)人: | 殷詩章 | 申請(專利權(quán))人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京潤澤恒知識產(chǎn)權(quán)代理有限公司 11319 | 代理人: | 蘇培華 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 開曼群島;KY |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù)庫 變更 管理 方法 裝置 | ||
技術(shù)領(lǐng)域
本申請涉及數(shù)據(jù)庫技術(shù),特別是涉及一種數(shù)據(jù)庫變更管理方法及裝置。
背景技術(shù)
在軟件研發(fā)過程中,數(shù)據(jù)庫的變更管理非常重要。參照圖1,是現(xiàn)有技術(shù)中的研發(fā)流程示意圖。整個研發(fā)流程基本分為開發(fā)、測試和上線三個階段,每個階段都會涉及數(shù)據(jù)庫的操作與管理,具體如下:
在開發(fā)階段,首先根據(jù)《系統(tǒng)設(shè)計文檔》整理DDL(Data?Description?Language,數(shù)據(jù)定義語言)和DML(Data?Manipulation?Language,數(shù)據(jù)操作語言)語句,并由人工記錄DDL和DML語句,然后在開發(fā)庫中執(zhí)行所述DDL和DML語句。執(zhí)行完畢后,判斷數(shù)據(jù)庫設(shè)計是否調(diào)整,如果進行了調(diào)整,則修改《系統(tǒng)設(shè)計文檔》,然后返回去重新根據(jù)修改后的《系統(tǒng)設(shè)計文檔》整理DDL和DML語句,并繼續(xù)執(zhí)行后續(xù)步驟;如果未調(diào)整,則進入測試階段。
在測試階段,首先取出人工記錄的DDL和DML語句,然后在測試庫中執(zhí)行所述DDL和DML語句;執(zhí)行完畢后,判斷數(shù)據(jù)庫設(shè)計是否調(diào)整,如果進行了調(diào)整,則修改《系統(tǒng)設(shè)計文檔》,再返回重新根據(jù)修改后的《系統(tǒng)設(shè)計文檔》整理DDL和DML語句,并由人工記錄DDL和DML語句,然后再次進入測試階段取出人工記錄的DDL和DML語句執(zhí)行;如果未調(diào)整,則進入上線階段。
在上線階段,首先將《系統(tǒng)設(shè)計文檔》與開發(fā)(或測試)庫進行人工比對,整理出DDL和DML語句,然后在線上庫中執(zhí)行所述DDL和DML語句,最后完成上線工作。
從上述圖1可以看出,在開發(fā)、測試和上線的各個階段,每次調(diào)整數(shù)據(jù)庫設(shè)計都需要變更數(shù)據(jù)庫,而每次變更數(shù)據(jù)庫都需要根據(jù)《系統(tǒng)設(shè)計文檔》和開發(fā)(或測試)數(shù)據(jù)庫人工整理DDL和DML語句,或合并整理人工記錄的DDL和DML語句。這種全部通過人工工作方式完成的數(shù)據(jù)庫變更管理非常繁瑣,多次人工整理DDL和DML語句很容易出現(xiàn)遺漏或編寫錯誤,進而導(dǎo)致在未知時間爆發(fā)嚴(yán)重的線上故障;而且,在系統(tǒng)發(fā)布中,尤其是多個系統(tǒng)發(fā)布需要串行的情況下,由于DDL、DML內(nèi)容遺漏很可能導(dǎo)致發(fā)布時間過長,進而導(dǎo)致發(fā)布失敗。
發(fā)明內(nèi)容
本申請?zhí)峁┝艘环N數(shù)據(jù)庫變更管理方法及裝置,以解決人工管理存在的問題。
為了解決上述問題,本申請公開了一種數(shù)據(jù)庫變更管理方法,包括:
對數(shù)據(jù)庫中的原始數(shù)據(jù)進行快照得到快照數(shù)據(jù);
對數(shù)據(jù)庫變更后的數(shù)據(jù)進行快照得到最新快照數(shù)據(jù);
將所述最新快照數(shù)據(jù)與上一次的快照數(shù)據(jù)進行比對得到比對結(jié)果,如果比對結(jié)果不一致,則用所述最新快照數(shù)據(jù)替換上一次的快照數(shù)據(jù)進行保存;
依據(jù)所述比對結(jié)果自動生成數(shù)據(jù)庫語句。
其中,所述對數(shù)據(jù)庫中的原始數(shù)據(jù)進行快照得到快照數(shù)據(jù),包括:從數(shù)據(jù)庫讀取原始數(shù)據(jù)并創(chuàng)建快照;將快照數(shù)據(jù)保存到快照數(shù)據(jù)庫。
優(yōu)選的,將所述最新快照數(shù)據(jù)與上一次的快照數(shù)據(jù)進行比對得到比對結(jié)果,包括:將最新快照數(shù)據(jù)中的元數(shù)據(jù)與上一次快照數(shù)據(jù)中的元數(shù)據(jù)進行比對,得到元數(shù)據(jù)比對結(jié)果;將最新快照數(shù)據(jù)中的應(yīng)用初始化配置數(shù)據(jù)與上一次快照數(shù)據(jù)中的應(yīng)用初始化配置數(shù)據(jù)進行比對,得到應(yīng)用初始化配置數(shù)據(jù)比對結(jié)果。
其中,所述數(shù)據(jù)庫語句包括DDL數(shù)據(jù)定義語句和DML數(shù)據(jù)操作語句。
優(yōu)選的,依據(jù)所述元數(shù)據(jù)比對結(jié)果自動生成DDL數(shù)據(jù)定義語句;依據(jù)所述應(yīng)用初始化配置數(shù)據(jù)比對結(jié)果自動生成DML數(shù)據(jù)操作語句。
本申請還提供了一種數(shù)據(jù)庫變更管理裝置,包括:
數(shù)據(jù)快照模塊,用于對數(shù)據(jù)庫中的原始數(shù)據(jù)進行快照得到快照數(shù)據(jù),并用于對數(shù)據(jù)庫變更后的數(shù)據(jù)進行快照得到最新快照數(shù)據(jù),并輸出快照數(shù)據(jù)給所述快照比對模塊;
快照比對模塊,用于將所述最新快照數(shù)據(jù)與所述數(shù)據(jù)快照庫中上一次的快照數(shù)據(jù)進行比對得到比對結(jié)果,如果比對結(jié)果不一致,則用所述最新快照數(shù)據(jù)替換上一次的快照數(shù)據(jù)保存到所述數(shù)據(jù)快照庫中;
語句生成模塊,用于依據(jù)所述比對結(jié)果自動生成數(shù)據(jù)庫語句。
優(yōu)選的,所述快照比對模塊包括:
元數(shù)據(jù)比對子模塊,用于將最新快照數(shù)據(jù)中的元數(shù)據(jù)與上一次快照數(shù)據(jù)中的元數(shù)據(jù)進行比對,得到元數(shù)據(jù)比對結(jié)果;
配置數(shù)據(jù)比對子模塊,用于將最新快照數(shù)據(jù)中的應(yīng)用初始化配置數(shù)據(jù)與上一次快照數(shù)據(jù)中的應(yīng)用初始化配置數(shù)據(jù)進行比對,得到應(yīng)用初始化配置數(shù)據(jù)比對結(jié)果。
其中,所述數(shù)據(jù)庫語句包括DDL數(shù)據(jù)定義語句和DML數(shù)據(jù)操作語句。
優(yōu)選的,所述語句生成模塊包括:
DDL語句生成子模塊,用于依據(jù)所述元數(shù)據(jù)比對結(jié)果自動生成DDL數(shù)據(jù)定義語句;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于阿里巴巴集團控股有限公司,未經(jīng)阿里巴巴集團控股有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110227096.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)庫
- 數(shù)據(jù)庫管理系統(tǒng)及數(shù)據(jù)庫
- 數(shù)據(jù)庫構(gòu)筑裝置、數(shù)據(jù)庫檢索裝置、數(shù)據(jù)庫裝置、數(shù)據(jù)庫構(gòu)筑方法、以及數(shù)據(jù)庫檢索方法
- 數(shù)據(jù)庫和數(shù)據(jù)庫處理方法
- 數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫更新方法、數(shù)據(jù)庫以及數(shù)據(jù)庫更新程序
- 容器數(shù)據(jù)庫
- 數(shù)據(jù)庫同步方法及數(shù)據(jù)庫
- 一種MongoDB數(shù)據(jù)庫對象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲方法、裝置、電子設(shè)備及存儲介質(zhì)
- 數(shù)據(jù)庫語句執(zhí)行方法及裝置
- 圖像診斷裝置、醫(yī)用系統(tǒng)以及協(xié)議管理方法
- 一種基于三維模型的航天器總裝信息變更系統(tǒng)及變更方法
- 自升式鉆井平臺項目變更管理系統(tǒng)及方法
- 一種變更信息處理方法及裝置
- 工程變更管理信息系統(tǒng)的行動預(yù)案確認(rèn)方法及系統(tǒng)
- 基準(zhǔn)站運維變更管理方法和系統(tǒng)
- 一種PCBA板卡的變更方法、裝置及系統(tǒng)
- 一種代碼變更方法以及裝置
- 工單處理方法、裝置、計算機設(shè)備及計算機可讀存儲介質(zhì)
- 業(yè)務(wù)對象信息變更方法、系統(tǒng)、計算機設(shè)備和存儲介質(zhì)





