本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,尤其涉及一種數(shù)據(jù)庫(kù)的生成方法及生成裝置。
背景技術(shù):
數(shù)據(jù)庫(kù)(database)是按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù)。
相關(guān)技術(shù)中,數(shù)據(jù)庫(kù)的生成需要手動(dòng)配置一系列的選項(xiàng),因此配置過(guò)程繁瑣,十分耗費(fèi)人力成本。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述技術(shù)問(wèn)題,本發(fā)明提供一種數(shù)據(jù)庫(kù)的生成方法及生成裝置,從而能夠根據(jù)數(shù)據(jù)庫(kù)模板自動(dòng)地生成數(shù)據(jù)庫(kù)。
為了達(dá)到本發(fā)明目的,本發(fā)明提供了一種數(shù)據(jù)庫(kù)的生成方法,包括:
獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息;其中,m為正整數(shù);
根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板;其中,i=1、2...m;
獲取期望數(shù)據(jù)庫(kù)配置信息;
根據(jù)獲取的所述期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板;
根據(jù)所述目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。
所述m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息包括操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存,所述根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板,包括:
將獲取的所述第i組數(shù)據(jù)庫(kù)配置信息中包括的所述操作系統(tǒng)類(lèi)型、所述數(shù)據(jù)庫(kù)版本和所述數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本;
運(yùn)行所述第i個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成第i個(gè)數(shù)據(jù)庫(kù)模板。
所述根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板,包括:
判斷獲取的所述期望數(shù)據(jù)庫(kù)配置信息是否符合預(yù)設(shè)規(guī)定;其中,所述預(yù)設(shè)規(guī)定用于排除不合理的所述期望數(shù)據(jù)庫(kù)配置信息;
若獲取的所述期望數(shù)據(jù)配置信息符合所述預(yù)設(shè)規(guī)定,根據(jù)獲取的所述期望數(shù)據(jù)庫(kù)配置信息從生成的所述m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板。
所述期望數(shù)據(jù)庫(kù)配置信息包括期望操作系統(tǒng)類(lèi)型、期望數(shù)據(jù)庫(kù)版本和期望數(shù)據(jù)庫(kù)占用的內(nèi)存,所述根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板,包括:
判斷生成的所述m個(gè)數(shù)據(jù)庫(kù)模板中是否存操作系統(tǒng)類(lèi)型與所述期望操作系統(tǒng)類(lèi)型,數(shù)據(jù)庫(kù)版本與所述期望數(shù)據(jù)庫(kù)版本,且數(shù)據(jù)庫(kù)占用的內(nèi)存與所述期望數(shù)據(jù)庫(kù)占用的內(nèi)存都相同的數(shù)據(jù)庫(kù)模板;
若存在,從生成的所述m個(gè)數(shù)據(jù)庫(kù)模板中選擇操作系統(tǒng)類(lèi)型與所述期望操作系統(tǒng)類(lèi)型相同,數(shù)據(jù)庫(kù)版本與所述期望數(shù)據(jù)庫(kù)版本相同,且數(shù)據(jù)庫(kù)占用的內(nèi)存與所述期望數(shù)據(jù)庫(kù)占用的內(nèi)存相同的一個(gè)數(shù)據(jù)庫(kù)模板,作為目標(biāo)數(shù)據(jù)庫(kù)模板;
若不存在,從生成的所述m個(gè)數(shù)據(jù)庫(kù)模板中選擇操作系統(tǒng)類(lèi)型與所述期望操作系統(tǒng)類(lèi)型相同,且數(shù)據(jù)庫(kù)版本與所述期望數(shù)據(jù)庫(kù)版本相同的備選數(shù)據(jù)庫(kù)模板;
從選擇出的所述備選數(shù)據(jù)庫(kù)模板中選擇數(shù)據(jù)庫(kù)占用的內(nèi)存與所述期望數(shù)據(jù)庫(kù)占用的內(nèi)存的絕對(duì)差值最小,且數(shù)據(jù)庫(kù)占用的內(nèi)存小于所述期望數(shù)據(jù)庫(kù)占用的內(nèi)存的一個(gè)數(shù)據(jù)庫(kù)模板,作為目標(biāo)數(shù)據(jù)庫(kù)模板。
所述根據(jù)選擇的目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)之后,還包括:
獲取數(shù)據(jù)庫(kù)管理指令;
根據(jù)所述數(shù)據(jù)庫(kù)管理指令對(duì)生成的所述數(shù)據(jù)庫(kù)進(jìn)行管理。
本發(fā)明提供了一種數(shù)據(jù)庫(kù)的生成裝置,包括:
第一獲取模塊,用于獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息;其中,m為正整數(shù);
第一處理模塊,用于根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板;其中,i=1、2...m;
第二獲取模塊,用于獲取期望數(shù)據(jù)庫(kù)配置信息;
選擇模塊,用于根據(jù)獲取的所述期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板;
第二處理模塊,用于根據(jù)所述目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。
所述m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息包括操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存;
所述第一處理模塊包括:
第一生成單元,用于將獲取的所述第i組數(shù)據(jù)庫(kù)配置信息中包括的所述操作系統(tǒng)類(lèi)型、所述數(shù)據(jù)庫(kù)版本和所述數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本;
第二生成單元,用于運(yùn)行所述第i個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成所述第i個(gè)數(shù)據(jù)庫(kù)模板。
所述選擇模塊包括:
判斷單元,用于判斷獲取的所述期望數(shù)據(jù)庫(kù)配置信息是否符合預(yù)設(shè)規(guī)定;其中,所述預(yù)設(shè)規(guī)定用于排除不合理的所述期望數(shù)據(jù)庫(kù)配置信息;
處理單元,用于若獲取的所述期望數(shù)據(jù)配置信息符合所述預(yù)設(shè)規(guī)定,根據(jù)獲取的所述期望數(shù)據(jù)庫(kù)配置信息從生成的所述m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板。
所述期望數(shù)據(jù)庫(kù)配置信息包括期望操作系統(tǒng)類(lèi)型、期望數(shù)據(jù)庫(kù)版本和期望數(shù)據(jù)庫(kù)占用的內(nèi)存;所述處理單元具體用于:
判斷生成的所述m個(gè)數(shù)據(jù)庫(kù)模板中是否存操作系統(tǒng)類(lèi)型與所述期望操作系統(tǒng)類(lèi)型,數(shù)據(jù)庫(kù)版本與所述期望數(shù)據(jù)庫(kù)版本,且數(shù)據(jù)庫(kù)占用的內(nèi)存與所述期望數(shù)據(jù)庫(kù)占用的內(nèi)存都相同的數(shù)據(jù)庫(kù)模板;
若存在,從生成的所述m個(gè)數(shù)據(jù)庫(kù)模板中選擇操作系統(tǒng)類(lèi)型與所述期望操作系統(tǒng)類(lèi)型相同,數(shù)據(jù)庫(kù)版本與所述期望數(shù)據(jù)庫(kù)版本相同,且數(shù)據(jù)庫(kù)占用的內(nèi)存與所述期望數(shù)據(jù)庫(kù)占用的內(nèi)存相同的一個(gè)數(shù)據(jù)庫(kù)模板,作為目標(biāo)數(shù)據(jù)庫(kù)模板;
若不存在,從生成的所述m個(gè)數(shù)據(jù)庫(kù)模板中選擇操作系統(tǒng)類(lèi)型與所述期望操作系統(tǒng)類(lèi)型相同,且數(shù)據(jù)庫(kù)版本與所述期望數(shù)據(jù)庫(kù)版本相同的備選數(shù)據(jù)庫(kù)模板;
從選擇出的所述備選數(shù)據(jù)庫(kù)模板中選擇數(shù)據(jù)庫(kù)占用的內(nèi)存與所述期望數(shù)據(jù)庫(kù)占用的內(nèi)存的絕對(duì)差值最小,且數(shù)據(jù)庫(kù)占用的內(nèi)存小于所述期望數(shù)據(jù)庫(kù)占用的內(nèi)存的一個(gè)數(shù)據(jù)庫(kù)模板,作為目標(biāo)數(shù)據(jù)庫(kù)模板。
還包括:
第三獲取模塊,用于獲取數(shù)據(jù)庫(kù)管理指令;
第三處理模塊,用于根據(jù)所述數(shù)據(jù)庫(kù)管理指令對(duì)生成的所述數(shù)據(jù)庫(kù)進(jìn)行管理。
與現(xiàn)有技術(shù)相比,本發(fā)明至少包括獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息;其中,m為正整數(shù);根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板;其中,i=1、2...m;獲取期望數(shù)據(jù)庫(kù)配置信息;根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板;根據(jù)目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。從本發(fā)明提供的技術(shù)方案可見(jiàn),由于根據(jù)不同的數(shù)據(jù)庫(kù)配置信息生成了一系列數(shù)據(jù)庫(kù)模板,因此,在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),可以根據(jù)期望數(shù)據(jù)庫(kù)配置信息選擇擁有不同數(shù)據(jù)庫(kù)配置信息的數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù),從而簡(jiǎn)單、便捷地實(shí)現(xiàn)了數(shù)據(jù)庫(kù)的自動(dòng)生成,極大程度地節(jié)省了人力成本。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書(shū)中闡述,并且,部分地從說(shuō)明書(shū)中變得顯而易見(jiàn),或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在說(shuō)明書(shū)、權(quán)利要求書(shū)以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
附圖說(shuō)明
附圖用來(lái)提供對(duì)本發(fā)明技術(shù)方案的進(jìn)一步理解,并且構(gòu)成說(shuō)明書(shū)的一部分,與本申請(qǐng)的實(shí)施例一起用于解釋本發(fā)明的技術(shù)方案,并不構(gòu)成對(duì)本發(fā)明技術(shù)方案的限制。
圖1為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)庫(kù)的生成方法的流程示意圖;
圖2為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)庫(kù)的生成方法的流程示意圖;
圖3為本發(fā)明實(shí)施例提供的又一種數(shù)據(jù)庫(kù)的生成方法的流程示意圖;
圖4為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)庫(kù)的生成裝置的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)庫(kù)的生成裝置的結(jié)構(gòu)示意圖;
圖6為本發(fā)明實(shí)施例提供的又一種數(shù)據(jù)庫(kù)的生成裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
本發(fā)明實(shí)施例提供一種數(shù)據(jù)庫(kù)的生成方法,如圖1所示,該方法包括:
步驟101、獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息。
其中,m為正整數(shù)。
需要說(shuō)明的是,m組互不相同的數(shù)據(jù)庫(kù)配置信息可以是由用戶輸入的。
具體的,數(shù)據(jù)庫(kù)可以是oracle數(shù)據(jù)庫(kù),它是數(shù)據(jù)庫(kù)領(lǐng)域中一直是處于領(lǐng)先地位的產(chǎn)品,是目前世界上最流行的數(shù)據(jù)庫(kù)的一種,它可移植性好、使用方便、功能強(qiáng),適用于各類(lèi)大、中、小各種微機(jī)環(huán)境。
步驟102、根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板。
其中,i=1、2...m。
具體的,根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板指的是:根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第1組數(shù)據(jù)庫(kù)配置信息生成第1個(gè)數(shù)據(jù)庫(kù)模板;根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第2組數(shù)據(jù)庫(kù)配置信息生成第2個(gè)數(shù)據(jù)庫(kù)模板...根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第m組數(shù)據(jù)庫(kù)配置信息生成第m個(gè)數(shù)據(jù)庫(kù)模板。所生成的數(shù)據(jù)庫(kù)模板適用于云計(jì)算管理平臺(tái)openstack,openstack是一個(gè)旨在為客戶提供云服務(wù)的開(kāi)源項(xiàng)目,由計(jì)算、鏡像、存儲(chǔ)、網(wǎng)絡(luò)等幾個(gè)主要的組件組合起來(lái)完成云服務(wù)相關(guān)工作,其目標(biāo)是為全球數(shù)以億計(jì)的用戶提供實(shí)施簡(jiǎn)單、可大規(guī)模擴(kuò)展、豐富、標(biāo)準(zhǔn)統(tǒng)一的云計(jì)算管理平臺(tái)。
具體的,可以將所要生成的數(shù)據(jù)庫(kù)模板的信息編寫(xiě)成腳本語(yǔ)言,從而以一鍵式運(yùn)行該腳本的方式生成數(shù)據(jù)庫(kù)模板,其中,腳本語(yǔ)言中包含數(shù)據(jù)庫(kù)依賴包批量安裝程序、初始化數(shù)據(jù)庫(kù)用戶以及用戶組信息、初始化數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)相關(guān)配置文件、安裝數(shù)據(jù)庫(kù)服務(wù)程序、安裝數(shù)據(jù)庫(kù)監(jiān)聽(tīng)程序、安裝數(shù)據(jù)庫(kù)的表管理工具程序、注冊(cè)數(shù)據(jù)庫(kù)開(kāi)關(guān)機(jī)服務(wù)程序以及支持?jǐn)?shù)據(jù)庫(kù)隨系統(tǒng)啟動(dòng)程序。
步驟103、獲取期望數(shù)據(jù)庫(kù)配置信息。
需要說(shuō)明的是,期望數(shù)據(jù)庫(kù)配置信息可以是由用戶輸入的。
步驟104、根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板。
具體的,根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板指的是:從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)符合期望數(shù)據(jù)庫(kù)配置信息的數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板。
步驟105、根據(jù)選擇的目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。
本發(fā)明實(shí)施例所提供的數(shù)據(jù)庫(kù)的生成方法,獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息;其中,m為正整數(shù);根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板;其中,i=1、2...m;獲取期望數(shù)據(jù)庫(kù)配置信息;根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板;根據(jù)目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。從本發(fā)明提供的技術(shù)方案可見(jiàn),由于根據(jù)不同的數(shù)據(jù)庫(kù)配置信息生成了一系列數(shù)據(jù)庫(kù)模板,因此,在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),可以根據(jù)期望數(shù)據(jù)庫(kù)配置信息選擇擁有不同數(shù)據(jù)庫(kù)配置信息的數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù),從而簡(jiǎn)單、便捷地實(shí)現(xiàn)了數(shù)據(jù)庫(kù)的自動(dòng)生成,極大程度地節(jié)省了人力成本。
本發(fā)明實(shí)施例提供另一種數(shù)據(jù)庫(kù)的生成方法,其中,如圖2所示,該方法包括:
步驟201、獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息。
其中,m為正整數(shù);m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息包括操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存;i=1、2...m。
具體的,由于每組數(shù)據(jù)庫(kù)配置信息都包括操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存這三種信息,因此m組互不相同的數(shù)據(jù)庫(kù)配置信息指的是:m組數(shù)據(jù)庫(kù)配置信息中任意一組數(shù)據(jù)庫(kù)配置信息中的三種信息與其他組數(shù)據(jù)庫(kù)配置信息中的三種信息不完全相同;其中,操作系統(tǒng)類(lèi)型包括windows操作系統(tǒng)和linux操作系統(tǒng)等。
步驟202、將獲取的第i組數(shù)據(jù)庫(kù)配置信息中包括的操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本。
具體的,預(yù)設(shè)腳本是用于生成數(shù)據(jù)庫(kù)模板的腳本,預(yù)設(shè)腳本中關(guān)于操作系統(tǒng)類(lèi)型的執(zhí)行語(yǔ)句、關(guān)于數(shù)據(jù)庫(kù)版本的執(zhí)行語(yǔ)句和關(guān)于數(shù)據(jù)庫(kù)占用的內(nèi)存的執(zhí)行語(yǔ)句中的屬性值都是需要具體填入的,以生成完整的數(shù)據(jù)庫(kù)模板的腳本。將獲取的第i組數(shù)據(jù)庫(kù)配置信息中包括的操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本指的是:將獲取的第i組數(shù)據(jù)庫(kù)配置信息中包括的操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本;將獲取的第i組數(shù)據(jù)庫(kù)配置信息中包括的操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本...將獲取的第i組數(shù)據(jù)庫(kù)配置信息中包括的操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本。
步驟203、運(yùn)行第i個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成第i個(gè)數(shù)據(jù)庫(kù)模板。
具體的,運(yùn)行第i個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成第i個(gè)數(shù)據(jù)庫(kù)模板指的是:運(yùn)行第1個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成第1個(gè)數(shù)據(jù)庫(kù)模板;運(yùn)行第2個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成第2個(gè)數(shù)據(jù)庫(kù)模板...運(yùn)行第m個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成第m個(gè)數(shù)據(jù)庫(kù)模板。
具體的,生成m個(gè)數(shù)據(jù)庫(kù)模板后,可以將m個(gè)數(shù)據(jù)庫(kù)模板上傳至云管理平臺(tái),由云管理平臺(tái)對(duì)其進(jìn)行統(tǒng)一的管理。云管理平臺(tái)是一種功能較為完善的虛擬化管理平臺(tái),使用云管理平臺(tái)可以輕易地實(shí)現(xiàn)與組織架構(gòu)對(duì)接等工作,其中,云管理平臺(tái)中采用的計(jì)算機(jī)編程語(yǔ)言是java。
步驟204、獲取期望數(shù)據(jù)庫(kù)配置信息。
步驟205、判斷獲取的期望數(shù)據(jù)庫(kù)配置信息是否符合預(yù)設(shè)規(guī)定。
其中,預(yù)設(shè)規(guī)定用于排除不合理的期望數(shù)據(jù)庫(kù)配置信息。
步驟206、若獲取的期望數(shù)據(jù)配置信息符合預(yù)設(shè)規(guī)定,根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板。
步驟207、根據(jù)選擇的目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。
需要說(shuō)明的是,若生成的m個(gè)數(shù)據(jù)庫(kù)模板上傳至云管理平臺(tái),步驟204~步驟207均可在云管理平臺(tái)中實(shí)現(xiàn)。
本發(fā)明實(shí)施例所提供的數(shù)據(jù)庫(kù)的生成方法,獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息;其中,m為正整數(shù);根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板;其中,i=1、2...m;獲取期望數(shù)據(jù)庫(kù)配置信息;根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板;根據(jù)目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。從本發(fā)明提供的技術(shù)方案可見(jiàn),由于根據(jù)不同的數(shù)據(jù)庫(kù)配置信息生成了一系列數(shù)據(jù)庫(kù)模板,因此,在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),可以根據(jù)期望數(shù)據(jù)庫(kù)配置信息選擇擁有不同數(shù)據(jù)庫(kù)配置信息的數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù),從而簡(jiǎn)單、便捷地實(shí)現(xiàn)了數(shù)據(jù)庫(kù)的自動(dòng)生成,極大程度地節(jié)省了人力成本。
本發(fā)明實(shí)施例提供又一種數(shù)據(jù)庫(kù)的生成方法,其中,m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息包括操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存,期望數(shù)據(jù)庫(kù)配置信息包括期望操作系統(tǒng)類(lèi)型、期望數(shù)據(jù)庫(kù)版本和期望數(shù)據(jù)庫(kù)占用的內(nèi)存,如圖3所示,該方法包括:
步驟301、獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息。
其中,m為正整數(shù);m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息包括操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存;i=1、2...m。
步驟302、將獲取的第i組數(shù)據(jù)庫(kù)配置信息中包括的操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本。
其中,i=1、2...m。
步驟303、運(yùn)行第i個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成第i個(gè)數(shù)據(jù)庫(kù)模板。
步驟304、獲取期望數(shù)據(jù)庫(kù)配置信息。
步驟305、判斷獲取的期望數(shù)據(jù)庫(kù)配置信息是否符合預(yù)設(shè)規(guī)定。
其中,預(yù)設(shè)規(guī)定用于排除不合理的期望數(shù)據(jù)庫(kù)配置信息。
步驟306、若獲取的期望數(shù)據(jù)配置信息符合預(yù)設(shè)規(guī)定,判斷生成的m個(gè)數(shù)據(jù)庫(kù)模板中是否存操作系統(tǒng)類(lèi)型與期望操作系統(tǒng)類(lèi)型,數(shù)據(jù)庫(kù)版本與期望數(shù)據(jù)庫(kù)版本,且數(shù)據(jù)庫(kù)占用的內(nèi)存與期望數(shù)據(jù)庫(kù)占用的內(nèi)存都相同的數(shù)據(jù)庫(kù)模板。
具體的,若期望數(shù)據(jù)配置信息不符合預(yù)設(shè)規(guī)定,則不再執(zhí)行其他任何操作,結(jié)束整個(gè)流程。
步驟307、若存在,從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇操作系統(tǒng)類(lèi)型與期望操作系統(tǒng)類(lèi)型相同,數(shù)據(jù)庫(kù)版本與期望數(shù)據(jù)庫(kù)版本相同,且數(shù)據(jù)庫(kù)占用的內(nèi)存與期望數(shù)據(jù)庫(kù)占用的內(nèi)存相同的一個(gè)數(shù)據(jù)庫(kù)模板,作為目標(biāo)數(shù)據(jù)庫(kù)模板。
步驟308、若不存在,從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇操作系統(tǒng)類(lèi)型與期望操作系統(tǒng)類(lèi)型相同,且數(shù)據(jù)庫(kù)版本與期望數(shù)據(jù)庫(kù)版本相同的備選數(shù)據(jù)庫(kù)模板。
步驟309、從選擇出的備選數(shù)據(jù)庫(kù)模板中選擇數(shù)據(jù)庫(kù)占用的內(nèi)存與期望數(shù)據(jù)庫(kù)占用的內(nèi)存的絕對(duì)差值最小,且數(shù)據(jù)庫(kù)占用的內(nèi)存小于期望數(shù)據(jù)庫(kù)占用的內(nèi)存的一個(gè)數(shù)據(jù)庫(kù)模板,作為目標(biāo)數(shù)據(jù)庫(kù)模板。
需要說(shuō)明的是,步驟307和步驟308、309是并列步驟,執(zhí)行步驟307,或者執(zhí)行步驟308、309。
具體的,只有當(dāng)數(shù)據(jù)庫(kù)模板的數(shù)據(jù)庫(kù)占用的內(nèi)存小于期望數(shù)據(jù)庫(kù)占用的內(nèi)存時(shí),才能根據(jù)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。
步驟310、根據(jù)目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。
步驟311、獲取數(shù)據(jù)庫(kù)管理指令。
需要說(shuō)明的是,數(shù)據(jù)庫(kù)管理命令可以是用戶發(fā)送的。
具體的,數(shù)據(jù)庫(kù)管理指令包括數(shù)據(jù)庫(kù)刪除命令、數(shù)據(jù)庫(kù)的重啟命令、數(shù)據(jù)庫(kù)的關(guān)閉命令、數(shù)據(jù)庫(kù)的占用內(nèi)存大小的調(diào)整命令和數(shù)據(jù)庫(kù)的備份命令;其中,當(dāng)數(shù)據(jù)庫(kù)在運(yùn)行過(guò)程中存儲(chǔ)日志的存儲(chǔ)空間滿后,造成數(shù)據(jù)庫(kù)無(wú)法繼續(xù)運(yùn)行,從而需要根據(jù)數(shù)據(jù)庫(kù)的重啟命令將日志轉(zhuǎn)移至另一存儲(chǔ)空間以使得數(shù)據(jù)庫(kù)能夠繼續(xù)運(yùn)行;當(dāng)數(shù)據(jù)庫(kù)用于存儲(chǔ)日志的存儲(chǔ)空間在初次分配時(shí)較小,但在后期使用過(guò)程中所分配存儲(chǔ)空間無(wú)法使得數(shù)據(jù)庫(kù)在一段時(shí)間內(nèi)正常運(yùn)行,從而需要根據(jù)數(shù)據(jù)庫(kù)的占用內(nèi)存大小的調(diào)整命令將存儲(chǔ)空間進(jìn)行調(diào)整。
步驟312、根據(jù)數(shù)據(jù)庫(kù)管理指令對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理。
本發(fā)明實(shí)施例所提供的數(shù)據(jù)庫(kù)的生成方法,獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息;其中,m為正整數(shù);根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板;其中,i=1、2...m;獲取期望數(shù)據(jù)庫(kù)配置信息;根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板;根據(jù)目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。從本發(fā)明提供的技術(shù)方案可見(jiàn),由于根據(jù)不同的數(shù)據(jù)庫(kù)配置信息生成了一系列數(shù)據(jù)庫(kù)模板,因此,在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),可以根據(jù)期望數(shù)據(jù)庫(kù)配置信息選擇擁有不同數(shù)據(jù)庫(kù)配置信息的數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù),從而簡(jiǎn)單、便捷地實(shí)現(xiàn)了數(shù)據(jù)庫(kù)的自動(dòng)生成,極大程度地節(jié)省了人力成本。
本發(fā)明實(shí)施例提供一種數(shù)據(jù)庫(kù)的生成裝置,如圖4所示,該生成裝置4包括:
第一獲取模塊41,用于獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息;其中,m為正整數(shù)。
第一處理模塊42,用于根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板;其中,i=1、2...m。
第二獲取模塊43,用于獲取期望數(shù)據(jù)庫(kù)配置信息。
選擇模塊44,用于根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板。
第二處理模塊45,用于根據(jù)目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。
進(jìn)一步,在圖4對(duì)應(yīng)的實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供另一種數(shù)據(jù)庫(kù)的生成裝置,如圖5所示,第一處理模塊42包括:
第一生成單元421,用于將獲取的第i組數(shù)據(jù)庫(kù)配置信息中包括的操作系統(tǒng)類(lèi)型、數(shù)據(jù)庫(kù)版本和數(shù)據(jù)庫(kù)占用的內(nèi)存填入預(yù)設(shè)腳本的對(duì)應(yīng)位置,生成第i個(gè)數(shù)據(jù)庫(kù)模板的腳本。
第二生成單元422,用于運(yùn)行第i個(gè)數(shù)據(jù)庫(kù)模板的腳本,生成第i個(gè)數(shù)據(jù)庫(kù)模板。
選擇模塊44包括:
判斷單元441,用于判斷獲取的期望數(shù)據(jù)庫(kù)配置信息是否符合預(yù)設(shè)規(guī)定;其中,預(yù)設(shè)規(guī)定用于排除不合理的期望數(shù)據(jù)庫(kù)配置信息。
處理單元442,用于若獲取的期望數(shù)據(jù)配置信息符合預(yù)設(shè)規(guī)定,根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板。
進(jìn)一步,期望數(shù)據(jù)庫(kù)配置信息包括期望操作系統(tǒng)類(lèi)型、期望數(shù)據(jù)庫(kù)版本和期望數(shù)據(jù)庫(kù)占用的內(nèi)存。
處理單元442具體用于:
判斷生成的m個(gè)數(shù)據(jù)庫(kù)模板中是否存操作系統(tǒng)類(lèi)型與期望操作系統(tǒng)類(lèi)型,數(shù)據(jù)庫(kù)版本與期望數(shù)據(jù)庫(kù)版本,且數(shù)據(jù)庫(kù)占用的內(nèi)存與期望數(shù)據(jù)庫(kù)占用的內(nèi)存都相同的數(shù)據(jù)庫(kù)模板。
若存在,從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇操作系統(tǒng)類(lèi)型與期望操作系統(tǒng)類(lèi)型相同,數(shù)據(jù)庫(kù)版本與期望數(shù)據(jù)庫(kù)版本相同,且數(shù)據(jù)庫(kù)占用的內(nèi)存與期望數(shù)據(jù)庫(kù)占用的內(nèi)存相同的一個(gè)數(shù)據(jù)庫(kù)模板,作為目標(biāo)數(shù)據(jù)庫(kù)模板。
若不存在,從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇操作系統(tǒng)類(lèi)型與期望操作系統(tǒng)類(lèi)型相同,且數(shù)據(jù)庫(kù)版本與期望數(shù)據(jù)庫(kù)版本相同的備選數(shù)據(jù)庫(kù)模板。
從選擇出的備選數(shù)據(jù)庫(kù)模板中選擇數(shù)據(jù)庫(kù)占用的內(nèi)存與期望數(shù)據(jù)庫(kù)占用的內(nèi)存的絕對(duì)差值最小,且數(shù)據(jù)庫(kù)占用的內(nèi)存小于期望數(shù)據(jù)庫(kù)占用的內(nèi)存的一個(gè)數(shù)據(jù)庫(kù)模板,作為目標(biāo)數(shù)據(jù)庫(kù)模板。
進(jìn)一步,在圖5對(duì)應(yīng)的實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供又一種數(shù)據(jù)庫(kù)的生成裝置,如圖6所示,該生成裝置4還包括:
第三獲取模塊46,用于獲取數(shù)據(jù)庫(kù)管理指令。
第三處理模塊47,用于根據(jù)數(shù)據(jù)庫(kù)管理指令對(duì)生成的數(shù)據(jù)庫(kù)進(jìn)行管理。
本發(fā)明實(shí)施例所提供的數(shù)據(jù)庫(kù)的生成裝置,獲取m組互不相同的數(shù)據(jù)庫(kù)配置信息;其中,m為正整數(shù);根據(jù)獲取的m組數(shù)據(jù)庫(kù)配置信息中的第i組數(shù)據(jù)庫(kù)配置信息生成第i個(gè)數(shù)據(jù)庫(kù)模板;其中,i=1、2...m;獲取期望數(shù)據(jù)庫(kù)配置信息;根據(jù)獲取的期望數(shù)據(jù)庫(kù)配置信息從生成的m個(gè)數(shù)據(jù)庫(kù)模板中選擇一個(gè)數(shù)據(jù)庫(kù)模板作為目標(biāo)數(shù)據(jù)庫(kù)模板;根據(jù)目標(biāo)數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù)。從本發(fā)明提供的技術(shù)方案可見(jiàn),由于根據(jù)不同的數(shù)據(jù)庫(kù)配置信息生成了一系列數(shù)據(jù)庫(kù)模板,因此,在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),可以根據(jù)期望數(shù)據(jù)庫(kù)配置信息選擇擁有不同數(shù)據(jù)庫(kù)配置信息的數(shù)據(jù)庫(kù)模板生成數(shù)據(jù)庫(kù),從而簡(jiǎn)單、便捷地實(shí)現(xiàn)了數(shù)據(jù)庫(kù)的自動(dòng)生成,極大程度地節(jié)省了人力成本。。
在實(shí)際應(yīng)用中,所述第一獲取模塊41、第一處理模塊42、第一生成單元421、第二生成單元422、第二獲取模塊43、選擇模塊44、判斷單元441、處理單元442、第二處理模塊45、第三獲取模塊46和第三處理模塊46均可由位于數(shù)據(jù)庫(kù)的生成裝置中的中央處理器(centralprocessingunit,cpu)、微處理器(microprocessorunit,mpu)、數(shù)字信號(hào)處理器(digitalsignalprocessor,dsp)或現(xiàn)場(chǎng)可編程門(mén)陣列(fieldprogrammablegatearray,fpga)等實(shí)現(xiàn)。
雖然本發(fā)明所揭露的實(shí)施方式如上,但所述的內(nèi)容僅為便于理解本發(fā)明而采用的實(shí)施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實(shí)施的形式及細(xì)節(jié)上進(jìn)行任何的修改與變化,但本發(fā)明的專(zhuān)利保護(hù)范圍,仍須以所附的權(quán)利要求書(shū)所界定的范圍為準(zhǔn)。