程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> oracle創建表空間

oracle創建表空間

編輯:Oracle數據庫基礎

SYS用戶在CMD下以DBA身份登陸:

在CMD中打sqlplus /nolog

然後再

conn / as sysdba

//創建臨時表空間  

create temporary tablespace user_temp  

tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf' 

size 50m  

autoextend on  

next 50m maxsize 20480m  

extent management local;  

//創建數據表空間  

create tablespace test_data  

logging  

datafile 'D:\oracle\oradata\Oracle9i\user_data.dbf' 

size 50m  

autoextend on  

next 50m maxsize 20480m  

extent management local;  

//創建用戶並指定表空間  

create user username identifIEd by passWord  

default tablespace user_data  

temporary tablespace user_temp;  

//給用戶授予權限  

grant connect,resource to username;  

//以後以該用戶登錄,創建的任何數據庫對象都屬於user_temp 和user_data表空間,這就不用在每創建一個對象給其指定表空間了 

撤權:  

       revoke   權限...   from  用戶名;

刪除用戶命令

drop user user_name cascade;

建立表空間

CREATE TABLESPACE data01

DATAFILE '/Oracle/oradata/db/DATA01.dbf' SIZE 500M

UNIFORM SIZE 128k; #指定區尺寸為128k,如不指定,區尺寸默認為64k

刪除表空間

DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;

一、建立表空間

CREATE TABLESPACE data01

DATAFILE '/Oracle/oradata/db/DATA01.dbf' SIZE 500M

UNIFORM SIZE 128k; #指定區尺寸為128k,如不指定,區尺寸默認為64k

二、建立UNDO表空間

CREATE UNDO TABLESPACE UNDOTBS02

DATAFILE '/Oracle/oradata/db/UNDOTBS02.dbf' SIZE 50M

#注意:在OPEN狀態下某些時刻只能用一個UNDO表空間,如果要用新建的表空間,必須切換到該表空間:

ALTER SYSTEM SET undo_tablespace=UNDOTBS02;

三、建立臨時表空間

CREATE TEMPORARY TABLESPACE temp_data

TEMPFILE '/Oracle/oradata/db/TEMP_DATA.dbf' SIZE 50M

四、改變表空間狀態

1.使表空間脫機

ALTER TABLESPACE game OFFLINE;

如果是意外刪除了數據文件,則必須帶有RECOVER選項

ALTER TABLESPACE game OFFLINE FOR RECOVER;

2.使表空間聯機

ALTER TABLESPACE game ONLINE;

3.使數據文件脫機

ALTER DATABASE DATAFILE 3 OFFLINE;

4.使數據文件聯機

ALTER DATABASE DATAFILE 3 ONLINE;

5.使表空間只讀

ALTER TABLESPACE game READ ONLY;

6.使表空間可讀寫

ALTER TABLESPACE game READ WRITE;

五、刪除表空間

DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;

六、擴展表空間

首先查看表空間的名字和所屬文件

select tablespace_name, file_id, file_name,

round(bytes/(1024*1024),0) total_space

from dba_data_files

order by tablespace_name;

1.增加數據文件

ALTER TABLESPACE game

ADD DATAFILE '/Oracle/oradata/db/GAME02.dbf' SIZE 1000M;

2.手動增加數據文件尺寸

ALTER DATABASE DATAFILE '/Oracle/oradata/db/GAME.dbf'

RESIZE 4000M;

3.設定數據文件自動擴展

ALTER DATABASE DATAFILE '/Oracle/oradata/db/GAME.dbf

AUTOEXTEND ON NEXT 100M

MAXSIZE 10000M;

設定後查看表空間信息

SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,

(B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE"

FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C

WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved