亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的方法和裝置與流程

文檔序號:12464903閱讀:318來源:國知局
本發(fā)明涉及計算機
技術(shù)領(lǐng)域
:,具體涉及一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的方法和裝置。
背景技術(shù)
::為了實現(xiàn)數(shù)據(jù)庫系統(tǒng)的穩(wěn)定性,主從架構(gòu)(Master/Slave)的數(shù)據(jù)庫系統(tǒng)被廣泛應(yīng)用。主從式數(shù)據(jù)庫包含有一個主數(shù)據(jù)庫和一個或者多個從數(shù)據(jù)庫,實現(xiàn)了數(shù)據(jù)庫讀寫功能的分離。一般來說,主數(shù)據(jù)庫負責(zé)寫入數(shù)據(jù)的操作,從數(shù)據(jù)庫負責(zé)對主數(shù)據(jù)庫的數(shù)據(jù)進行備份以及負責(zé)數(shù)據(jù)查詢等操作。當(dāng)數(shù)據(jù)庫的數(shù)據(jù)表中有大量記錄時,若要對數(shù)據(jù)庫中的數(shù)據(jù)進行查詢,一種方法是可以進行全數(shù)據(jù)庫表的遍歷搜索,將所有數(shù)據(jù)一一取出,和查詢條件進行一一對比,然后返回滿足條件的數(shù)據(jù),但是這樣做會消耗大量數(shù)據(jù)庫系統(tǒng)時間,查詢速度慢;另一種方法是在數(shù)據(jù)庫中建立索引,然后在索引中找到符合查詢條件的索引值,最后通過保存的索引快速找到數(shù)據(jù)庫中對應(yīng)的數(shù)據(jù),這種方法可以實現(xiàn)數(shù)據(jù)的快速查找。但是在數(shù)據(jù)庫中建立索引會占用磁盤空間,而且大量的索引中不免會出現(xiàn)一些冗余的索引,造成磁盤空間的浪費,冗余索引的存在還會影響查詢優(yōu)化器對索引的選擇,導(dǎo)致數(shù)據(jù)查詢速度慢。技術(shù)實現(xiàn)要素:鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的方法和相應(yīng)的裝置。依據(jù)本發(fā)明的一個方面,提供了一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的方法,包括:對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引,將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中;從所述第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引并保存到待處理列表中;從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引??蛇x地,所述獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引包括:獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引??蛇x地,所述獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引包括:通過查詢該數(shù)據(jù)庫的第一原生表,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引;所述第一原生表中記錄了自該數(shù)據(jù)庫啟動以來的各索引的被訪問次數(shù)??蛇x地,所述獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引包括:獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引??蛇x地,所述獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引包括:從第二分析統(tǒng)計表中查找出最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引;其中,對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,在第二分析統(tǒng)計表中記錄該數(shù)據(jù)庫中的索引的最后一次被訪問的時間??蛇x地,從所述第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引包括:從所述第一分析統(tǒng)計表中查找在第一分析統(tǒng)計表中出現(xiàn)的次數(shù)等于所述主從式數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫個數(shù)的索引??蛇x地,該方法進一步包括:對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的主鍵索引;在將該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表時,排除其中的主鍵索引??蛇x地,所述獲取該數(shù)據(jù)庫中的主鍵索引包括:通過查詢該數(shù)據(jù)庫的第二原生表,獲取該數(shù)據(jù)庫中的主鍵索引;所述第二原生表中記錄了該數(shù)據(jù)庫中的索引的類型;索引的類型包括:主鍵索引。可選地,所述將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中包括:每獲取到一個符合預(yù)設(shè)條件的索引,向所述第一分析統(tǒng)計表中添加一條索引記錄;一條索引記錄包括:端口號、數(shù)據(jù)庫標識、數(shù)據(jù)表標識和索引標識。可選地,該方法進一步包括:將所述第一分析統(tǒng)計表中的數(shù)據(jù)庫標識和數(shù)據(jù)表標識相同的各條索引記錄合并成一條索引記錄存儲到所述第一分析統(tǒng)計表中??蛇x地,在從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引之前,該方法進一步包括:將所述待處理列表發(fā)送給相應(yīng)的業(yè)務(wù)端;當(dāng)接收到相應(yīng)業(yè)務(wù)端的刪除指示后,再執(zhí)行所述從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引的步驟。根據(jù)本發(fā)明的另一方面,提供了一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置,包括:獲取單元,適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引,將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中;查找單元,適于從所述第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引并保存到待處理列表中;存儲單元,適于存儲所述第一分析統(tǒng)計表和待處理列表;索引處理單元,適于從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引??蛇x地,所述獲取單元,適于獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引。可選地,所述獲取單元,適于通過查詢該數(shù)據(jù)庫的第一原生表,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引;所述第一原生表中記錄了自該數(shù)據(jù)庫啟動以來的各索引的被訪問次數(shù)。可選地,所述獲取單元,適于獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引。可選地,該裝置進一步包括:記錄單元,適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,在第二分析統(tǒng)計表中記錄該數(shù)據(jù)庫中的索引的最后一次被訪問的時間;所述存儲單元,進一步適于存儲第二分析統(tǒng)計表;所述獲取單元,適于從第二分析統(tǒng)計表中查找出最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引??蛇x地,所述查找單元,適于從所述第一分析統(tǒng)計表中查找在第一分析統(tǒng)計表中出現(xiàn)的次數(shù)等于所述主從式數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫個數(shù)的索引。可選地,所述獲取單元,進一步適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的主鍵索引;在將該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表時,排除其中的主鍵索引。可選地,所述獲取單元,適于通過查詢該數(shù)據(jù)庫的第二原生表,獲取該數(shù)據(jù)庫中的主鍵索引;所述第二原生表中記錄了該數(shù)據(jù)庫中的索引的類型;索引的類型包括:主鍵索引??蛇x地,所述獲取單元,適于每獲取到一個符合預(yù)設(shè)條件的索引,向所述第一分析統(tǒng)計表中添加一條索引記錄;一條索引記錄包括:端口號、數(shù)據(jù)庫標識、數(shù)據(jù)表標識和索引標識??蛇x地,所述獲取單元,進一步適于將所述第一分析統(tǒng)計表中的數(shù)據(jù)庫標識和數(shù)據(jù)表標識相同的各條索引記錄合并成一條索引記錄存儲到所述第一分析統(tǒng)計表中??蛇x地,所述索引處理單元,進一步適于在從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引之前,將所述待處理列表發(fā)送給相應(yīng)的業(yè)務(wù)端;當(dāng)接收到相應(yīng)業(yè)務(wù)端的刪除指示后,再執(zhí)行所述從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引的步驟。根據(jù)本發(fā)明技術(shù)方案,遍歷主從數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,將每個數(shù)據(jù)庫中符合預(yù)設(shè)條件的索引分別查找出來并保存在一個新建的分析統(tǒng)計表中,這樣就可以不影響數(shù)據(jù)庫查詢的正常操作;然后再從分析統(tǒng)計表中查找出在各個數(shù)據(jù)庫中的均符合預(yù)設(shè)條件的索引保存到待處理列表中,對應(yīng)刪除數(shù)據(jù)庫系統(tǒng)中所有的存在于待處理列表中的索引,減少磁盤空間的浪費。綜上所述,本發(fā)明可以在不影響數(shù)據(jù)庫系統(tǒng)正常查詢的情況下,刪除冗余索引,釋放浪費的磁盤空間,保證數(shù)據(jù)庫查詢的速度。上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的具體實施方式。附圖說明通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:圖1示出了根據(jù)本發(fā)明一個實施例的一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的方法的流程示意圖;圖2示出了根據(jù)本發(fā)明一個實施例的一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置的結(jié)構(gòu)示意圖;圖3示出了根據(jù)本發(fā)明另一個實施例的一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置的結(jié)構(gòu)示意圖。具體實施方式下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達給本領(lǐng)域的技術(shù)人員。圖1示出了根據(jù)本發(fā)明一個實施例的一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的方法的流程示意圖。如圖1所示,該方法包括:步驟S110,對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引,將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中。主從數(shù)據(jù)庫中一般包括一個主數(shù)據(jù)庫和一個或多個從數(shù)據(jù)庫,每個數(shù)據(jù)庫中都設(shè)定索引以便對數(shù)據(jù)的快速查詢,但是,有些索引可能只在其中一臺從數(shù)據(jù)庫上被使用,那么在進行冗余索引的獲取的時候就需要遍歷每個數(shù)據(jù)庫。預(yù)先設(shè)定一個預(yù)設(shè)條件,該預(yù)設(shè)條件可以判斷哪些索引是冗余索引。例如預(yù)設(shè)被訪問次數(shù)小于3的索引為符合預(yù)設(shè)條件的索引,或者預(yù)設(shè)被訪問次數(shù)等于0的索引為符合預(yù)設(shè)條件的索引。獲取每個數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引后,將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中,這里的第一分析統(tǒng)計表是新建的,不屬于數(shù)據(jù)庫,這樣就可以不影響數(shù)據(jù)庫的正常查詢。步驟S120,從第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引并保存到待處理列表中。本步驟是進一步確定第一分析統(tǒng)計表中的索引是否為冗余索引。因為數(shù)據(jù)庫系統(tǒng)在進行查詢的指令的時候是從其中的一個數(shù)據(jù)庫庫中進行查詢,而并不是在所有的數(shù)據(jù)庫中進行查詢,那么就會出現(xiàn)的情況是,一個數(shù)據(jù)庫中的索引符合預(yù)設(shè)條件,另一個數(shù)據(jù)庫中相同的索引不符合預(yù)設(shè)條件,那么這說明該索引在另一個數(shù)據(jù)庫還是被頻繁使用,不能視為冗余索引。所以在獲取到符合預(yù)設(shè)條件的索引后,需要進一步地確定該索引在數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫中都是符合預(yù)設(shè)條件的,即對于每個數(shù)據(jù)庫都是冗余索引。將在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引查找到后保存在待處理的列表中。例如,對于一個端口為3001的數(shù)據(jù)庫系統(tǒng)中有一個主數(shù)據(jù)庫和三個從數(shù)據(jù)庫。對于其中一個從數(shù)據(jù)庫DB1中的數(shù)據(jù)表Table1有一個符合預(yù)設(shè)條件的索引indexname1,被保存在第一分析統(tǒng)計表中,還要查看這個indexname1在3001的數(shù)據(jù)庫系統(tǒng)中的主數(shù)據(jù)庫中以及另外兩個從數(shù)據(jù)庫中相同的indexname1是否也存在第一分析統(tǒng)計表中,都存在的情況下,才會將indexname1保存在待處理列表中。步驟S130,從主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于待處理列表中的索引,進而達到釋放磁盤空間,保證查詢速度的目的??梢姡瑘D1所示的方法可以在不影響數(shù)據(jù)庫系統(tǒng)正常查詢的情況下,刪除冗余索引,釋放浪費的磁盤空間,保證數(shù)據(jù)庫查詢的速度。通過上述的預(yù)設(shè)條件判斷索引是否為冗余索引,這里的預(yù)設(shè)條件可以是索引被訪問的次數(shù),以及被訪問的頻率、被訪問的時間等信息。在本發(fā)明的一個實施例中,步驟S110中的獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引包括:獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引。如果被訪問次數(shù)沒有超過預(yù)設(shè)閾值,說明該條索引不經(jīng)常被使用,對于相應(yīng)的數(shù)據(jù)庫是冗余的;如果被訪問次數(shù)超過預(yù)設(shè)閾值,說明該條索引是查詢時所需要的,不應(yīng)該當(dāng)作冗余索引處理。例如預(yù)設(shè)閾值設(shè)定為1,那么只有訪問次數(shù)為0的索引才會被保存在第一分析統(tǒng)計表中;如果預(yù)設(shè)閾值設(shè)定為5,那么被訪問次數(shù)為0、1、2、3、4的索引都會被保存在第一分析統(tǒng)計表中。其中,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引包括:通過查詢該數(shù)據(jù)庫的第一原生表,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引;第一原生表中記錄了自該數(shù)據(jù)庫啟動以來的各索引的被訪問次數(shù)。每個數(shù)據(jù)庫中都有一些固有的表,這里稱為原生表,數(shù)據(jù)庫中的索引的訪問次數(shù)就會被存儲在原生表中,那么我們在查找符合預(yù)設(shè)條件的索引的時候就可以通過查詢該數(shù)據(jù)庫的第一原生表,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引。例如查詢數(shù)據(jù)庫中的原生表“performance_schema.Table_io_waits_summary_by_index_usage”,就可以獲取到每條索引自從數(shù)據(jù)庫啟動以來的訪問次數(shù)。在本發(fā)明的另一個實施例中,步驟S110中的獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引包括:獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引。有的索引在設(shè)定之初可能被訪問,但是一段時間后,該條索引不再被需要,或者已經(jīng)通過其它更準確的索引取代,那么這樣的不再被需要的索引也是冗余的,所以該預(yù)設(shè)條件可以設(shè)定為最后一次被訪問的時間距離當(dāng)前時間是否超出預(yù)設(shè)時間長度。例如預(yù)設(shè)時間長度為1個月,那么在最近的一個月期間內(nèi)沒有被訪問的索引可被認為是冗余索引。其中,獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引包括:從第二分析統(tǒng)計表中查找出最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引;其中,對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,在第二分析統(tǒng)計表中記錄該數(shù)據(jù)庫中的索引的最后一次被訪問的時間。因為數(shù)據(jù)庫的原生表中不會記錄每條數(shù)據(jù)最后一次被訪問的時間,那么在數(shù)據(jù)庫啟動時,需建立第二分析統(tǒng)計表記錄每條索引的訪問時間,一旦一條索引被訪問,第二分析統(tǒng)計表中相應(yīng)的索引的最后一次使用時間就進行更新。在圖1所示方法的步驟S120中需要查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引,如果遍歷第一統(tǒng)計分析表中的每條索引,會影響分析效率。所以,在本發(fā)明的一個實施例中,步驟S120中從第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引包括:從第一分析統(tǒng)計表中查找在第一分析統(tǒng)計表中出現(xiàn)的次數(shù)等于主從式數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫個數(shù)的索引。例如,數(shù)據(jù)庫系統(tǒng)中有一個主數(shù)據(jù)庫和三個從數(shù)據(jù)庫,即有4個數(shù)據(jù)庫,在查找各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引時,可以直接判斷該條索引在第一分析統(tǒng)計表中出現(xiàn)的次數(shù)是不是為4次,如果為是,說明該條索引對于各數(shù)據(jù)庫都是符合預(yù)設(shè)條件的,即為冗余索引;如果為否,說明該條索引是被某個(或多個)數(shù)據(jù)庫需要的,不屬于冗余索引。數(shù)據(jù)庫的表中通常有一列或列組合用來唯一標識表中的每一行,稱為表的主鍵,為表設(shè)定一個主鍵將自動創(chuàng)建主鍵索引。主鍵索引要求主鍵中的每個值是唯一的,當(dāng)在查詢中使用主鍵索引時,可允許快速訪問數(shù)據(jù),所以作為表中的每一行的唯一標識,主鍵索引是不能被刪除的。為了防止查找到的第一分析統(tǒng)計表中存在主鍵索引,在本發(fā)明的一個實施例中,圖1所示的方法進一步包括:對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的主鍵索引;在將該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表時,排除其中的主鍵索引。其中,獲取該數(shù)據(jù)庫中的主鍵索引包括:通過查詢該數(shù)據(jù)庫的第二原生表,獲取該數(shù)據(jù)庫中的主鍵索引;第二原生表中記錄了該數(shù)據(jù)庫中的索引的類型;索引的類型包括:主鍵索引。數(shù)據(jù)庫中索引的類型被保存在數(shù)據(jù)庫的原生表中,例如表“information_schema.TABLE_CONSTRAINTS”,從該表中可以獲得該數(shù)據(jù)庫中的主鍵索引,并將該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引中的主鍵索引排除。第一分析統(tǒng)計表中保存每條符合預(yù)設(shè)條件的索引時,不僅僅要保存索引本身的信息,為了區(qū)分索引的地址,以便后續(xù)操作的進行。在本發(fā)明的一個實施例中,步驟S110中的將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中包括:每獲取到一個符合預(yù)設(shè)條件的索引,向第一分析統(tǒng)計表中添加一條索引記錄;一條索引記錄包括:端口號、數(shù)據(jù)庫標識、數(shù)據(jù)表標識和索引標識。為了節(jié)省第一分析統(tǒng)計表中的存儲空間和減少數(shù)據(jù)量,上述方法進一步包括:將第一分析統(tǒng)計表中的數(shù)據(jù)庫標識和數(shù)據(jù)表標識相同的各條索引記錄合并成一條索引記錄存儲到第一分析統(tǒng)計表中。例如,對于3001端口的數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫DB1中的數(shù)據(jù)表table1中符合預(yù)設(shè)條件的索引可以合并成一條索引記錄“3001DB1table1:index1,index2,index3,...”,將多條索引存儲合并成一條索引存儲,這樣就可以減少數(shù)據(jù)量,節(jié)省存儲空間。當(dāng)各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引保存到待處理列表后,不應(yīng)該立刻進行刪除的操作,因為數(shù)據(jù)庫中的數(shù)據(jù)以及數(shù)據(jù)查詢是針對相應(yīng)的業(yè)務(wù)需求,在對索引進行刪除操作之前需要得到業(yè)務(wù)端的許可。在本發(fā)明的一個實施例中,從主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于待處理列表中的索引之前,圖1所示的方法進一步包括:將待處理列表發(fā)送給相應(yīng)的業(yè)務(wù)端,以獲得業(yè)務(wù)端的刪除確定;當(dāng)接收到相應(yīng)業(yè)務(wù)端的刪除指示后,再執(zhí)行從主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于待處理列表中的索引的步驟。上述方法中將多條索引存儲合并成一條索引存儲可便于業(yè)務(wù)端的查看。業(yè)務(wù)端可根據(jù)業(yè)務(wù)需求對其中的某些索引進行刪除,也可以進行全部刪除。然而,本領(lǐng)域技術(shù)人員應(yīng)可了解,上述經(jīng)過業(yè)務(wù)端確認后方可刪除冗余索引的方式并非本發(fā)明的限制。由于所述索引使用頻率低,對業(yè)務(wù)的影響也有限,因此當(dāng)各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引保存到待處理列表后,也可以不經(jīng)過業(yè)務(wù)端同意而直接進行刪除的操作。圖2示出了根據(jù)本發(fā)明一個實施例的一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置的結(jié)構(gòu)示意圖。如圖2所示,該處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置200包括:獲取單元210,適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引,將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中。主從數(shù)據(jù)庫中一般包括一個主數(shù)據(jù)庫和一個或多個從數(shù)據(jù)庫,每個數(shù)據(jù)庫中都設(shè)定索引以便對數(shù)據(jù)的快速查詢,但是,有些索引可能只在其中一臺從數(shù)據(jù)庫上被使用,那么在進行冗余索引的獲取的時候就需要遍歷每個數(shù)據(jù)庫。預(yù)先設(shè)定一個預(yù)設(shè)條件,該預(yù)設(shè)條件可以判斷哪些索引是冗余索引。例如預(yù)設(shè)被訪問次數(shù)小于3的索引為符合預(yù)設(shè)條件的索引,或者預(yù)設(shè)被訪問次數(shù)等于0的索引為符合預(yù)設(shè)條件的索引。獲取每個數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引后,將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中,這里的第一分析統(tǒng)計表是新建的,不屬于數(shù)據(jù)庫,這樣就可以不影響數(shù)據(jù)庫的正常查詢。查找單元220,適于從第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引并保存到待處理列表中。查找單元220是進一步確定第一分析統(tǒng)計表中的索引是否為冗余索引。因為數(shù)據(jù)庫系統(tǒng)在進行查詢的指令的時候是從其中的一個數(shù)據(jù)庫庫中進行查詢,而并不是在所有的數(shù)據(jù)庫中進行查詢,那么就會出現(xiàn)的情況是,一個數(shù)據(jù)庫中的索引符合預(yù)設(shè)條件,另一個數(shù)據(jù)庫中相同的索引不符合預(yù)設(shè)條件,那么這說明該索引在另一個數(shù)據(jù)庫還是被頻繁使用,不能視為冗余索引。所以在獲取到符合預(yù)設(shè)條件的索引后,需要進一步地確定該索引在數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫中都是符合預(yù)設(shè)條件的,即對于每個數(shù)據(jù)庫都是冗余索引。將在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引查找到后保存在待處理的列表中。例如,對于一個端口為3001的數(shù)據(jù)庫系統(tǒng)中有一個主數(shù)據(jù)庫和三個從數(shù)據(jù)庫。對于其中一個從數(shù)據(jù)庫DB1中的數(shù)據(jù)表Table1有一個符合預(yù)設(shè)條件的索引indexname1,被保存在第一分析統(tǒng)計表中,還要查看這個indexname1在3001的數(shù)據(jù)庫系統(tǒng)中的主數(shù)據(jù)庫中以及另外兩個從數(shù)據(jù)庫中相同的indexname1是否也存在第一分析統(tǒng)計表中,都存在的情況下,才會將indexname1保存在待處理列表中。存儲單元230,適于存儲第一分析統(tǒng)計表和待處理列表。索引處理單元240,適于從主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于待處理列表中的索引,進而達到釋放磁盤空間,保證查詢速度的目的??梢?,利用本發(fā)明的裝置中的各個單元的配合處理,本發(fā)明可以在不影響數(shù)據(jù)庫系統(tǒng)正常查詢的情況下,刪除冗余索引,釋放浪費的磁盤空間,保證數(shù)據(jù)庫查詢的速度。通過上述的預(yù)設(shè)條件判斷索引是否為冗余索引,這里的預(yù)設(shè)條件可以是索引被訪問的次數(shù),以及被訪問的頻率、被訪問的時間等信息。在本發(fā)明的一個實施例中,獲取單元210,適于獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引。如果被訪問次數(shù)沒有超過預(yù)設(shè)閾值,說明該條索引不經(jīng)常被使用,對于相應(yīng)的數(shù)據(jù)庫是冗余的;如果被訪問次數(shù)超過預(yù)設(shè)閾值,說明該條索引是查詢時所需要的,不應(yīng)該當(dāng)作冗余索引處理。例如預(yù)設(shè)閾值設(shè)定為1,那么只有訪問次數(shù)為0的索引才會被保存在第一分析統(tǒng)計表中;如果預(yù)設(shè)閾值設(shè)定為5,那么被訪問次數(shù)為0、1、2、3、4的索引都會被保存在第一分析統(tǒng)計表中。具體地,獲取單元210,適于通過查詢該數(shù)據(jù)庫的第一原生表,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引;第一原生表中記錄了自該數(shù)據(jù)庫啟動以來的各索引的被訪問次數(shù)。每個數(shù)據(jù)庫中都有一些固有的表,這里稱為原生表,數(shù)據(jù)庫中的索引的訪問次數(shù)就會被存儲在原生表中,那么我們在查找符合預(yù)設(shè)條件的索引的時候就可以通過查詢該數(shù)據(jù)庫的第一原生表,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引。例如查詢數(shù)據(jù)庫中的原生表“performance_schema.Table_io_waits_summary_by_index_usage”,就可以獲取到每條索引自從數(shù)據(jù)庫啟動以來的訪問次數(shù)。在本發(fā)明的另一個實施例中,獲取單元210,適于獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引。有的索引在設(shè)定之初可能被訪問,但是一段時間后,該條索引不再被需要,或者已經(jīng)通過其它更準確的索引取代,那么這樣的不再被需要的索引也是冗余的,所以該預(yù)設(shè)條件可以設(shè)定為最后一次被訪問的時間距離當(dāng)前時間是否超出預(yù)設(shè)時間長度。例如預(yù)設(shè)時間長度為1個月,那么在最近的一個月期間內(nèi)沒有被訪問的索引可被認為是冗余索引。圖3示出了根據(jù)本發(fā)明另一個實施例的一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置的結(jié)構(gòu)示意圖。如圖3所示,該處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置300包括:獲取單元310、查找單元320、存儲單元330、索引處理單元340和紀錄單元350。其中,獲取單元310、查找單元320、存儲單元330、索引處理單元340與圖2所示裝置的獲取單元210、查找單元220、存儲單元230、索引處理單元240具有對應(yīng)相同的功能,相同的部分在此不再贅述。記錄單元350,適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,在第二分析統(tǒng)計表中記錄該數(shù)據(jù)庫中的索引的最后一次被訪問的時間。存儲單元330,進一步適于存儲第二分析統(tǒng)計表。獲取單元310,適于從第二分析統(tǒng)計表中查找出最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引。因為數(shù)據(jù)庫的原生表中不會記錄每條數(shù)據(jù)最后一次被訪問的時間,那么在數(shù)據(jù)庫啟動時,需建立第二分析統(tǒng)計表記錄每條索引的訪問時間,一旦一條索引被訪問,第二分析統(tǒng)計表中相應(yīng)的索引的最后一次使用時間就進行更新。為進一步確定第一分析統(tǒng)計表中的索引是否為冗余索引,需要查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引,如果遍歷第一統(tǒng)計分析表中的每條索引,會影響分析效率。所以,在本發(fā)明的一個實施例中,查找單元320,適于從第一分析統(tǒng)計表中查找在第一分析統(tǒng)計表中出現(xiàn)的次數(shù)等于主從式數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫個數(shù)的索引。例如,數(shù)據(jù)庫系統(tǒng)中有一個主數(shù)據(jù)庫和三個從數(shù)據(jù)庫,即有4個數(shù)據(jù)庫,在查找各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引時,可以直接判斷該條索引在第一分析統(tǒng)計表中出現(xiàn)的次數(shù)是不是為4次,如果為是,說明該條索引對于各數(shù)據(jù)庫都是符合預(yù)設(shè)條件的,即為冗余索引;如果為否,說明該條索引是被某一個(或多個)數(shù)據(jù)庫需要的,不屬于冗余索引。數(shù)據(jù)庫的表中通常有一列或列組合用來唯一標識表中的每一行,稱為表的主鍵,為表設(shè)定一個主鍵將自動創(chuàng)建主鍵索引。主鍵索引要求主鍵中的每個值是唯一的,當(dāng)在查詢中使用主鍵索引時,可允許快速訪問數(shù)據(jù),所以作為表中的每一行的唯一標識,主鍵索引是不能被刪除的。為了防止查找到的第一分析統(tǒng)計表中存在主鍵索引,在本發(fā)明的一個實施例中,獲取單元310,進一步適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的主鍵索引;在將該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表時,排除其中的主鍵索引。進一步地,獲取單元310,適于通過查詢該數(shù)據(jù)庫的第二原生表,獲取該數(shù)據(jù)庫中的主鍵索引;第二原生表中記錄了該數(shù)據(jù)庫中的索引的類型;索引的類型包括:主鍵索引。數(shù)據(jù)庫中索引的類型被保存在數(shù)據(jù)庫的原生表中,例如表“information_schema.TABLE_CONSTRAINTS”,從該表中可以獲得該數(shù)據(jù)庫中的主鍵索引,并將該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引中的主鍵索引排除。第一分析統(tǒng)計表中保存每條符合預(yù)設(shè)條件的索引時,不僅僅要保存索引本身的信息,為了區(qū)分索引的地址,以便后續(xù)操作的進行。在本發(fā)明的一個實施例中,獲取單元310,適于每獲取到一個符合預(yù)設(shè)條件的索引,向第一分析統(tǒng)計表中添加一條索引記錄;一條索引記錄包括:端口號、數(shù)據(jù)庫標識、數(shù)據(jù)表標識和索引標識。為了節(jié)省第一分析統(tǒng)計表中的存儲空間和減少數(shù)據(jù)量,進一步地,獲取單元310,進一步適于將第一分析統(tǒng)計表中的數(shù)據(jù)庫標識和數(shù)據(jù)表標識相同的各條索引記錄合并成一條索引記錄存儲到第一分析統(tǒng)計表中。例如,對于3001端口的數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫DB1中的數(shù)據(jù)表table1中符合預(yù)設(shè)條件的索引可以合并成一條索引記錄“3001DB1table1:index1,index2,index3,...”,將多條索引存儲合并成一條索引存儲,這樣就可以減少數(shù)據(jù)量,節(jié)省存儲空間。當(dāng)各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引保存到待處理列表后,不應(yīng)該立刻進行刪除的操作,因為數(shù)據(jù)庫中的數(shù)據(jù)以及數(shù)據(jù)查詢是針對相應(yīng)的業(yè)務(wù)需求,在對索引進行刪除操作之前需要得到業(yè)務(wù)端的許可。在本發(fā)明的一個實施例中,索引處理單元340,進一步適于在從主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于待處理列表中的索引之前,將待處理列表發(fā)送給相應(yīng)的業(yè)務(wù)端;當(dāng)接收到相應(yīng)業(yè)務(wù)端的刪除指示后,再執(zhí)行從主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于待處理列表中的索引的步驟。獲取單元310將多條索引存儲合并成一條索引存儲可便于業(yè)務(wù)端的查看。業(yè)務(wù)端可根據(jù)業(yè)務(wù)需求對其中的某些索引進行刪除,也可以進行全部刪除。然而,本領(lǐng)域技術(shù)人員應(yīng)可了解,上述經(jīng)過業(yè)務(wù)端確認后方可刪除冗余索引的方式并非本發(fā)明的限制。由于所述索引使用頻率低,對業(yè)務(wù)的影響也有限,因此當(dāng)各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引保存到待處理列表后,也可以不經(jīng)過業(yè)務(wù)端同意而直接進行刪除的操作。需要說明的是,圖2-圖3所示裝置的各實施例與圖1所示方法的各實施例對應(yīng)相同,上文已有詳細說明,在此不再贅述。根據(jù)本發(fā)明技術(shù)方案,遍歷主從數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,將每個數(shù)據(jù)庫中符合預(yù)設(shè)條件的索引分別查找出來并保存在一個新建的分析統(tǒng)計表中,這樣就可以不影響數(shù)據(jù)庫查詢的正常操作;然后再從分析統(tǒng)計表中查找出在各個數(shù)據(jù)庫中的均符合預(yù)設(shè)條件的索引保存到待處理列表中,對應(yīng)刪除數(shù)據(jù)庫系統(tǒng)中所有的存在于待處理列表中的索引,減少磁盤空間的浪費。綜上所述,本發(fā)明可以在不影響數(shù)據(jù)庫系統(tǒng)正常查詢的情況下,刪除冗余索引,釋放浪費的磁盤空間,保證數(shù)據(jù)庫查詢的速度。需要說明的是:在此提供的算法和顯示不與任何特定計算機、虛擬裝置或者其它設(shè)備固有相關(guān)。各種通用裝置也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類裝置所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權(quán)利要求書由此明確地并入該具體實施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。應(yīng)該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。本發(fā)明公開了A1、一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的方法,包括:對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引,將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中;從所述第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引并保存到待處理列表中;從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引。A2、如A1所述的方法,其中,所述獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引包括:獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引。A3、如A2所述的方法,其中,所述獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引包括:通過查詢該數(shù)據(jù)庫的第一原生表,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引;所述第一原生表中記錄了自該數(shù)據(jù)庫啟動以來的各索引的被訪問次數(shù)。A4、如A1所述的方法,其中,所述獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引包括:獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引。A5、如A4所述的方法,其中,所述獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引包括:從第二分析統(tǒng)計表中查找出最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引;其中,對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,在第二分析統(tǒng)計表中記錄該數(shù)據(jù)庫中的索引的最后一次被訪問的時間。A6、如A1所述的方法,其中,從所述第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引包括:從所述第一分析統(tǒng)計表中查找在第一分析統(tǒng)計表中出現(xiàn)的次數(shù)等于所述主從式數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫個數(shù)的索引。A7、如A1所述的方法,其中,該方法進一步包括:對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的主鍵索引;在將該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表時,排除其中的主鍵索引。A8、如A7所述的方法,其中,所述獲取該數(shù)據(jù)庫中的主鍵索引包括:通過查詢該數(shù)據(jù)庫的第二原生表,獲取該數(shù)據(jù)庫中的主鍵索引;所述第二原生表中記錄了該數(shù)據(jù)庫中的索引的類型;索引的類型包括:主鍵索引。A9、如A1所述的方法,其中,所述將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中包括:每獲取到一個符合預(yù)設(shè)條件的索引,向所述第一分析統(tǒng)計表中添加一條索引記錄;一條索引記錄包括:端口號、數(shù)據(jù)庫標識、數(shù)據(jù)表標識和索引標識。A10、如A9所述的方法,其中,該方法進一步包括:將所述第一分析統(tǒng)計表中的數(shù)據(jù)庫標識和數(shù)據(jù)表標識相同的各條索引記錄合并成一條索引記錄存儲到所述第一分析統(tǒng)計表中。A11、如A1所述的方法,其中,在從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引之前,該方法進一步包括:將所述待處理列表發(fā)送給相應(yīng)的業(yè)務(wù)端;當(dāng)接收到相應(yīng)業(yè)務(wù)端的刪除指示后,再執(zhí)行所述從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引的步驟。本發(fā)明還公開了B12、一種處理主從式數(shù)據(jù)庫系統(tǒng)中的索引的裝置,包括:獲取單元,適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引,將獲取到的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表中;查找單元,適于從所述第一分析統(tǒng)計表中查找出在各數(shù)據(jù)庫中均符合預(yù)設(shè)條件的索引并保存到待處理列表中;存儲單元,適于存儲所述第一分析統(tǒng)計表和待處理列表;索引處理單元,適于從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引。B13、如B12所述的裝置,其中,所述獲取單元,適于獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引。B14、如B13所述的裝置,其中,所述獲取單元,適于通過查詢該數(shù)據(jù)庫的第一原生表,獲取該數(shù)據(jù)庫中被訪問次數(shù)不超過預(yù)設(shè)閾值的索引;所述第一原生表中記錄了自該數(shù)據(jù)庫啟動以來的各索引的被訪問次數(shù)。B15、如B12所述的裝置,其中,所述獲取單元,適于獲取該數(shù)據(jù)庫中的最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引。B16、如B15所述的裝置,其中,該裝置進一步包括:記錄單元,適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,在第二分析統(tǒng)計表中記錄該數(shù)據(jù)庫中的索引的最后一次被訪問的時間;所述存儲單元,進一步適于存儲第二分析統(tǒng)計表;所述獲取單元,適于從第二分析統(tǒng)計表中查找出最后一次被訪問的時間距離當(dāng)前時間超出預(yù)設(shè)時間長度的索引。B17、如B12所述的裝置,其中,所述查找單元,適于從所述第一分析統(tǒng)計表中查找在第一分析統(tǒng)計表中出現(xiàn)的次數(shù)等于所述主從式數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫個數(shù)的索引。B18、如B12所述的裝置,其中,所述獲取單元,進一步適于對于一個主從式數(shù)據(jù)庫系統(tǒng)中的每個數(shù)據(jù)庫,獲取該數(shù)據(jù)庫中的主鍵索引;在將該數(shù)據(jù)庫中的符合預(yù)設(shè)條件的索引保存到第一分析統(tǒng)計表時,排除其中的主鍵索引。B19、如B18所述的裝置,其中,所述獲取單元,適于通過查詢該數(shù)據(jù)庫的第二原生表,獲取該數(shù)據(jù)庫中的主鍵索引;所述第二原生表中記錄了該數(shù)據(jù)庫中的索引的類型;索引的類型包括:主鍵索引。B20、如B12所述的裝置,其中,所述獲取單元,適于每獲取到一個符合預(yù)設(shè)條件的索引,向所述第一分析統(tǒng)計表中添加一條索引記錄;一條索引記錄包括:端口號、數(shù)據(jù)庫標識、數(shù)據(jù)表標識和索引標識。B21、如B20所述的裝置,其中,所述獲取單元,進一步適于將所述第一分析統(tǒng)計表中的數(shù)據(jù)庫標識和數(shù)據(jù)表標識相同的各條索引記錄合并成一條索引記錄存儲到所述第一分析統(tǒng)計表中。B22、如B12所述的裝置,其中,所述索引處理單元,進一步適于在從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引之前,將所述待處理列表發(fā)送給相應(yīng)的業(yè)務(wù)端;當(dāng)接收到相應(yīng)業(yè)務(wù)端的刪除指示后,再執(zhí)行所述從所述主從式數(shù)據(jù)庫系統(tǒng)中的各數(shù)據(jù)庫中刪除存在于所述待處理列表中的索引的步驟。當(dāng)前第1頁1 2 3 當(dāng)前第1頁1 2 3 
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1