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