Je suis en train d'utiliser expdp pour effectuer une exportation sur certaines tables de mon Oracle DBUtilisez Oracle Linux expdp au réseau Windows lecteur
mon code:
expdp AAA/***@xxx schemas=AAA include=TABLE:\"= \'TBL001\'\" directory=DUMP_DIR dumpfile=dmpfile.dmp logfile=lgfile.txt
Voici ce que je reçois
ORA-39002: opération non valide
ORA-39070: impossible d'ouvrir le fichier journal.
ORA-29283: opération de fichier non valide
ORA-06512: à "SYS.UTL_FILE", ligne 536
ORA-29283: opération de fichier non valide
J'ai vérifié en ligne et je pense que ce est un problème de système d'exploitation différent et franchissement/ou une autorisation
Voici ma situation:
- Oracle DB sur une machine Linux avec CentOS 7
- directory = DUMP_DIR est un objet de répertoire sur DB. Il a été créé comme je l'ai vu le chemin à travers Linux Machine = smb: // Win_machine1/dump_oracle/
- DUMP_DIR est situé sur un serveur Windows 2008 R2 (Win_machine1)
- je peux atteindre DUMP_DIR de donner des informations d'identification de fenêtres Oracle machine
- Je lance un fichier .bat dans Win_machine1 avec la commande expdp ci-dessus
Q1: Autorisation d'Oracle Machine via Win Server? Je suppose qu'Oracle utilise AAA pour accéder à la base de données et effectuer une opération d'exportation, mais quel utilisateur accède au répertoire DUMP_DIR? Quand je l'ai localisé dans CentOS, il m'a demandé des informations d'identification (et je l'ai dit à retenir), mais je ne sais pas s'il les a stockées ou si expdp les utilise. (AAA n'est pas un utilisateur de domaine)
Pourrait-il être le problème ou devrais-je vérifier autre chose?
Merci, Marcello
Le propriétaire du logiciel Oracle accède au répertoire OS, pas à l'utilisateur qui exécute l'exportation. Vous devrez peut-être accéder au partage à partir de ce compte, en enregistrant les informations d'identification, mais uniquement s'il s'agit d'une action valide/sûre (dont les informations d'identification?). Je ne sais pas si Oracle saura comment gérer le format de chemin 'smb: //'; Si non, pouvez-vous monter cela pour que vous puissiez vous référer à un chemin de point de montage local normal? –
Le partage se trouve sur le même serveur que celui où expdp est exécuté, de sorte que l'utilisateur Windows connecté à Win_machine1 est le même que celui qui a les privilèges pour ouvrir le partage. Je ne sais pas comment traduire le chemin smb: // ou si c'est possible ... Mais je pense que je dois utiliser l'emplacement CentOS car DB y est monté. –
Vous ne savez pas ce que vous voulez dire. L'utilisateur Oracle sur la machine Linux accède au partage via l'objet répertoire - cet utilisateur (et non celui qui exécute expdp comme sur la machine Linux) doit pouvoir accéder à ce partage. Avez-vous vérifié l'accès en tant qu'utilisateur Oracle? –