快照號過舊,回退段號過小,信息如下:
ORA-31693: 表數據對象 "CZBSDB"."SMS_RESULT_RECORD" 無法加載/卸載並且被跳過, 錯誤如下:
ORA-02354: 導出/導入數據時出錯
ORA-01555: 快照過舊: 回退段號 716 (名稱為 "_SYSSMU716_840438965$") 過小
已成功加載/卸載了主表 "****DB"."SYS_EXPORT_SCHEMA_01"
(背景:表過大,該表文件大小超過10G)
情況1)考慮到可能問題存在於一致性讀,故采用閃回段號截取的方式(未成功!)
先查出閃回號:
Select current_scn from v$database
按表壓縮導出,並增加閃回參數
expdp 'user/"password"' directory=data_dump dumpfile=czbsdb0310.dump logfile=czbsdb0310.log TABLES=SMS_RESULT_RECORD flashback_scn=12104525675282 COMPRESSION=ALL
情況2)undo表空間過小,加大undo表空間。
先確定使用的undo表空間,然后對指定undo表空間加大。
select segment_name,
tablespace_name,
r.status,
(initial_extent / 1024) InitialExtent,
(next_extent / 1024) NextExtent,
max_extents,
v.curext CurExtent
From dba_rollback_segs r, v$rollstat v
Where r.segment_id = v.usn(+)
and segment_name='_SYSSMU716_840438965$'; //查看指定回退段號的回退段名稱及大小
select * from dba_data_files t where t.TABLESPACE_NAME='UNDOTBS2'; //查出指定表空間下的數據文件信息
alter tablespace UNDOTBS2 add datafile '+YUNDATA/zsczbs/datafile/undotbs04.dbf' size 10000M ; //增加回退段大小
--OK!問題圓滿解決。
