zoukankan      html  css  js  c++  java
  • oracle 删除表空间及数据文件方法

    oracle 11g版本,创建数据库表空间,默认单个数据文件最大为32G,如果数据文件大于32G,可以增加数据文件。

     

    --删除空的表空间,但是不包含物理文件

    drop tablespace tablespace_name;
    --删除非空表空间,但是不包含物理文件
    drop tablespace tablespace_name including contents;
    --删除空表空间,包含物理文件
    drop tablespace tablespace_name including datafiles;
    --删除非空表空间,包含物理文件
    drop tablespace tablespace_name including contents and datafiles;
    --如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段,就要加上CASCADE CONSTRAINTS
    drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;

    如果删除表空间报 ORA-00959 错误

    那就确认一下表空间是否还存在:

    SELECT TABLESPACE_NAME, STATUS, CONTENTS FROM USER_TABLESPACES;

     表空间已经不存在了,那就直接删除 rm -rf  *.dbf 文件。 


    以system用户登录,查找需要删除的用户:

    --查找用户
    select * from dba_users;
    --查找工作空间的路径
    select * from dba_data_files; 
    --删除用户
    drop user 用户名称 cascade;
    --删除表空间
    drop tablespace 表空间名称 including contents and datafiles cascade constraint;

    例如:删除用户名成为ABC,表空间名称为ABC

    --删除用户,及级联关系也删除掉
    drop user ABC cascade;
    --删除表空间,及对应的表空间文件也删除掉
    drop tablespace ABC including contents and datafiles cascade constraint;

    删除无任何数据对象的表空间:
    首先使用PL/SQL界面化工具,或者使用oracle自带的SQL PLUS工具,连接需要删除的表空间的oracle数据局库。
    确认当前用户是否有删除表空间的权限,如果没有 drop tablespace,请先用更高级的用户(如sys)给予授权或者直接用更高级的用户。
    用drop tablespace xxx ,删除需要删除的表空间。
    删除有任何数据对象的表空间
    使用drop tablespace xxx including contents and datafiles;来删除表空间。
    注意事项:
    如果drop tablespace语句中含有datafiles,那datafiles之前必须有contents关键字,不然会提示ora-01911错误

  • 相关阅读:
    索引脚本实例1
    哈尔滨理工大学2016新生赛A题
    拒绝从入门到放弃_《Openstack 设计与实现》必读目录
    生成四位随机数,用于登录验证码制作。
    Python多线程学习(一、线程的使用)
    为什么在 React 16 版本中 render 阶段放弃了使用递归?
    “TensorFlow 开发者出道计划”全攻略,玩转社区看这里!
    【推荐】开源项目ElasticAmbari助力 ElasticSearch、Kibana、ambari服务高效运维管理
    nginx反向代理配置去除前缀
    LNMP架构部署(附:部署Discuz社区论坛Web应用)
  • 原文地址:https://www.cnblogs.com/eos666/p/10574675.html
Copyright © 2011-2022 走看看