顾美玲勾引管家|日韩黄色成人|国产精品theporn动漫|欧美日日日|国产精品探花在线

專業只做數據庫實訓和認證的品牌機構

微信公眾號新浪微博
免費咨詢電話:400-0909-964
當前位置: 網站首頁 > DBA實戰 > DBA課程 > Oracle培訓教程:表空間

Oracle培訓教程:表空間

文章來源: 更新時間:2016/7/20 14:54:17

在線老師點擊咨詢:

最新學訊:近期OCP認證正在報名中,因考試人員較多請盡快報名獲取最近考試時間,報名費用請聯系在線老師,甲骨文官方認證,報名從速!

我要咨詢

Oracle培訓教程:表空間,在數據庫系統中,存儲空間是較為重要的資源,合理利用空間,不但能節省空間,還可以提高系統的效率和工作性能。Oracle可以存放海量數據,所有數據都在數據文件中存儲。而數據文件大小受操作系統限制,并且過大的數據文件對數據的存取性能影響非常大。同時Oracle是跨平臺的數據庫,Oracle數據可以輕松的在不同平臺上移植,那么如何才能提供統一存取格式的大容量呢?Oracle采用表空間來解決。

表空間只是一個邏輯概念,若干操作系統文件(文件可以不是很大)可以組成一個表空間。表空間統一管理空間中的數據文件,一個數據文件只能屬于一個表空間。一個數據庫空間由若干個表空間組成。如圖所示:

圖1 數據空間、表空間和數據文件

Oracle中所有的數據(包括系統數據),全部保存在表空間中,常見的表空間有:

·系統表空間:存放系統數據,系統表空間在數據庫創建時創建。表空間名稱為SYSTEM。存放數據字典和視圖以及數據庫結構等重要系統數據信息,在運行時如果SYSTEM空間不足,對數據庫影響會比較大,雖然在系統運行過程中可以通過命令擴充空間,但還是會影響數據庫的性能,因此有必要在創建數據庫時適當的把數據文件設置大一些。

·TMEP表空間:臨時表空間,安裝數據庫時創建,可以在運行時通過命令增大臨時表空間。臨時表空間的重要作用是數據排序。比如當用戶執行了諸如Order by等命令后,服務器需要對所選取數據進行排序,如果數據很大,內存的排序區可能裝不下太大數據,就需要把一些中間的排序結果寫在硬盤的臨時表空間中。

·用戶表自定義空間:用戶可以通過CREATE TABLESPACE命令創建表空間。

創建表空間需要考慮數據庫對分區(Extent,一個Oracle分區是數據庫文件中一段連續的空間,Oracle分區是Oracle管理中最小的單位)的管理,比如當一個表創建后先申請一個分區,在Insert執行過程中,如果分區數據已滿,需要重新申請另外的分區。如果一個數據庫中的分區大小不一,創建表空間時需要考慮一系列問題。因此在Oracle8i之后,創建表空間都推薦使用“本地管理表空間”,這種表空間中的分區是一個固定大小的值,創建表空間的語法是:

語法結構:創建表空間

CREATE TABLESPACE 空間名稱

DATAFILE '文件名1' SIZE 數字M

[,'文件名2' SIZE 數字….]

EXTENT MANAGEMENT LOCAL

UNIFORM SIZE 數字M

語法解析:

1. 文件名包括完整路徑和文件名,每個數據文件定義了文件的初始大小,初始大小一般以“M”為單位。一個表空間中可以有多個數據文件。

2. EXTENT MANAGEMENT LOCAL指明表空間類型是:本地管理表空間。本地管理表空間要求Oracle中的數據分區(Extent)大小統一。

3. UNIFORM SIZE:指定每個分區的統一大小。

案例5:創建一個表空間,包含兩個數據文件大小分別是10MB,5MB,要求extent的大小統一為1M。

代碼演示:創建表空間

SQL> CREATE TABLESPACE MYSPACE

  2  DATAFILE 'D:/A.ORA' SIZE 10M,

  3             'D:/B.ORA' SIZE 5M

  4  EXTENT MANAGEMENT LOCAL

  5  UNIFORM SIZE 1M

  6  /

 

Tablespace created

必須是管理員用戶才能創建表空間,當表空間的空間不足時可以使用ALTER TABLESPACE命令向表空間中追加數據文件擴充表空間。

代碼演示:擴充表空間

SQL> ALTER TABLESPACE MYSPACE

  2  ADD DATAFILE 'D:/C.ORA' SIZE 10M

  3  /

 

Tablespace altered

表空間可以在不使用時刪除,使用DROP TABLESPACE命令。

數據庫的所有數據全部在某一表空間中存放,在創建用戶時,可以為用戶指定某一表空間,那么該用戶下的所有數據庫對象(比如表)默認都存儲在該空間中。

代碼演示:為某一用戶指定默認表空間

SQL> CREATE USER ACONG IDENTIFIED BY ACONG

  2   DEFAULT TABLESPACE MYSPACE

  3  /

 

User created

在創建表時,表中數據存放在用戶的默認表空間中,也可以通過tablespace子句為表指定表中數據存放在其他表空間中。

代碼演示:為表指定表空間

SQL> CREATE TABLE SCORES

  2  (

  3          ID NUMBER ,

  4          TERM VARCHAR2(2),

  5         STUID VARCHAR2(7) NOT NULL,

  6         EXAMNO VARCHAR2(7) NOT NULL,

  7         WRITTENSCORE NUMBER(4,1) NOT NULL,

  8         LABSCORE NUMBER(4,1) NOT NULL

  9  )

 10  TABLESPACE MYSPACE

 11  /

 

Table created

創建索引時也可以為索引指定表空間。

代碼演示:為索引指定表空間

SQL> CREATE INDEX UQ_ID ON SCORES(ID)

  2  TABLESPACE MYSPACE;

 

Index created

表和索引一旦創建,表空間無法修改。

本文地址:http://www.mudan321.com/dba/kecheng/12524734924.html 轉載請注明!


PostgreSQL入門到精通 100+ 個學習資料

Oracle培訓機構

金牌講師<>

冉乃綱-老師CUUG金牌講師
冉老師 CUUG金牌講師 Oracle及RedHat高級講師、Unix/Linux 資深專家...[詳細了解老師]

免費咨詢上課流程 客服在線中

陳衛星-老師CUUG金牌講師
陳老師 CUUG金牌講師 精通Oracle管理、備份恢復、性能優化 11年Ora...[詳細了解老師]

免費咨詢上課流程 客服在線中

選學校如何選擇適合自己的學校

CUUG -CHINA UNIX USER GROUP,是國際UNIX組織UNIFORUM的中國代表,是國內悠久的專業UNIX培訓機構,被譽為中國UNIX 的搖籃。多年來,以提高教學質量為本,強調素質教育,積極引進、消化國外的新技術,有效的結合中國....[詳情]

一站式服務(從入學到就業一幫到底)

入學

學習

就業

實操

食宿
地址:北京市海淀區田村山南路35號院17號樓
課程咨詢: 400-0909-964
企業服務:137 1818 8639(陳經理)
部分信息來源于網絡,如有錯誤請聯系指正!
版權所有@北京神腦資訊技術有限公司 (CUUG,中國UNIX用戶協會) Copyright 2016 ALL Rights Reserved 京ICP備11008061號-1