为何 drop tablespace 不直接将数据文件删除掉呢?_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
3
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2506 | 回复: 2   主题: 为何 drop tablespace 不直接将数据文件删除掉呢?        下一篇 
CinderellaPink
注册用户
等级:少校
经验:1071
发帖:56
精华:0
注册:2015-7-15
状态:离线
发送短消息息给CinderellaPink 加好友    发送短消息息给CinderellaPink 发消息
发表于: IP:您无权察看 2015-7-17 14:39:15 | [全部帖] [楼主帖] 楼主

昨天我执行了 drop tablespace,确实也执行成功了

执行语句如下

drop tablespace LBJ_TEST_TBS

Completed: drop tablespace LBJ_TEST_TBS

即我没有带 INCLUDING CONTENTS AND DATAFILES 

我的表空间是存储在 ASM,结果我到ASM上一看,发现tablespace对应的数据文件还在

我的疑问是 为何drop tablespace 不会将 数据文件直接删除掉了呢?

按照一般的正常逻辑,此时 tablespace 对应的datafile其实已经是没有意义的啊

留着还占用着空间,应当直接就被删除掉

为何非要 加INCLUDING CONTENTS AND DATAFILES  才会删除掉呢?

oracle基于什么考虑要这么做呢?

难道是为了避免误操作,数据文件还存在表明还有恢复的可能吗?




赞(0)    操作        顶端 
momoda
注册用户
等级:少校
经验:1149
发帖:28
精华:0
注册:2015-7-14
状态:离线
发送短消息息给momoda 加好友    发送短消息息给momoda 发消息
发表于: IP:您无权察看 2015-7-17 15:01:31 | [全部帖] [楼主帖] 2  楼

表空间跟表没有关系,只是个容器



赞(0)    操作        顶端 
一路向北5221
版主
等级:上士
经验:262
发帖:7
精华:0
注册:2015-7-16
状态:离线
发送短消息息给一路向北5221 加好友    发送短消息息给一路向北5221 发消息
发表于: IP:您无权察看 2015-7-17 15:38:48 | [全部帖] [楼主帖] 3  楼

表空间是可以回滚的 只是一个逻辑区域 

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


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;


oracle数据库的表空间是可以回滚的  具体的内容你可以参照下oracle数据库表空间的说明



赞(0)    操作        顶端 
总帖数
3
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论