表空间

--视图V$TABLESPACE可以显示表空间信息
SELECT * FROM V$TABLESPACE;

--显示表空间的文件信息
select * from dba_data_files;

/*
创建表空间
CREATE[BIGFILE∣SMLLFILE] [PERMANENT∣TEMPORARY∣UNDO ] TABLESPACE tablespace_name
[DATAFILE∣TEMPFILE]‘path/filename’[SIZEinteger[K∣M ]]
    [ REUSE ]
 [ AUTOEXTEND [ OFF∣ON [ NEXT integer  [ K∣M ]]      
    [ MAXSIZE [ UMLIMITED∣integer [ K∣M ] ] ] ]
[ ONLINE∣OFFLINE ]
[ LOGGING∣NOLOGGING ]
[SEGMENT SPACE MANAGEMENT [AUTO|MANUAL ]]
[ EXTENT MANAGEMENT [ DICTIONARY∣LOCAL
   [ AUTOALLOCATE∣UNIFORM [ SIZE integer [ K∣M ] ] ] ] ]  
[ DEFAULT STORAGE storage_clause ]

常用:
create tablespace 表空间名称
datafile ‘文件的路径’
size 大小
autoextend on 自动扩展
next 每次扩展的大小;

*/

--查看表空间的属性信息 
SELECT TABLESPACE_NAME,CONTENTS, STATUS,EXTENT_MANAGEMENT FROM DBA_TABLESPACES;

--1.建立名称为HRTS1的数据表空间,大小为500M,可重用。
CREATE TABLESPACE HRTS1
  DATAFILE 'C:\myoracle\oradata\orcl\HRDS1.dbf '
  SIZE 500M 
  REUSE;

select * from v$tablespace;

--2. 创建数据表空间HRTS2,表空间中包含两个数据文件,
--分别为HRDS2.dbf大小为50M和HRDS3.dbf,大小为40M并允许自动扩展数据文件,每次扩展10M,最大为200M。
CREATE TABLESPACE HRTS2
  DATAFILE 'C:\myoracle\oradata\orcl\HRDS2.dbf' SIZE 50M REUSE,
           'C:\myoracle\oradata\orcl\HRDS3.dbf' SIZE 40M REUSE
  AUTOEXTEND ON NEXT 10M MAXSIZE 200M;

select * from v$tablespace;

--3.建立名称为HRBIG的大文件表空间,使用BIG1.dbf文件存放数据。
CREATE BIGFILE TABLESPACE HRBIG
  DATAFILE 'C:\myoracle\oradata\orcl\BIG1.dbf' 
  SIZE 1G
  UNIFORM SIZE 512K;
  
select * from v$tablespace;

--4.建立名称为HRTEMP1的临时表空间,使用HRTEMP1_1.dbf文件存放临时数据。
CREATE TEMPORARY TABLESPACE HRTEMP1
  TEMPFILE 'C:\myoracle\oradata\orcl\HRTEMP1_1.dbf' 
  SIZE 200M REUSE
  UNIFORM SIZE 128K;
  
select * from v$tablespace;

--5.建立名称为HRUNDO的撤销表空间,使用HRUDTS1.dbf文件存放回滚段的数据
CREATE UNDO TABLESPACE HRUNDO
  DATAFILE 'C:\myoracle\oradata\orcl\HRUDTS1.dbf' 
  SIZE 200M REUSE;
  
select * from v$tablespace;

/*
  查看表空间信息
    DBA_TABLESPACES: 数据库中所有表空间的信息。
    DBA_FREE_SPACE: 所有表空间中空闲区的信息。
    DBA_DATA_FILES: 数据文件及其所属表空间信息。
    DBA_TEMP_FILES:临时文件及其所属表空间信息。
    V$TABLESPACE:从控制文件得到的所有的表空间的名称和数量。
    V$DATAFILE:所有的数据文件的信息,包括拥有表空间的数量。 
    V$TEMPFILE:所有的临时文件信息,包括拥有表空间的数量。
*/

--查看数据库中的表空间信息
SELECT tablespace_name,block_size,segment_space_management,
status,contents,allocation_type,bigfile 
FROM dba_tablespaces;

--查看数据库中数据文件的分布情况
SELECT file_id, file_name,tablespace_name
  FROM dba_data_files
  ORDER BY file_id;
  
--查看数据库中数据文件的大小和扩展情况
SELECT file_id, file_name,bytes, autoextensible,maxbytes,tablespace_name
FROM dba_data_files;

--查询表空间空闲空间大小
SELECT TABLESPACE_NAME, SUM(BYTES) FREE_SPACES 
FROM DBA_FREE_SPACE 
GROUP BY TABLESPACE_NAME ;

--查看默认表空间的设置情况
--1).查看默认的临时表空间信息
SELECT PROPERTY_NAME, PROPERTY_VALUE 
FROM DATABASE_PROPERTIES
WHERE PROPERTY_NAME='DEFAULT_TEMP_TABLESPACE';

--2).查看默认的永久数据表空间信息
SELECT PROPERTY_NAME, PROPERTY_VALUE  
FROM DATABASE_PROPERTIES
WHERE PROPERTY_NAME='DEFAULT_PERMANENT_TABLESPACE';

--3).查看默认的表空间类型
SELECT PROPERTY_NAME, PROPERTY_VALUE  
FROM DATABASE_PROPERTIES
WHERE PROPERTY_NAME='DEFAULT_TBS_TYPE';



/**
      管理表空间
      ALTER TABLESPACE tablespace_name
        [ ADD∣DROP ] [DATAFILE∣TEMPFILE 'path/filename’ [SIZE integer [ K∣M ]]
             [ REUSE ]
             [ AUTOEXTEND [ OFF∣ON [ NEXT integer  [ K∣M ] ] 
           [ MAXSIZE [ UMLIMITED∣integer [ K∣M ] ] 
        [ RENAME DATAFILE 'path/oldfilename',…n TO 'path/newfilename',…n ]
        [ DEFAULT STORAGE<存储参数>]
        [ ONLINE∣OFFLINE [ NORMAL∣TEMPORARY∣IMMEDIATE ] ]
        [ LOGGING∣NOLOGGING ]
        [ READ ONLY∣WRITE ]
*/

/*
   重命名表空间
   alter tablespace 表空间名称 rename to 新表空间名称;
*/
--把HRTS2表空间重命名为HRTS3
alter tablespace HRTS2 rename to HRTS3;

select * from v$tablespace;

/*
   向表空间中添加数据文件
  ALTER TABLESPACE tablespace_name
    ADD [DATAFILE|TEMPFILE] 'path/filename’ [ SIZE integer [ K∣M ]] … ;
*/
--为临时表空间HRTEMP1添加一个大小为50MB的临时数据文件
ALTER TABLESPACE HRTEMP1 ADD TEMPFILE 
'C:\myoracle\oradata\orcl\HRTEMP1_2.dbf' SIZE 50M;

SELECT * FROM DBA_TEMP_FILES;

/*
  向表空间中删除数据文件
  ALTER TABLESPACE tablespace_name DROP DATAFILE 'path/filename'
*/
--修改表空间HRTEMP1,删除掉表空间的第一个数据文件HRTEMP1_1.dbf
ALTER TABLESPACE HRTEMP1 DROP DATAFILE 'C:\myoracle\oradata\orcl\HRTEMP1_1.dbf';

/*
  删除表空间
  drop tablespace 表空间名称 [including contents] [cascade constraints];
*/
--删除HRBIG大文件表空间及其包含的所有内容
DROP TABLESPACE HRBIG INCLUDING CONTENTS;
select * from v$tablespace;

DROP TABLESPACE HRTS1 INCLUDING CONTENTS AND DATAFILES;
DROP TABLESPACE HRTS3 INCLUDING CONTENTS AND DATAFILES;
DROP TABLESPACE HRTEMP1 INCLUDING CONTENTS AND DATAFILES;
DROP TABLESPACE HRUNDO INCLUDING CONTENTS AND DATAFILES;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值