本發(fā)明屬于數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域,特別是涉及一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法和裝置。
背景技術(shù):
數(shù)據(jù)庫(kù)是企業(yè)數(shù)據(jù)存儲(chǔ)的主要方式,隨著互聯(lián)網(wǎng)的發(fā)展和企業(yè)業(yè)務(wù)的增長(zhǎng),對(duì)數(shù)據(jù)庫(kù)存儲(chǔ)容量的要求越來(lái)越高,數(shù)據(jù)庫(kù)主機(jī)本身提供的存儲(chǔ)空間已不能滿足大多數(shù)業(yè)務(wù)的需要,因此外掛存儲(chǔ)設(shè)備增加數(shù)據(jù)庫(kù)存儲(chǔ)容量的做法越來(lái)越普遍,由此給數(shù)據(jù)庫(kù)管理員(dba)帶來(lái)的一個(gè)問(wèn)題:要了解數(shù)據(jù)庫(kù)后端使用的存儲(chǔ),才能更好地進(jìn)行數(shù)據(jù)庫(kù)調(diào)優(yōu)、故障排查、問(wèn)題定位。
目前數(shù)據(jù)庫(kù)管理員與存儲(chǔ)管理員的職責(zé)有兩個(gè)人負(fù)責(zé),而且虛擬化技術(shù)大行其道,導(dǎo)致dba并不知道自己的數(shù)據(jù)實(shí)際存放的位置,現(xiàn)有的數(shù)據(jù)庫(kù)管理員了解數(shù)據(jù)庫(kù)后端存儲(chǔ)使用情況方式,主要是通過(guò)與存儲(chǔ)管理員進(jìn)行溝通來(lái)獲取,在數(shù)據(jù)庫(kù)部署初期,存儲(chǔ)管理員根據(jù)數(shù)據(jù)庫(kù)需要為數(shù)據(jù)庫(kù)規(guī)劃存儲(chǔ)容量,在數(shù)據(jù)庫(kù)使用中期需要擴(kuò)容時(shí),存儲(chǔ)管理員為數(shù)據(jù)庫(kù)再分配存儲(chǔ)空間。在數(shù)據(jù)庫(kù)維護(hù)調(diào)優(yōu)階段,數(shù)據(jù)庫(kù)管理員需要知道當(dāng)前數(shù)據(jù)庫(kù)在部署初期和中期擴(kuò)容時(shí)存儲(chǔ)管理員為數(shù)據(jù)庫(kù)分配了哪個(gè)存儲(chǔ)陣列的哪個(gè)卷等存儲(chǔ)信息,而且要確保當(dāng)前數(shù)據(jù)庫(kù)使用的存儲(chǔ)情況與前期分配情況相符才能更好地進(jìn)行數(shù)據(jù)庫(kù)調(diào)優(yōu),更準(zhǔn)確地進(jìn)行問(wèn)題定位。這種通過(guò)數(shù)據(jù)庫(kù)管理員與存儲(chǔ)管理員交流獲取存儲(chǔ)信息方式勢(shì)必在效率上大打折扣,而且對(duì)發(fā)生變化的存儲(chǔ)信息獲取的及時(shí)性得不到保證,對(duì)dba的日常工作帶來(lái)了很多不便。
技術(shù)實(shí)現(xiàn)要素:
為解決上述問(wèn)題,本發(fā)明提供了一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法和裝置,能夠協(xié)作數(shù)據(jù)庫(kù)管理員的日常數(shù)據(jù)庫(kù)維護(hù)工作,提高獲取數(shù)據(jù)庫(kù)使用存儲(chǔ)的信息的效率,保證數(shù)據(jù)庫(kù)管理員及時(shí)準(zhǔn)確的了解存儲(chǔ)信息的變化。
本發(fā)明提供的一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法,包括:
獲取數(shù)據(jù)庫(kù)文件中的磁盤(pán)信息;
依次遍歷每個(gè)所述磁盤(pán);
判斷所述磁盤(pán)是否為虛擬磁盤(pán),如果是,則判斷所述虛擬磁盤(pán)對(duì)應(yīng)的是否為存儲(chǔ)卷類(lèi)型的磁盤(pán);
如果所述虛擬磁盤(pán)對(duì)應(yīng)的是存儲(chǔ)卷類(lèi)型的磁盤(pán),則獲取所述磁盤(pán)的第一wwn信息;
通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;
當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ)。
優(yōu)選的,在上述感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法中,所述判斷所述磁盤(pán)是否為虛擬磁盤(pán)之后,還包括:
如果否,則判斷所述磁盤(pán)是否為存儲(chǔ)卷類(lèi)型的磁盤(pán),如果是,則獲取所述磁盤(pán)的第一wwn信息;
通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;
當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ)。
優(yōu)選的,在上述感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法中,所述判斷所述虛擬磁盤(pán)對(duì)應(yīng)的是否為存儲(chǔ)卷類(lèi)型的磁盤(pán)之后,還包括:
如果所述虛擬磁盤(pán)對(duì)應(yīng)的是主機(jī)本地普通磁盤(pán),則直接遍歷所述主機(jī)本地普通磁盤(pán)。
優(yōu)選的,在上述感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法中,所述通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息之后,還包括:
當(dāng)所述第二wwn信息中不包括與所述第一wwn信息相匹配的信息時(shí),則添加與具有所述第一wwn信息的存儲(chǔ)卷的信息。
優(yōu)選的,在上述感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法中,所述獲取所述磁盤(pán)的第一wwn信息包括:
配置vmwareexsi主機(jī)信息;
通過(guò)vmwaresdk獲取所述exsi主機(jī)上虛擬機(jī)名稱及磁盤(pán)名稱和wwn信息;
根據(jù)所述exsi主機(jī)的主機(jī)名稱和所述磁盤(pán)名稱得到所述第一wwn信息。
優(yōu)選的,在上述感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法中,所述通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息包括:
配置存儲(chǔ)陣列主機(jī)的ip、用戶名和密碼;
通過(guò)所述存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)陣列名稱、卷名稱和wwn信息;
根據(jù)所述存儲(chǔ)陣列名稱、所述卷名稱和所述wwn信息得到所述第二wwn信息。
優(yōu)選的,在上述感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法中,所述獲取數(shù)據(jù)庫(kù)文件中的磁盤(pán)信息之前,還包括:
通過(guò)數(shù)據(jù)庫(kù)主機(jī)名稱、端口號(hào)、oracle安裝主目錄、管理員用戶名、密碼數(shù)據(jù)庫(kù)實(shí)例信息配置數(shù)據(jù)庫(kù)實(shí)例;
獲取數(shù)據(jù)庫(kù)文件。
本發(fā)明提供的一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置,包括:
第一獲取單元,用于獲取數(shù)據(jù)庫(kù)文件中的磁盤(pán)信息;
遍歷單元,用于依次遍歷每個(gè)所述磁盤(pán);
判斷單元,用于判斷所述磁盤(pán)是否為虛擬磁盤(pán),如果是,則判斷所述虛擬磁盤(pán)對(duì)應(yīng)的是否為存儲(chǔ)卷類(lèi)型的磁盤(pán);
第二獲取單元,用于如果所述虛擬磁盤(pán)對(duì)應(yīng)的是存儲(chǔ)卷類(lèi)型的磁盤(pán),則獲取所述磁盤(pán)的第一wwn信息;
第三獲取單元,用于通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;
第四獲取單元,用于當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ)。
優(yōu)選的,在上述感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置中,所述判斷單元還用于當(dāng)判斷所述磁盤(pán)不是虛擬磁盤(pán)之后,則判斷所述磁盤(pán)是否為存儲(chǔ)卷類(lèi)型的磁盤(pán),如果是,則獲取所述磁盤(pán)的第一wwn信息;通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ)。
優(yōu)選的,在上述感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置中,所述第二獲取單元還用于如果所述虛擬磁盤(pán)對(duì)應(yīng)的是主機(jī)本地普通磁盤(pán),則直接遍歷所述主機(jī)本地普通磁盤(pán)。
通過(guò)上述描述可知,本發(fā)明提供的上述感知獲取數(shù)據(jù)庫(kù)存儲(chǔ)的方法和裝置,由于包括獲取數(shù)據(jù)庫(kù)文件中的磁盤(pán)信息;依次遍歷每個(gè)所述磁盤(pán);判斷所述磁盤(pán)是否為虛擬磁盤(pán),如果是,則判斷所述虛擬磁盤(pán)對(duì)應(yīng)的是否為存儲(chǔ)卷類(lèi)型的磁盤(pán);如果所述虛擬磁盤(pán)對(duì)應(yīng)的是存儲(chǔ)卷類(lèi)型的磁盤(pán),則獲取所述磁盤(pán)的第一wwn信息;通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ),因此能夠協(xié)作數(shù)據(jù)庫(kù)管理員的日常數(shù)據(jù)庫(kù)維護(hù)工作,提高獲取數(shù)據(jù)庫(kù)使用存儲(chǔ)的信息的效率,保證數(shù)據(jù)庫(kù)管理員及時(shí)準(zhǔn)確的了解存儲(chǔ)信息的變化。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本申請(qǐng)實(shí)施例提供的第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的示意圖;
圖2為本申請(qǐng)實(shí)施例提供的第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置的示意圖;
圖3為一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的具體例子的流程圖。
具體實(shí)施方式
本發(fā)明的核心思想在于提供一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法和裝置,能夠協(xié)作數(shù)據(jù)庫(kù)管理員的日常數(shù)據(jù)庫(kù)維護(hù)工作,提高獲取數(shù)據(jù)庫(kù)使用存儲(chǔ)的信息的效率,保證數(shù)據(jù)庫(kù)管理員及時(shí)準(zhǔn)確的了解存儲(chǔ)信息的變化。
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本申請(qǐng)實(shí)施例提供的第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法如圖1所示,圖1為本申請(qǐng)實(shí)施例提供的第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的示意圖,該方法包括如下步驟:
s1:獲取數(shù)據(jù)庫(kù)文件中的磁盤(pán)信息;
s2:依次遍歷每個(gè)所述磁盤(pán);
s3:判斷所述磁盤(pán)是否為虛擬磁盤(pán),如果是,則判斷所述虛擬磁盤(pán)對(duì)應(yīng)的是否為存儲(chǔ)卷類(lèi)型的磁盤(pán);
s4:如果所述虛擬磁盤(pán)對(duì)應(yīng)的是存儲(chǔ)卷類(lèi)型的磁盤(pán),則獲取所述磁盤(pán)的第一wwn信息;
s5:通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;
s6:當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ)。
利用上述步驟,就能夠自動(dòng)獲取三種類(lèi)型的磁盤(pán)的信息,即使是虛擬磁盤(pán),也能利用wwn信息的比較得到其對(duì)應(yīng)的實(shí)際存儲(chǔ)位置。
通過(guò)上述描述可知,本申請(qǐng)實(shí)施例提供的上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法,由于包括獲取數(shù)據(jù)庫(kù)文件中的磁盤(pán)信息;依次遍歷每個(gè)所述磁盤(pán);判斷所述磁盤(pán)是否為虛擬磁盤(pán),如果是,則判斷所述虛擬磁盤(pán)對(duì)應(yīng)的是否為存儲(chǔ)卷類(lèi)型的磁盤(pán);如果所述虛擬磁盤(pán)對(duì)應(yīng)的是存儲(chǔ)卷類(lèi)型的磁盤(pán),則獲取所述磁盤(pán)的第一wwn信息;通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ),因此能夠協(xié)作數(shù)據(jù)庫(kù)管理員的日常數(shù)據(jù)庫(kù)維護(hù)工作,提高獲取數(shù)據(jù)庫(kù)使用存儲(chǔ)的信息的效率,保證數(shù)據(jù)庫(kù)管理員及時(shí)準(zhǔn)確的了解存儲(chǔ)信息的變化。
本申請(qǐng)實(shí)施例提供的第二種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法,是在上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的基礎(chǔ)上,還包括如下技術(shù)特征:
所述判斷所述磁盤(pán)是否為虛擬磁盤(pán)之后,還包括:
如果否,則判斷所述磁盤(pán)是否為存儲(chǔ)卷類(lèi)型的磁盤(pán),如果是,則獲取所述磁盤(pán)的第一wwn信息;
通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;
當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ)。
需要說(shuō)明的是,該實(shí)施例是針對(duì)存儲(chǔ)卷類(lèi)型的磁盤(pán)的感知方式,利用該步驟,能夠有效的獲取存儲(chǔ)卷類(lèi)型的磁盤(pán)的存儲(chǔ)信息。
本申請(qǐng)實(shí)施例提供的第三種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法,是在上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的基礎(chǔ)上,還包括如下技術(shù)特征:
所述判斷所述虛擬磁盤(pán)對(duì)應(yīng)的是否為存儲(chǔ)卷類(lèi)型的磁盤(pán)之后,還包括:
如果所述虛擬磁盤(pán)對(duì)應(yīng)的是主機(jī)本地普通磁盤(pán),則直接遍歷所述主機(jī)本地普通磁盤(pán)。
需要說(shuō)明的是,這種情況是針對(duì)主機(jī)本地普通磁盤(pán)對(duì)應(yīng)的虛擬磁盤(pán)的情形,在這種情形下,直接便利主機(jī)本地磁盤(pán)即可,更加方便,無(wú)需更多操作。
本申請(qǐng)實(shí)施例提供的第四種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法,是在上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的基礎(chǔ)上,還包括如下技術(shù)特征:
所述通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息之后,還包括:
當(dāng)所述第二wwn信息中不包括與所述第一wwn信息相匹配的信息時(shí),則添加與具有所述第一wwn信息的存儲(chǔ)卷的信息。
也就是說(shuō),如果出現(xiàn)存儲(chǔ)陣列卷類(lèi)型的磁盤(pán)根據(jù)wwn信息在當(dāng)前配置的存儲(chǔ)下找不到相同的wwn卷,則給出提示信息,說(shuō)明當(dāng)前網(wǎng)絡(luò)中存在未添加配置的其他存儲(chǔ),則需要進(jìn)行添加。
本申請(qǐng)實(shí)施例提供的第五種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法,是在上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的基礎(chǔ)上,還包括如下技術(shù)特征:
所述獲取所述磁盤(pán)的第一wwn信息包括:
配置vmwareexsi主機(jī)信息;
通過(guò)vmwaresdk獲取所述exsi主機(jī)上虛擬機(jī)名稱及磁盤(pán)名稱和wwn信息;
根據(jù)所述exsi主機(jī)的主機(jī)名稱和所述磁盤(pán)名稱得到所述第一wwn信息。
本申請(qǐng)實(shí)施例提供的第六種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法,是在上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的基礎(chǔ)上,還包括如下技術(shù)特征:
所述通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息包括:
配置存儲(chǔ)陣列主機(jī)的ip、用戶名和密碼;
通過(guò)所述存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)陣列名稱、卷名稱和wwn信息;
根據(jù)所述存儲(chǔ)陣列名稱、所述卷名稱和所述wwn信息得到所述第二wwn信息。
本申請(qǐng)實(shí)施例提供的第七種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法,是在上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的基礎(chǔ)上,還包括如下技術(shù)特征:
所述獲取數(shù)據(jù)庫(kù)文件中的磁盤(pán)信息之前,還包括:
通過(guò)數(shù)據(jù)庫(kù)主機(jī)名稱、端口號(hào)、oracle安裝主目錄、管理員用戶名、密碼數(shù)據(jù)庫(kù)實(shí)例信息配置數(shù)據(jù)庫(kù)實(shí)例;
獲取數(shù)據(jù)庫(kù)文件。
下面以一個(gè)具體的例子對(duì)上述步驟進(jìn)行說(shuō)明,參考圖3,圖3為一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的方法的具體例子的流程圖。首先,配置數(shù)據(jù)庫(kù)實(shí)例,根據(jù)數(shù)據(jù)庫(kù)實(shí)例連接數(shù)據(jù)庫(kù),獲取數(shù)據(jù)庫(kù)文件路徑信息,從路徑信息中獲取對(duì)應(yīng)的磁盤(pán)盤(pán)符信息,確定數(shù)據(jù)庫(kù)使用了主機(jī)的哪幾個(gè)盤(pán)符,即數(shù)據(jù)庫(kù)文件存在了主機(jī)的哪幾個(gè)盤(pán)符上。通過(guò)利用操作系統(tǒng)命令獲取當(dāng)前數(shù)據(jù)庫(kù)主機(jī)的所有磁盤(pán)信息,能獲取到各個(gè)磁盤(pán)的類(lèi)型(主機(jī)本地普通硬盤(pán)、虛擬磁盤(pán)、外掛存儲(chǔ)卷磁盤(pán)),若是虛擬磁盤(pán)無(wú)法確定該磁盤(pán)是外掛的存儲(chǔ)卷還是普通硬盤(pán),若是外掛的存儲(chǔ)卷磁盤(pán)可直接獲得該卷的wwn(worldwidename全球唯一名字)。通過(guò)配置vmwareexsi主機(jī)信息,使用vmware的sdk獲取該exsi主機(jī)上的所有虛擬機(jī)名稱和虛擬機(jī)下的所有磁盤(pán)名稱和wwn信息。通過(guò)配置存儲(chǔ)主機(jī)信息,利用存儲(chǔ)接口獲取存儲(chǔ)陣列名稱和所有卷名稱及卷wwn信息。依次遍歷數(shù)據(jù)庫(kù)使用的每個(gè)主機(jī)磁盤(pán),根據(jù)主機(jī)磁盤(pán)信息獲取該磁盤(pán)類(lèi)型,若該磁盤(pán)類(lèi)型是虛擬磁盤(pán),通過(guò)虛擬機(jī)主機(jī)名稱和磁盤(pán)名稱獲取該磁盤(pán)的wwn信息,根據(jù)獲取的存儲(chǔ)卷wwn信息判斷該wwn的磁盤(pán)是否是存儲(chǔ)的卷,若是存儲(chǔ)的卷則獲取到該卷對(duì)應(yīng)的存儲(chǔ),即完成獲取到數(shù)據(jù)庫(kù)對(duì)應(yīng)的一個(gè)存儲(chǔ)。若當(dāng)前遍歷的數(shù)據(jù)庫(kù)使用的主機(jī)磁盤(pán)不是虛擬磁盤(pán),判斷該磁盤(pán)是否是存儲(chǔ)卷類(lèi)型的磁盤(pán),若是則根據(jù)已獲取的所有存儲(chǔ)卷信息進(jìn)行比對(duì)獲取wwn相同的存儲(chǔ)卷對(duì)應(yīng)的存儲(chǔ)。若當(dāng)前變量的數(shù)據(jù)庫(kù)使用的主機(jī)磁盤(pán)也不是存儲(chǔ)卷類(lèi)型的磁盤(pán),則說(shuō)明該磁盤(pán)是主機(jī)的普通磁盤(pán),繼續(xù)遍歷下一個(gè)數(shù)據(jù)庫(kù)使用的磁盤(pán)進(jìn)行判斷,直到遍歷完所有數(shù)據(jù)庫(kù)使用的主機(jī)磁盤(pán)。若期間出現(xiàn)存儲(chǔ)陣列卷類(lèi)型的磁盤(pán),根據(jù)wwn信息在當(dāng)前配置的存儲(chǔ)下找不到相同的wwn卷則給出提示信息,說(shuō)明當(dāng)前網(wǎng)絡(luò)中存在未添加配置的其他存儲(chǔ)。遍歷流程結(jié)束后最終匯總顯示得到的所有數(shù)據(jù)庫(kù)使用的存儲(chǔ)信息。
為使以上流程便于理解,舉例說(shuō)明如下:假設(shè)數(shù)據(jù)庫(kù)使用了主機(jī)的3個(gè)盤(pán)符來(lái)存儲(chǔ)數(shù)據(jù)庫(kù)文件,分別對(duì)應(yīng)c盤(pán)、d盤(pán)、e盤(pán),其中,c盤(pán)是數(shù)據(jù)庫(kù)主機(jī)的本地普通磁盤(pán),d盤(pán)是其他虛擬機(jī)共享給數(shù)據(jù)庫(kù)主機(jī)的磁盤(pán),該盤(pán)是存儲(chǔ)的一個(gè)卷映射給虛擬機(jī)的,e盤(pán)是外掛的存儲(chǔ)卷的磁盤(pán);對(duì)應(yīng)自動(dòng)感知該數(shù)據(jù)庫(kù)存儲(chǔ)的流程為:通過(guò)數(shù)據(jù)庫(kù)實(shí)例從數(shù)據(jù)庫(kù)中查詢到當(dāng)前數(shù)據(jù)庫(kù)使用了c盤(pán)、d盤(pán)、e盤(pán)。通過(guò)操作系統(tǒng)命令可以得到數(shù)據(jù)庫(kù)主機(jī)的磁盤(pán)信息是:c盤(pán)是普通磁盤(pán),d盤(pán)是虛擬磁盤(pán),但無(wú)法獲得該磁盤(pán)是普通磁盤(pán)還是存儲(chǔ)卷類(lèi)型的磁盤(pán),e盤(pán)是存儲(chǔ)卷類(lèi)型的磁盤(pán),并且能獲取到e盤(pán)對(duì)應(yīng)的存儲(chǔ)卷wwn信息。通過(guò)配置的vmwareexsi主機(jī)信息,利用vmware的sdk可獲取到該exsi主機(jī)上的所有虛擬機(jī)和虛擬機(jī)下的磁盤(pán)名稱和wwn信息,因此通過(guò)對(duì)比虛擬機(jī)名稱和磁盤(pán)名稱可獲取到d盤(pán)的wwn信息,判斷d盤(pán)是存儲(chǔ)卷類(lèi)型的磁盤(pán)。通過(guò)配置存儲(chǔ)主機(jī)信息,獲取該存儲(chǔ)陣列下的所有存儲(chǔ)卷名稱和wwn信息,根據(jù)前面獲取的d盤(pán)、e盤(pán)的wwn信息獲取到對(duì)應(yīng)的存儲(chǔ)陣列,若未找到對(duì)應(yīng)的存儲(chǔ)陣列則給出提示信息,說(shuō)明當(dāng)前網(wǎng)絡(luò)中存在其他存儲(chǔ)陣列,需要添加配置存儲(chǔ)信息。
本申請(qǐng)實(shí)施例提供的第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置如圖2所示,圖2為本申請(qǐng)實(shí)施例提供的第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置的示意圖,該裝置包括:
第一獲取單元201,用于獲取數(shù)據(jù)庫(kù)文件中的磁盤(pán)信息;
遍歷單元202,用于依次遍歷每個(gè)所述磁盤(pán);
判斷單元203,用于判斷所述磁盤(pán)是否為虛擬磁盤(pán),如果是,則判斷所述虛擬磁盤(pán)對(duì)應(yīng)的是否為存儲(chǔ)卷類(lèi)型的磁盤(pán);
第二獲取單元204,用于如果所述虛擬磁盤(pán)對(duì)應(yīng)的是存儲(chǔ)卷類(lèi)型的磁盤(pán),則獲取所述磁盤(pán)的第一wwn信息;
第三獲取單元205,用于通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;
第四獲取單元206,用于當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ)。
本申請(qǐng)實(shí)施例提供的第二種感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置,是在上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置的基礎(chǔ)上,還包括如下技術(shù)特征:
所述判斷單元還用于當(dāng)判斷所述磁盤(pán)不是虛擬磁盤(pán)之后,則判斷所述磁盤(pán)是否為存儲(chǔ)卷類(lèi)型的磁盤(pán),如果是,則獲取所述磁盤(pán)的第一wwn信息;通過(guò)存儲(chǔ)陣列主機(jī)的存儲(chǔ)接口獲取存儲(chǔ)卷的第二wwn信息;當(dāng)所述第二wwn信息中包括與所述第一wwn信息相匹配的信息時(shí),則根據(jù)所述第一wwn信息對(duì)應(yīng)的存儲(chǔ)卷獲取對(duì)應(yīng)的存儲(chǔ)。
本申請(qǐng)實(shí)施例提供的第三種感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置,是在上述第一種感知數(shù)據(jù)庫(kù)存儲(chǔ)的裝置的基礎(chǔ)上,還包括如下技術(shù)特征:
所述第二獲取單元還用于如果所述虛擬磁盤(pán)對(duì)應(yīng)的是主機(jī)本地普通磁盤(pán),則直接遍歷所述主機(jī)本地普通磁盤(pán)。
上述裝置的一個(gè)具體例子如下:
通過(guò)數(shù)據(jù)庫(kù)信息配置裝置,連接數(shù)據(jù)庫(kù)獲取數(shù)據(jù)庫(kù)使用的主機(jī)磁盤(pán);通過(guò)數(shù)據(jù)庫(kù)主機(jī)磁盤(pán)信息獲取裝置,獲取當(dāng)前數(shù)據(jù)庫(kù)主機(jī)所有磁盤(pán)的名稱、類(lèi)型,若是存儲(chǔ)卷類(lèi)型的磁盤(pán)還可獲取到對(duì)應(yīng)的卷wwn信息;通過(guò)虛擬機(jī)磁盤(pán)信息獲取裝置,獲取當(dāng)前配置的vmwareexsi主機(jī)下的所有虛擬機(jī)磁盤(pán)信息,能獲取到虛擬機(jī)磁盤(pán)類(lèi)型,如果是存儲(chǔ)卷類(lèi)型的磁盤(pán)還可獲取到對(duì)應(yīng)存儲(chǔ)卷的wwn信息;通過(guò)存儲(chǔ)卷信息獲取裝置,可獲取到當(dāng)前配置的所有存儲(chǔ)陣列下的存儲(chǔ)卷名稱和對(duì)應(yīng)的wwn信息;通過(guò)數(shù)據(jù)庫(kù)存儲(chǔ)關(guān)聯(lián)顯示裝置,可將前面不同裝置直接或間接獲取到的屬于存儲(chǔ)卷類(lèi)型的數(shù)據(jù)庫(kù)使用的磁盤(pán)的wwn信息,與存儲(chǔ)卷信息獲取裝置獲取到的存儲(chǔ)卷信息進(jìn)行對(duì)比,查找到該數(shù)據(jù)庫(kù)使用的磁盤(pán)對(duì)應(yīng)的存儲(chǔ)陣列,并將這些信息顯示出來(lái)給用戶。該實(shí)施例各裝置可設(shè)定指定時(shí)間間隔,進(jìn)行周期輪詢獲取更新信息,以便自動(dòng)感知最新的數(shù)據(jù)庫(kù)存儲(chǔ)信息。
綜上所述,上述方法和裝置能夠?qū)崿F(xiàn)自動(dòng)感知獲取當(dāng)前數(shù)據(jù)庫(kù)使用的存儲(chǔ)信息,當(dāng)使用的存儲(chǔ)信息發(fā)生變化時(shí)能夠及時(shí)發(fā)現(xiàn),解決了目前數(shù)據(jù)庫(kù)管理員與存儲(chǔ)管理員直接溝通交流上的效率低和信息不及時(shí)的問(wèn)題。
對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專(zhuān)業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。