ORACLE 表空间基本操作

来源:互联网 发布:中东路事件 知乎 编辑:程序博客网 时间:2024/06/10 15:22

1. 查询数据库现在的表空间

select tablespace_name, file_name, sum(bytes)/1024/1024 table_size from dba_data_files group by tablespace_name,file_name;

 

2. 建立表空间

CREATE TABLESPACE data01 DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M; 

 

3.删除表空间

DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES; 

 

4. 修改表空间大小

alter database datafile '/path/NADDate05.dbf' resize 100M 

 

5.增加数据文件 

ALTER TABLESPACE NEWCCS ADD DATAFILE '/u03/oradata/newccs/newccs04.dbf' SIZE 4896M;

 

6. 删除数据文件

sql>alter database datafile '/path/NADDate05.dbf' OFFLINE  DROP;


查看数据库中表空间的创建语句:

在pl/sql中执行:

SELECT DBMS_METADATA.GET_DDL('TABLESPACE', TS.tablespace_name)
FROM DBA_TABLESPACES TS;

  CREATE TABLESPACE "SYSTEM" DATAFILE
  '/oracle/app/oradata/KFBOSS/system01.dbf' SIZE 5368709120
  AUTOEXTEND ON NEXT 10485760 MAXSIZE 32767M
  LOGGING ONLINE PERMANENT BLOCKSIZE 8192
  EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT MANUAL


----查询每个用户所占的表空间和每个表所占空间大小
select owner,tablespace_name ,sum(bytes)/1024/1024
from dba_segments group by owner,tablespace_name;