在RAC环境上使用expdp进行逻辑备份时,报如下错误。
ORA-31693: Table data object "
ORA-31617: unable to open dump file "
ORA-19505: failed to identify file "
ORA-27037: unable to obtain file status
Solaris-AMD64 Error: 2: No such file or directory
Additional information: 3
使用的备份脚本是:
expdp '"/ as sysdba"' directory=DATA_PUMP_DIR dumpfile=$FILENAME"1".dump,$FILENAME"2".dump,$FILENAME"3".dump logfile=$FILENAME.log schemas=test,test2,test3 parallel=3 COMPRESSION=all
解决的方式:
1. Share/mount the dumpfile destination with all RAC nodes performing the expdp
- OR -
2. Use CLUSTER=N during Datapump so it will only run on the node which has the mount point and permissions to write to it.
我的方法是修改了expdp脚本,加如了 CLUSTER=N 参数。
expdp '"/ as sysdba"' directory=DATA_PUMP_DIR dumpfile=$FILENAME"1".dump,$FILENAME"2".dump,$FILENAME"3".dump logfile=$FILENAME.log schemas=test,test2,test3 CLUSTER=N parallel=3 COMPRESSION=all
最后,备份成功。不在报错了。