重建本地索引引起的ORA-01555,最终exp导出数据,drop分区表,重建表,恢复。

由于两张分区表数据量差别很大,数据较小的用上一篇博文的方法直接将全局索引成功修改成了本地索引。

另一张表每天有200万行数据,而表里面有接近大半年的数据,在用同样的方法修改全局索引为本地索引时,执行10多个小时报了ora-01555错误。

可能是重建索引量太大时间太久造成了这个ORACLE的经典错误。

最终将数据用EXP导出,再drop掉该分区表,重建新表,再导入数据解决了问题,整个过程才2个小时左右,比修改索引快多了。


但是在使用PL/SQL导入时遇到了不能修改缓冲区大小的问题,固定在80K,还不让修改。

最后用如下命令成功导入:

imp user/password@dbname file=e:\xxx.dmp ignore=y statistics=none buffer=100000000


ignore=y   ---忽略创建错误,因为已经自己重建了表,分区表建立的时候一定使用 using index local ,避免操作分区索引又会失效。

statistics=none   ---不导入数据库统计信息,提高导入性能。


又学习了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值