Oracle學習之資料表空間

來源:互聯網
上載者:User
編輯器載入中...關於資料表空間的個人理解,資料表空間是資料庫的邏輯結構。一個資料表空間只能屬於一個資料庫,一個資料庫到少要存在一個資料表空間,所有資料庫物件都存放在指定的資料表空間中。只所以稱之為資料表空間,是因為資料表空間中

主要是用來存放表。
SQL Server資料庫與Oracle資料庫之間最大的區別要屬資料表空間設計。Oracle資料庫開創性地提出了資料表空間的設計理念,這為Oracle資料庫的高效能做出了不可磨滅的貢獻。可以這麼說,Oracle中很多最佳化都是

基於資料表空間的設計理念而實現的。
建議應用程式資料庫的過程
第一步:建立資料庫
第二步:建立資料表空間。
  在設計資料庫的時候,首先需要設計資料表空間。我們需要考慮,是只建立一個資料表空間呢,還是需要建立多個資料表空間,以及各個資料表空間的存放位置、磁碟限額等等。   到底設計多少個資料表空間合理,沒有統一的說

法,這主要根據企業的實際需求去判斷。如企業需要對使用者進行磁碟限額控制的,則就需要根據使用者的數量來設定資料表空間。當企業的資料容量比較大,而其又對資料庫的效能有比較高的要求時,就需要根據不同類型的

資料,設定不同的資料表空間,以提高其輸入輸出效能。   
第二步:建立使用者,並制定使用者的預設資料表空間。   在建立使用者的時候,我們建議資料庫管理員要指定使用者的預設資料表空間。因為我們在利用CREATE語句建立資料庫物件,如資料庫表的時候,其預設是儲存在數

據庫的當前預設空間。若不指定使用者預設資料表空間的話,則使用者每次建立資料庫物件的時候,都要指定資料表空間,顯然,這並不是很合理。   另外要注意,不同的資料表空間有不同的許可權控制。使用者對於資料表空間A具有完全控

制許可權,可能對於資料表空間B就只有查詢許可權,甚至連串連的許可權的都沒有。所以,合理為使用者配置資料表空間的存取權限,也是提高資料庫安全性的一個方法。
資料表空間設計理念的優點
(1)控制使用者佔用的磁碟空間
在一些大型的資料庫應用中,我們需要控制某個使用者或者某一組使用者其所佔用的磁碟空間。這就好像在檔案伺服器中,需要為每個使用者佈建磁碟配額一樣,以防止硬碟空間耗竭。所以,在資料庫中,我們也需

要限制使用者所可以使用的磁碟空間大小。為了達到這個目的,我們就可以通過資料表空間來實現。   我們可以在Oracle資料庫中,建立不同的資料表空間,為其設定最大的儲存容量,然後把使用者歸屬於這個資料表空間。如此的話

,這個使用者的儲存容量,就受到這個資料表空間大小的限制。
(2)通過資料表空間控制資料庫所佔用的磁碟空間
(3)靈活放置資料表空間,提高資料庫的輸入輸出效能
資料庫管理員還可以將不同類型的資料放置到不同的資料表空間中,這樣可以明顯提高資料庫輸入輸出效能,有利於資料的備份與恢複等管理工作。因為我們資料庫管理員在備份或者恢複資料的時候,可以按表空

間來備份資料。如在設計一個大型的分銷系統後台資料庫的時候,我們可以按省份建立資料表空間。與浙江省相關的資料檔案放置在浙江省的資料表空間中,北京發生業務記錄,則記錄在北京這個資料表空間中。如此,當浙江省的

業務資料出現錯誤的時候,則直接還原浙江省的資料表空間即可。很明顯,這樣設計,當某個資料表空間中的資料出現錯誤需要恢複的時候,可以避免對其他資料表空間的影響。   另外,還可以對錶空間進行獨立備份。當資料庫

容量比較大的時候,若一下子對整個資料庫進行備份,顯然會佔用比較多的時間。雖然說Oracle資料庫支援熱備份,但是在備份期間,會佔用比較多的系統資源,從而造成資料庫效能的下降。為此,當資料庫容量比較

大的時候,我們就需要進行設定多個資料表空間,然後規劃各個資料表空間的備份時間,從而可以提高整個資料庫的備份效率,降低備份對於資料庫正常啟動並執行影響。
(4)大表的排序操作
我們都知道,當表中的記錄比較多的時候,對他們進行查詢,速度會比較慢。第一次查詢成功後,若再對其進行第二次重新排序,仍然需要這麼多的時間。為此,我們在資料庫設計的時候,針對這種容量比較

大的表對象,往往把它放在一個獨立的資料表空間,以提高資料庫的效能
(5)記錄檔與資料檔案分開放,提高資料庫安全性。
預設情況下,記錄檔與資料檔案存放在同一資料表空間。但是,這對於資料庫安全方面來說,不是很好。所以,我們在資料庫設計的過程中,往往喜歡把記錄檔,特別是重做記錄檔,放在一個獨立的資料表空間

中,然後把它存放在另外一塊硬碟上。如此的話,當存放資料檔案的硬碟出現故障時,能夠馬上通過存放在另一個資料表空間的重做記錄檔,對資料庫進行修複,以減少企業因為資料丟失所帶來的損失。   當然,表空

間的優勢還不僅僅這些,企業對於資料庫的效能要求越高,或者資料庫容量越大,則資料表空間的優勢就會越大。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.