在ORACLE中,一数据文件大于2G,我删掉了部分数据,可是查看文件大小仍没变 truncate table之后,可是数据文件大小仍然没有变。是不是有个reshrink什么的?没用过。请指教 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 也可以用EXP出去再IMP回来,要不高水位降不下来 删除了数据肯定也是不能回收一分配的空间的,如果有EXP/IMP的话。得先建立初试化表,让它恢复原始的分配空间,再IMP。ROWS=Y。 alter database datafile'c:\oracle\the.dbf' resize 150M;alter database tempfile 'f:\oracle\oradata\one\temp01.dbf' resize 100m 这里边有两个问题.其中有高水位的标志的问题.数据表分配20m .最多一次插入用了12M.高水位标志在此标注.然后你把这12M删除了。数据库不回收这部分空间.(还是占用20M)a. DBMS_SPACE.UNUSED_SPACE查看一下这个高水位标志.用alter table 表名 deallocate unused keep xM.回收高水位之上的8M空间.b.可以truncate table重建表.清除水位标志以下的12M.当然可以alter table 表名 move 移动表便可. exp导不出去,同样报ORA08103错误。先谢谢大家的参与与解答。 to yangqingdelphi:能给我一个具体的操作步骤吗?因为我这里的数据比较重要,我怕把数据给弄坏了。 win 7装toad9.5或更高版本 求解: ORA 03113:通讯通道的文件结束 存储过程判断表存在的问题? 数据库统计问题 关于UPDATE的问题 如何将表和字段的注释输出? oracle jdbc连接错误? 提问:关于svrmgel 如何把Access中的一个表连同数据导到Oracle中去? 奇怪,请帮我看看这个组合的简单SQL,动态执行总说不对。谢谢 请问给位高手:如何编程实现不同数据库之间的移植问题! 怎么写这个SQL语句!!!!!
得先建立初试化表,让它恢复原始的分配空间,再IMP。ROWS=Y。
数据表分配20m .最多一次插入用了12M.高水位标志在此标注.
然后你把这12M删除了。数据库不回收这部分空间.(还是占用20
M)
a. DBMS_SPACE.UNUSED_SPACE查看一下这个高水位标志.
用alter table 表名 deallocate unused keep xM.回收高水位之上的8
M空间.
b.可以truncate table重建表.清除水位标志以下的12M.当然可以alter table 表名 move 移动表便可.
能给我一个具体的操作步骤吗?
因为我这里的数据比较重要,我怕把数据给弄坏了。