sql >> Database >  >> RDS >> Oracle

Expdp uit Oracle RAC-omgeving

De foutmelding die je krijgt is ORA-29283 :

> oerr ora 29283
29283. 00000 -  "invalid file operation"
*Cause:    An attempt was made to read from a file or directory that does
           not exist, or file or directory access was denied by the
           operating system.
*Action:   Verify file and directory access privileges on the file system,
           and if reading, verify that the file exists.

Dus ofwel de /usr/apps/datafiles directory bestaat niet of kan niet worden geschreven door de eigenaar van het Oracle-proces (bijv. het oracle account); of mogelijk (maar minder waarschijnlijk) het door u opgegeven logbestand bestaat al en kan niet worden overschreven.

Aangezien je hebt gezegd dat het bestaat, kijk je naar de volledige machtigingen van de map (bijv. ls -ld /usr/apps/datafiles , controleer de eigenaar en groep van de Oracle-proceseigenaar (bijv. id -a ) om de machtigingen voor die map en zijn bovenliggende map te vergelijken. Als dat er allemaal goed uitziet, controleer dan terwijl u bent ingelogd als de Oracle-proceseigenaar of u een bestand onder de map kunt maken, bijvoorbeeld:

touch /usr/apps/datafiles/test_file
ls -l /usr/apps/datafiles/test_file
rm -f /usr/apps/datafiles/test_file

Als dat allemaal werkt, en ik denk dat dat waarschijnlijk ook het geval is uit uw opmerking, dan moet u, aangezien u RAC gebruikt, mogelijk verwijzen naar ondersteuningsnota 1305166.1.

Het eerste dat u moet proberen, is de expdp zonder de @orcl , zoals het lijkt (a) er zijn problemen wanneer de listener en de database onder verschillende accounts worden uitgevoerd (bijv. grid en oracle , en het grid gebruiker heeft geen toegang tot de OS-directory - herhaal de touch test als die gebruiker om te zien of dat het geval is); of (b) als de alias load-balanced is en uiteindelijk wordt uitgevoerd op een ander knooppunt dat de directory niet heeft.



  1. Node.js en mysql Callback:query in query callback

  2. Python-lijst van String naar SQL IN-parameter

  3. Hoe de MySQL-replicatiestatus te kennen met behulp van een selectiequery?

  4. 6 probleemvragen die uw database enorm vertragen