-1

After performing expdp command in production database (Oracle 11g - linux):

expdp abc/123 DIRECTORY=data_pump DUMPFILE=SA10_%u.dmp LOGFILE=SA10.log 
TABLES="abc"."/1FE/019" PARALLEL=4 CONTENT=DATA_ONLY COMPRESSION=ALL 
EXCLUDE=statistics STATUS=60

it take more than 13h to finish the export and it was completed with this error message:

ORA-31693: Table data object "abc"."/1FE/019" failed to load/unload and is 
being skipped due to error:
ORA-02354: error in exporting/importing data
ORA-01555: snapshot too old: rollback segment number 56 with name 
"_SYSSMU56_1611713889$" too small 

Anyone please advice how can I solve this error?

P.S. I'm not allow to change retention policy!

0

2 Answers 2

1

If you can't change your "retention policy" (aka UNDO_RETENTION), you should search for other ways to improve your expdp performance.

You can try one (or more) of the following:

  1. Try to higher your parallel parameter;
  2. Use faster disks to the expdp destination;
  3. Do not use COMPRESS, if you have few and slow CPUs.
0

ORA-01555: snapshot too old error

Cause:

As simple this issue occurs from Oracle DB if table (in Oracle) to be archived is big and SELECT query on the table takes time to extract data. When any SELECT query runs in Oracle, Oracle will try to maintain read consistency mechanism.

Solution:

  1. Resume the job and make sure no session updates the table to be archived while job is running.
  2. Increase UNDO tablespace.
  3. Set UNDO_RETENTION parameter to high value so that data in UNDO will be retained for that much time before getting overwritten.

For your ref Here, Here and Encountering "Snapshot too old" error during execution of expdp command"

Not the answer you're looking for? Browse other questions tagged or ask your own question.