• oracle删除用户、表空间及数据⽂件⽅法


    --删除空的表空间,但是不包含物理⽂件
    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错误

  • 相关阅读:
    hdu2037 今年暑假不AC[贪心][区间调度问题]
    Features Track[STL map]
    Characters with Hash[签到题]
    hdu2094产生冠军[STL set]
    2018ECNA Difference[时空复杂度]
    hdu1276士兵队列训练问题[简单STL list]
    20190815网络与信息安全领域专项赛线上赛misc WriteUp
    hdu1873 看病要排队[优先队列]
    Pygame 贪吃蛇
    Windows安装Python3 curses模块
  • 原文地址:https://www.cnblogs.com/yclizq/p/16341013.html
Copyright © 2020-2023  润新知