求助!是先删除用户呢还是先删除表空间呢?

michael501 2011-08-14 02:07:56
本人之前在oracle11g里面进行了一个测试,现在测试完了,想把这个测试的库删掉,然后就在sqlplus
里面drop user ×× cascade ;但是发现存在我电脑盘符下的数据文件还是存在的,所以很好奇,是不是这里面的删除是指的逻辑上的删除这个用户下的表,硬盘上的数据文件虽然仍然存在,但是里面是空的。不知道我这样理解对不对,另外我删除了用户后还需要删除表空间么?还是说删除了用户后自动就释放表空间了,不用管了?还有如果想删除磁盘上的存储的物理数据文件正确的操作应该是怎样呢?带着这些疑问发了这个帖子,希望得到高手指点。
...全文
1173 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
ghost_an0301 2011-08-18
  • 打赏
  • 举报
回复
学习了..
fingerfox 2011-08-18
  • 打赏
  • 举报
回复
无所谓,都行。

动手试试看不就都知道了么?
zhangzhiqianlove 2011-08-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lxd_2011 的回复:]
楼主,首先你在硬盘盘符下看到的文件是数据库存放数据的数据文件,执行完drop user xxx cascade;后,会把用户及用户所属的表删除掉,但表空间还是存在的,只是里面的数据已被删除掉了。
如果楼主全部用刚才删除的用户进行的测试的话,执行完上述语句已经把用来测试的数据删除掉了,没有必要把整个库删除掉。
最后说一点,删除了用户和数据后是不会自动释放表空间的,表空间容量是建立数据库的时候初始……
[/Quote]
+1
先干掉用户在把表空间干掉
GuoGongZhou 2011-08-16
  • 打赏
  • 举报
回复

drop user user_name;


drop tablespace tablespace_name including contents and datafiles;

Alessandro_ 2011-08-16
  • 打赏
  • 举报
回复

那如果我又2个用户,USER1与USER2,使用的表空间都是USERS,那我要删除USER1用户呢?
magsop7997 2011-08-15
  • 打赏
  • 举报
回复
drop tablespace tablespace_name including contents and datafiles;
对头
西北刘五 2011-08-15
  • 打赏
  • 举报
回复
你创建表空间的时候有个初始化大小,如果你设置1G,即便你没有放入任何数据,也会占用你磁盘空间1G 的,如果超过1G,会自动增长,直到你设置的最大值。
如果你不想让表中的数据占用表空间的空间,你用truncate的删除就可以了,这个会释放空间的。
luoyoumou 2011-08-15
  • 打赏
  • 举报
回复
-- 先删除用户(如果要删除的表空间上有多个用户有相关数据,则要将多个用户都删除)
drop user user_name;

-- 再删除表空间:
drop tablespace tablespace_name including contents and datafiles;
michael501 2011-08-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lxd_2011 的回复:]

楼主,首先你在硬盘盘符下看到的文件是数据库存放数据的数据文件,执行完drop user xxx cascade;后,会把用户及用户所属的表删除掉,但表空间还是存在的,只是里面的数据已被删除掉了。
如果楼主全部用刚才删除的用户进行的测试的话,执行完上述语句已经把用来测试的数据删除掉了,没有必要把整个库删除掉。
最后说一点,删除了用户和数据后是不会自动释放表空间的,表空间容量是建立数据库的时候初……
[/Quote]
那我不想占用我的磁盘空间,想清理一下没有用的数据文件怎么处理呢?期待你的回复
「已注销」 2011-08-15
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 lzd_83 的回复:]
先删除用户文件
drop user user_name
再删除表空间
drop tablespace tablespace_name including contents and datafiles;
[/Quote]

学习了!
Rotel-刘志东 2011-08-15
  • 打赏
  • 举报
回复
先删除用户文件
drop user user_name
再删除表空间
drop tablespace tablespace_name including contents and datafiles;
pengzhuo1 2011-08-15
  • 打赏
  • 举报
回复
学习ing
新丁11111 2011-08-15
  • 打赏
  • 举报
回复
学习ing......
lxd_2011 2011-08-14
  • 打赏
  • 举报
回复
另外你的理解是对的,上述所做的删除只是逻辑上的
lxd_2011 2011-08-14
  • 打赏
  • 举报
回复
楼主,首先你在硬盘盘符下看到的文件是数据库存放数据的数据文件,执行完drop user xxx cascade;后,会把用户及用户所属的表删除掉,但表空间还是存在的,只是里面的数据已被删除掉了。
如果楼主全部用刚才删除的用户进行的测试的话,执行完上述语句已经把用来测试的数据删除掉了,没有必要把整个库删除掉。
最后说一点,删除了用户和数据后是不会自动释放表空间的,表空间容量是建立数据库的时候初始化的,比方说XXX tablespace 容量为1G,你删除数据是不影响这个容量的,它在硬盘上仍然占用1G空间。


不知楼主能不能读懂

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧