我建立了一个用户,不小心把这个用户的表空间默认成了USERS表空间,当我把从其他地方备份的数据导入到我的数据库中的时候,发现我数据库文件所在的磁盘的空间满了,于是我想把我刚才导入的数据删除,我把这个用户给删除了,但USERS表空间的数据并没有释放,现在不知道如何处理好了,请各位高手多指教!
解决方案 »
- recycle bin的问题
- tuxedo 编译运行求助
- 为表空间添加一个新的数据文件的时候出现如此错误
- 请问谁有过将mysql存储过程转到oracle的经历
- 求教 从两个表中做查询的问题 !
- 某个字段值为逗号隔开的多个字符串,现要以逗号为界分别取出这些值,用来绑定到datagrid,该如何做?
- winXP上新安装的数据库在Enterprise Manager中登陆时报错“没有监听”怎么解决?
- 请问如何修改以前的触发器
- [版主救命啊]acl添加后仍然不能使用
- 统计员工人数高于各部门平均人数的部门
- 如果根据oraData目录下的文件恢复某个用户下所有的object?
- 如何实现3个字段相同时保留另一个字段值最大的那条记录
不過建議你不要刪除該表空間.你可以增加該表空間的大小:
ALTER TABLESPACE USERS ADD DATAFILE '....' SIZE xxxM
DROP USER TEST
*
ERROR 位于第 1 行:
ORA-01922: 必须指定 CASCADE 以删除'TEST'
你删除用户的时候,如果该用户下有数据对象,那么必须指定 CASCADE,
所以既然你成功删除了那个用户,那么空间不释放是没有道理的。怀疑你的 USERS 表空间是设置成了自动扩展,而且没有限制最大值,所以导致文件扩展之后,磁盘满了。这样即便数据已经删除,但物理文件不会收缩的。你可以尝试如下缩减数据文件大小:
ALTER DATABASE DATAFILE 'filename' RESIZE 100M;如下禁用自动扩展:
ALTER DATABASE DATAFILE 'filename' AUTOEXTEND OFF;