欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種數(shù)據(jù)庫變更方法及裝置與流程

文檔序號(hào):12666924閱讀:188來源:國知局
一種數(shù)據(jù)庫變更方法及裝置與流程

本發(fā)明涉及分布式系統(tǒng)領(lǐng)域,特別涉及一種數(shù)據(jù)庫變更方法及裝置。



背景技術(shù):

隨著國家互聯(lián)網(wǎng)+、電子商務(wù)、移動(dòng)互聯(lián)網(wǎng)的深入發(fā)展,分布式MySQL應(yīng)用越來越廣泛。隨著數(shù)據(jù)量的增加,業(yè)務(wù)需求場(chǎng)景也是與日俱增,每天都在變化中。分布式MySQL數(shù)據(jù)庫的操作變更在這個(gè)背景下變得頻繁、重要。為了確保基于MySQL的產(chǎn)品和應(yīng)用的穩(wěn)定性,需要確保MySQL的操作變更的影響是可控的。部署了分布式MySQL后,隨之帶來的問題是如何高效和穩(wěn)定地進(jìn)行MySQL的變更。

目前業(yè)界大部分的數(shù)據(jù)庫變更處于以下2種階段:1、人工操作階段,依賴運(yùn)維人員DBA人工進(jìn)行操作,完全依賴人的意識(shí)和水平;2、單純自動(dòng)化階段,任務(wù)下發(fā)的時(shí)候全部下發(fā),不會(huì)聯(lián)動(dòng)業(yè)務(wù)量情況,不會(huì)聯(lián)動(dòng)依賴數(shù)據(jù)庫的業(yè)務(wù)健康。但這兩種方式都沒考慮到和業(yè)務(wù)訪問量情況,線上業(yè)務(wù)的實(shí)時(shí)訪問數(shù)據(jù)庫有無報(bào)錯(cuò)等問題。



技術(shù)實(shí)現(xiàn)要素:

鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的一種數(shù)據(jù)庫變更方法及裝置。用以提高數(shù)據(jù)庫變更的效率以及業(yè)務(wù)的穩(wěn)定性。

本發(fā)明提供一種數(shù)據(jù)庫變更方法,包括:

獲取變更任務(wù),根據(jù)所述變更任務(wù)對(duì)數(shù)據(jù)庫進(jìn)行變更;

實(shí)時(shí)采集每一個(gè)變更任務(wù)的報(bào)錯(cuò)信息;

當(dāng)所述報(bào)錯(cuò)信息符合預(yù)期時(shí),繼續(xù)對(duì)所述數(shù)據(jù)庫進(jìn)行變更;

當(dāng)所述報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)所述數(shù)據(jù)庫進(jìn)行變更。

在一個(gè)實(shí)施例中,在所述獲取變更任務(wù)之前,所述方法還可包括:

按照預(yù)設(shè)規(guī)則將數(shù)據(jù)庫的變更任務(wù)劃分為N個(gè)任務(wù),N為正整數(shù)。

在一個(gè)實(shí)施例中,所述方法還可包括:

實(shí)時(shí)采集線上業(yè)務(wù)的關(guān)鍵業(yè)務(wù)量信息;

每完成一個(gè)變更任務(wù),分析所述報(bào)錯(cuò)信息和關(guān)鍵業(yè)務(wù)量信息變化情況。

在一個(gè)實(shí)施例中,所述當(dāng)所述報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)所述數(shù)據(jù)庫進(jìn)行變更,可包括:

當(dāng)所述報(bào)錯(cuò)信息的持續(xù)次數(shù)超過預(yù)設(shè)次數(shù)時(shí),停止對(duì)所述數(shù)據(jù)庫進(jìn)行變更,所述報(bào)錯(cuò)信息包含數(shù)據(jù)庫異常錯(cuò)誤日志。

在一個(gè)實(shí)施例中,在所述當(dāng)所述報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)所述數(shù)據(jù)庫進(jìn)行變更之后,所述方法還可包括:

發(fā)送告警信息。

本發(fā)明還提供一種數(shù)據(jù)庫變更裝置,包括:

變更模塊,用于獲取變更任務(wù),根據(jù)所述變更任務(wù)對(duì)數(shù)據(jù)庫進(jìn)行變更;

第一采集模塊,用于實(shí)時(shí)采集每一個(gè)變更任務(wù)的報(bào)錯(cuò)信息;

繼續(xù)模塊,用于當(dāng)所述報(bào)錯(cuò)信息符合預(yù)期時(shí),繼續(xù)對(duì)所述數(shù)據(jù)庫進(jìn)行變更;

停止模塊,用于當(dāng)所述報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)所述數(shù)據(jù)庫進(jìn)行變更。

在一個(gè)實(shí)施例中,所述裝置還可包括:

任務(wù)劃分模塊,用于按照預(yù)設(shè)規(guī)則將數(shù)據(jù)庫的變更任務(wù)劃分為N個(gè)任務(wù),N為正整數(shù)。

在一個(gè)實(shí)施例中,所述裝置還可包括:

第二采集模塊,用于實(shí)時(shí)采集線上業(yè)務(wù)的關(guān)鍵業(yè)務(wù)量信息;

分析模塊,用于每完成一個(gè)變更任務(wù),分析所述報(bào)錯(cuò)信息和關(guān)鍵業(yè)務(wù)量信息變化情況。

在一個(gè)實(shí)施例中,所述停止模塊可包括:

停止子模塊,用于當(dāng)所述報(bào)錯(cuò)信息的持續(xù)次數(shù)超過預(yù)設(shè)次數(shù)時(shí),停止對(duì)所述數(shù)據(jù)庫進(jìn)行變更,所述報(bào)錯(cuò)信息包含數(shù)據(jù)庫異常錯(cuò)誤日志。

在一個(gè)實(shí)施例中,所述裝置還可包括:

告警模塊,用于發(fā)送告警信息。

本發(fā)明的實(shí)施例提供的技術(shù)方案可以包括以下有益效果:

上述技術(shù)方案,通過獲取變更任務(wù),根據(jù)變更任務(wù)對(duì)數(shù)據(jù)庫進(jìn)行變更,實(shí)時(shí)采集每一個(gè)變更任務(wù)的報(bào)錯(cuò)信息,當(dāng)報(bào)錯(cuò)信息符合預(yù)期時(shí),繼續(xù)對(duì)數(shù)據(jù)庫進(jìn)行變更,當(dāng)報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)數(shù)據(jù)庫進(jìn)行變更。分布式MySQL批量變更可以得到穩(wěn)定性的實(shí)時(shí)分析和穩(wěn)定保證,并提高變更的效率,可以給業(yè)務(wù)的穩(wěn)定性帶來更好的幫助,提升用戶體驗(yàn)滿意度。

本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。

下面通過附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。

附圖說明

附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中:

圖1為本發(fā)明實(shí)施例中一種數(shù)據(jù)庫變更方法的流程圖;

圖2為本發(fā)明實(shí)施例中另一種數(shù)據(jù)庫變更方法的流程圖;

圖3為本發(fā)明實(shí)施例中另一種數(shù)據(jù)庫變更方法的流程圖;

圖4為本發(fā)明實(shí)施例中另一種數(shù)據(jù)庫變更方法的流程圖;

圖5為本發(fā)明實(shí)施例中另一種數(shù)據(jù)庫變更方法的流程圖;

圖6為本發(fā)明實(shí)施例中一種數(shù)據(jù)庫變更裝置的框圖;

圖7為本發(fā)明實(shí)施例中另一種數(shù)據(jù)庫變更裝置的框圖;

圖8為本發(fā)明實(shí)施例中另一種數(shù)據(jù)庫變更裝置的框圖;

圖9為本發(fā)明實(shí)施例中另一種數(shù)據(jù)庫變更裝置的框圖。

具體實(shí)施方式

以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。

圖1所示為本發(fā)明實(shí)施例中一種數(shù)據(jù)庫變更方法的流程圖,如圖1所示,該數(shù)據(jù)庫變更方法包括以下步驟S11-S14:

步驟S11,獲取變更任務(wù),根據(jù)變更任務(wù)對(duì)數(shù)據(jù)庫進(jìn)行變更。

步驟S12,實(shí)時(shí)采集每一個(gè)變更任務(wù)的報(bào)錯(cuò)信息。

步驟S13,當(dāng)報(bào)錯(cuò)信息符合預(yù)期時(shí),繼續(xù)對(duì)數(shù)據(jù)庫進(jìn)行變更。

步驟S14,當(dāng)報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)數(shù)據(jù)庫進(jìn)行變更。

數(shù)據(jù)庫提供了對(duì)數(shù)據(jù)的存儲(chǔ)功能,并且能夠支持用戶對(duì)所保存的數(shù)據(jù)的訪問功能。實(shí)際應(yīng)用中,用戶往往對(duì)數(shù)據(jù)庫中保存的數(shù)據(jù)存在變更的需求,例如,新增數(shù)據(jù)、刪除數(shù)據(jù)、修改數(shù)據(jù)等。因此,數(shù)據(jù)庫也能夠支持用戶對(duì)數(shù)據(jù)庫進(jìn)行變更的需求。用戶對(duì)數(shù)據(jù)庫進(jìn)行變更,主要通過如下步驟實(shí)現(xiàn):數(shù)據(jù)庫開發(fā)人員根據(jù)數(shù)據(jù)庫變更需求,編寫結(jié)構(gòu)化查詢語言(Structured Query Language,SQL)語句;數(shù)據(jù)庫變更需求一般包括數(shù)據(jù)庫的變更對(duì)象信息以及對(duì)該數(shù)據(jù)庫變更對(duì)象執(zhí)行的操作類型信息。數(shù)據(jù)庫開發(fā)人員將編寫的SQL語句發(fā)送給數(shù)據(jù)庫管理員(Database administrator,DBA);DBA對(duì)接收的SQL語句進(jìn)行審核,即判斷SQL語句的編寫是否準(zhǔn)確;DBA對(duì)接收的SQL語句審核通過后,根據(jù)該SQL語句確定數(shù)據(jù)庫變更需求;DBA登錄數(shù)據(jù)庫,根據(jù)確定出的數(shù)據(jù)庫變更需求,對(duì)數(shù)據(jù)庫執(zhí)行與該變更需求相應(yīng)的操作;DBA在完成對(duì)數(shù)據(jù)庫的操作后,將數(shù)據(jù)庫開發(fā)人員編寫的SQL語句應(yīng)用到該數(shù)據(jù)庫的開發(fā)庫。

在這個(gè)過程中,為了確?;贛ySQL的產(chǎn)品和應(yīng)用的穩(wěn)定性,需要確保MySQL的操作變更的影響是可控的。本發(fā)明實(shí)施例的上述方法,通過獲取變更任務(wù),根據(jù)變更任務(wù)對(duì)數(shù)據(jù)庫進(jìn)行變更,實(shí)時(shí)采集每一個(gè)變更任務(wù)的報(bào)錯(cuò)信息,當(dāng)報(bào)錯(cuò)信息符合預(yù)期時(shí),繼續(xù)對(duì)數(shù)據(jù)庫進(jìn)行變更,當(dāng)報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)數(shù)據(jù)庫進(jìn)行變更。分布式MySQL批量變更可以得到穩(wěn)定性的實(shí)時(shí)分析和穩(wěn)定保證,并提高變更的效率,可以給業(yè)務(wù)的穩(wěn)定性帶來更好的幫助和保證影響范圍最小,提升用戶體驗(yàn)滿意度。

在一個(gè)實(shí)施例中,在步驟S11之前,如圖2所示,該數(shù)據(jù)庫變更方法還可包括以下步驟S15:

步驟S15,按照預(yù)設(shè)規(guī)則將數(shù)據(jù)庫的變更任務(wù)劃分為N個(gè)任務(wù),N為正整數(shù)。

本實(shí)施了提供一個(gè)數(shù)據(jù)庫變更任務(wù)初始化程序,該程序會(huì)把數(shù)據(jù)庫的變更任務(wù)初始化為N個(gè)任務(wù)。比如添加1000個(gè)表,則自動(dòng)拆分為1000個(gè)任務(wù)。

在一個(gè)實(shí)施例中,如圖3所示,該數(shù)據(jù)庫變更方法還可包括以下步驟S16-S17:

步驟S16,實(shí)時(shí)采集線上業(yè)務(wù)的關(guān)鍵業(yè)務(wù)量信息。

步驟S17,每完成一個(gè)變更任務(wù),分析報(bào)錯(cuò)信息和關(guān)鍵業(yè)務(wù)量信息變化情況。

在一個(gè)實(shí)施例中,如圖4所示,步驟S14可以實(shí)施為如下步驟S141:

步驟S141,當(dāng)報(bào)錯(cuò)信息的持續(xù)次數(shù)超過預(yù)設(shè)次數(shù)時(shí),停止對(duì)數(shù)據(jù)庫進(jìn)行變更,報(bào)錯(cuò)信息包含數(shù)據(jù)庫異常錯(cuò)誤日志。

本實(shí)施例提供一個(gè)變更任務(wù)控制模塊,控制模塊會(huì)對(duì)業(yè)務(wù)報(bào)錯(cuò)信息進(jìn)行處理,如判斷業(yè)務(wù)報(bào)錯(cuò)信息里面是否有SQLException的錯(cuò)誤日志,比如對(duì)A數(shù)據(jù)庫進(jìn)行變更,依賴A數(shù)據(jù)庫的業(yè)務(wù)一直出現(xiàn)SQLException錯(cuò)誤,在數(shù)據(jù)庫變更完成后依然在報(bào)錯(cuò),程序自動(dòng)判斷變更任務(wù)不可繼續(xù),自動(dòng)停止變更。

在一個(gè)實(shí)施例中,如圖5所示,在步驟S14之后,該數(shù)據(jù)庫變更方法還可包括如下步驟S18:

步驟S18,發(fā)送告警信息。

數(shù)據(jù)庫停止變更后,發(fā)送告警信息,方便運(yùn)維人員及時(shí)了解數(shù)據(jù)庫變更情況。

基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)庫變更裝置,由于該裝置所解決問題的原理與前述數(shù)據(jù)庫變更方法相似,因此該裝置的實(shí)施可以參見前述方法的實(shí)施,重復(fù)之處不再贅述。

圖6所示為本發(fā)明實(shí)施例中一種數(shù)據(jù)庫變更裝置的框圖,如圖6所示,該數(shù)據(jù)庫變更裝置包括:

變更模塊61,用于獲取變更任務(wù),根據(jù)變更任務(wù)對(duì)數(shù)據(jù)庫進(jìn)行變更;

第一采集模塊62,用于實(shí)時(shí)采集每一個(gè)變更任務(wù)的報(bào)錯(cuò)信息;

繼續(xù)模塊63,用于當(dāng)報(bào)錯(cuò)信息符合預(yù)期時(shí),繼續(xù)對(duì)數(shù)據(jù)庫進(jìn)行變更;

停止模塊64,用于當(dāng)報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)數(shù)據(jù)庫進(jìn)行變更。

在一個(gè)實(shí)施例中,如圖7所示,該數(shù)據(jù)庫變更裝置還可包括:

任務(wù)劃分模塊65,用于按照預(yù)設(shè)規(guī)則將數(shù)據(jù)庫的變更任務(wù)劃分為N個(gè)任務(wù),N為正整數(shù)。

在一個(gè)實(shí)施例中,如圖8所示,該數(shù)據(jù)庫變更裝置還可包括:

第二采集模塊66,用于實(shí)時(shí)采集線上業(yè)務(wù)的關(guān)鍵業(yè)務(wù)量信息;

分析模塊67,用于每完成一個(gè)變更任務(wù),分析報(bào)錯(cuò)信息和關(guān)鍵業(yè)務(wù)量信息變化情況。

在一個(gè)實(shí)施例中,停止模塊64可包括:

停止子模塊,用于當(dāng)報(bào)錯(cuò)信息的持續(xù)次數(shù)超過預(yù)設(shè)次數(shù)時(shí),停止對(duì)數(shù)據(jù)庫進(jìn)行變更,報(bào)錯(cuò)信息包含數(shù)據(jù)庫異常錯(cuò)誤日志。

在一個(gè)實(shí)施例中,如圖9所示,該數(shù)據(jù)庫變更裝置還可包括:

告警模塊68,用于發(fā)送告警信息。

本發(fā)明實(shí)施例的上述裝置,通過獲取變更任務(wù),根據(jù)變更任務(wù)對(duì)數(shù)據(jù)庫進(jìn)行變更,實(shí)時(shí)采集每一個(gè)變更任務(wù)的報(bào)錯(cuò)信息,當(dāng)報(bào)錯(cuò)信息符合預(yù)期時(shí),繼續(xù)對(duì)數(shù)據(jù)庫進(jìn)行變更,當(dāng)報(bào)錯(cuò)信息超出預(yù)期時(shí),停止對(duì)數(shù)據(jù)庫進(jìn)行變更。分布式MySQL批量變更可以得到穩(wěn)定性的實(shí)時(shí)分析和穩(wěn)定保證,并提高變更的效率,可以給業(yè)務(wù)的穩(wěn)定性帶來更好的幫助,提升用戶體驗(yàn)滿意度。

本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器和光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。

本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。

這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。

這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。

顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
长葛市| 延安市| 获嘉县| 奉化市| 兴仁县| 建宁县| 神池县| 米泉市| 南丰县| 金昌市| 宜兰县| 龙游县| 南丰县| 同德县| 松滋市| 大连市| 朝阳区| 梅州市| 古交市| 庆城县| 高邮市| 始兴县| 平武县| 凤城市| 安阳县| 沾益县| 花莲市| 普安县| 嫩江县| 武定县| 临泽县| 夏河县| 施秉县| 通化县| 九寨沟县| 淮安市| 贺州市| 麦盖提县| 宿松县| 昌江| 滕州市|