Datapump – 02 ¿Por qué falla el comando el Export Datapump con la opción Parallel en Oracle RAC?

Teníamos un script para un export/import datapump que funcionaba cuando la BD era single y ahora que fue llevada a Oracle RAC está fallando. ¿Qué sucedió?

Cuando se activa la opción de PARALLEL el datapump va a invocar varios trabajadores para separar el trabajo y así optimizar el proceso, sin embargo hay que tener en cuenta un detalle cuando estamos en una configuración de Oracle RAC. Estos trabajadores van a estar en cada nodo del RAC, entonces el dumpfile debe estar ubicado en un almacenamiento compartido como ASM o un Clustered-filesystem, sino va a suceder el siguiente error.

ORA-31693: Table data object "TEST"."TEST_15" failed to load/unload 
and is being skipped due to error: 
ORA-31617: unable to open dump file "/datadir/temp_expdp
/TEST_test_03.dmp" for write 
ORA-19505: failed to identify file "/datadir/temp_expdp
/TEST_test_03.dmp"
 ORA-27037: unable to obtain file status

Como conclusión, Datapump(PARALLEL) en Oracle RAC el dumpfile debe estar en un almacenamiento compartido, caso contrario se debe desactivar la opción cluster en el datapump. Ejemplo:

expdp DUMPFILE=EXP_DIR:expOBJ.dmp TABLES=TEST.OBJ parallel=4 CLUSTER=N 

Comments