Oracle 11g R2 exp导出表不完整
今天发现从Oracle 11gR2 Exp导出表时不完整,有些没有记录的表都未导出。
检查user_tables表发现没有导出的表的segment_created属性是NO
解决办法:
1、可通过下面语句生成SQL执行:
select 'alter table '|| table_name ||' move;'
from user_tables where segment_created='NO';
或是
select 'alter table '|| table_name ||' allocate extent;'
from user_tables where segment_created='NO';
2、通过修改系统参数(未测试):
可以通过修改deferred_segment_creation 为false 来禁用这个功能,修改只对以后创建的table 生效。 对于已经存在的table不受影响。
alter system set deferred_segment_creation=true;
其它
alter table ... move不但拉回了HWM,而且回收了extent
在oracle9i中,delete很大的表的数据后,需要收缩表的空间,
可以使用alter table tabname move (tablespace tbs_name),
注意:这个时候一定需要rebuild index . 因为move后,数据的rowid变化了
相关推荐
dxyadc 2020-06-26
某某某 2020-01-12
hell0kitty 2019-10-21
molong0 2019-05-08
tpyangqingyuan 2019-01-10
ReganHoo 2010-12-03
IceStreamLab 2019-07-01
ShoppingChen 2019-01-10
独苏揽月 2019-06-28
forrestou 2019-06-27
mojianc 2019-06-27
Cei语言 2014-04-24
wasdzjh 2019-05-06
JackSparrow 2018-08-03
der 2019-02-12
xianyuxiaoqiang 2018-09-28
forrestou 2018-09-26
wumingxiaozei 2018-02-10
HANHUABAO 2015-05-24