oracle服务端如何删除一个表空间

时间:2021-10-19 18:01:23

Oracle数据库在逻辑上将数据存储在表空间中,在物理上将数据存储在数据文件中。表空间分为:永久表空间、undo表空间和临时表空间

oracle服务端如何删除一个表空间

工具/原料

  • Oracle 11g

  • PLSQL

创建、修改、删除表空间

  1. 1

    --创建永久表空间

    create tablespace userSpace  --表空间名称

    datafile 'C:\app\yeduanqiao\oradata\dbname\useSpacer.dbf'    --文件路径及文件名

    size 50M   --表空间大小

    AUTOEXTEND ON NEXT 50M   --每次自动扩展50M

    --创建临时表空间

    create temporary tablespace userTemp

    tempfile  'C:\app\yeduanqiao\oradata\dbname\userTemp.dbf'

    size 50M

    oracle服务端如何删除一个表空间
  2. 2

    ---查看表空间名称、id,文件存储位置,初始大小

    select tablespace_name,file_id,file_name,bytes

    from dba_data_files

    order by file_id

    oracle服务端如何删除一个表空间
  3. 3

    --修改表空间大小

    alter database

    datafile 'C:\app\yeduanqiao\oradata\dbname\useSpacer.dbf'  

    resize 1000M

    oracle服务端如何删除一个表空间
  4. 4

    --修改表空间大小:增加数据文件

    alter tablespace USERSPACE

    add datafile 'C:\app\yeduanqiao\oradata\dbname\USERSPACE2.dbf' 

    size 500M

    oracle服务端如何删除一个表空间
  5. 5

    -

    删除后查询此表空间,查询不到,删除成功

    oracle服务端如何删除一个表空间



  6. -删除表空间drop tablespace USERSPACE

  7. drop tablespace tabaspacename including contents and datafiles;


Oracle 使用时间长了, 新增了许多user 和tablespace. 需要清理一下

对于单个user和tablespace 来说, 可以使用如下命令来完成。

 步骤一:  删除user

drop user ×× cascade

说明: 删除了user,只是删除了该user下的schema objects,是不会删除相应的tablespace的。

步骤二: 删除tablespace

DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;