Oracle data pump impdp à un serveur distant
Nous avons un fichier de vidage de ce que nous voulons importer pour Amazon rds serveur.
C'est ce que j'ai fait:
Créer une db lien et vérifier que cela fonctionne:
create public database link rdsdblink
connect to dbuser identified by dbpsw
using '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST='xxx')(PORT=1521)))(CONNECT_DATA=(SID=dbsid)))';
SQL> select * from dual @ rdsdblink;
D
-
X
Créer un répertoire pour le fichier de vidage:
CREATE OR REPLACE DIRECTORY DATA_PUMP_DIR AS 'G:\DB';
Importer le fichier de vidage:
impdp dbuser/dbpsw@rdsdblink tablespaces=EMP directory=DATA_PUMP_DIR dumpfile=EMP_dump.DMP logfile=EMP_dump.log network_link=rdsdblink
J'ai également ajouté rdsdblink chaîne de connexion à tnsnames.ora de fichiers et redémarré oracle service ("l'arrêt immédiat", puis "démarrage").
L'erreur suivante est survenue:
Connecté à des bases de données Oracle 11g Release 11.2.0.2.0 - 64bit de Production
ORA-39001: invalid argument de valeur
ORA-39200: nom du Lien "rdsdblink" n'est pas valide.
ORA-02019: description de la connexion pour la base de données distante pas trouvé
Mon local oracle version:
La Base de données Oracle 11g Express Edition Version 11.2.0.2.0 - Production
Distance oracle version:
Oracle Database 11g Release 11.2.0.2.0 - 64bit Production
OriginalL'auteur Cal | 2014-01-28
Vous devez vous connecter pour publier un commentaire.
Que vous avez connecté à la base de données distante (via
dbuser/dbpsw@rdsdblink
), mais votre DB lien est créé dans votre base de données locale. Au moment où vous essayez d'exécuter l'importation sur la distance DB, avec un réseau de liaison aussi à la distance DB, et que la liaison réseau est d'essayer d'utiliser une DB lien qui n'existe pas sur que la distance DB.La
tnsnames.ora
entrée et la DB lien sont des choses totalement distinctes.Vous devez vous connecter normalement localement à l'aide de selon des informations d'identification que vous avez utilisé pour créer la DB lien, probablement. Le
network_link
paramètre sera alors faites de votre base de données locale de session, qui est démarré parimpdp
, agir contre le serveur distant; de sorte que votre répertoire local peut être utilisé.Sauf que... ça ne marche pas comme ça. La distance de la base de données identifié par le
network_link
peut être utilisé comme source de l'importation, sans un fichier de vidage à tous; mais il ne peut pas être la cible d'une importation à partir d'un fichier.De la
impdp
de la documentation:Si tu voulais vraiment aller dans cette voie, je pense que vous auriez besoin d'un lien de distance locale, et pour exécuter l'importation par rapport à la distance (comme vous), mais pour être en tirant directement à partir de votre schéma n'est pas un précédent à l'exportation. Vous souhaitez toujours besoin d'un accès à une
DIRECTORY
objet sur le serveur distant, comme les journaux etc. serait écrit-il, même si vous n'avez pas de copie de votre fichier de vidage. Même avecnologfile
je crois qu'il sera d'erreur si vous ne spécifiez pas un répertoire ou n'ont pas les autorisations sur elle.La l'article que vous avez associé à votre question précédente dit la même chose:
vous ne pouvez pas. Le fichier doit être sur le serveur de l'instance de base de données auquel vous êtes connecté est en cours d'exécution sur. Il devrait être sur le serveur rds, et je suppose que ce n'est pas une option? Autrement, vous avez à l'exportation et à l'importation, comme une étape, sans aucun intermédiaire fichier de vidage, et l'obtention d'un DB lien pour aller dans l'autre sens pourrait être problématique (en supposant que votre écouteur n'est pas exposé à l'Internet).
merci pour votre aide. Nous allons essayer de trouver un moyen de le faire.
avez-vous vu cette importation guide? Il comprend une
impdp
dans RDS, mais à partir de CE - que vous pouvez faire de même à partir de votre base de données, mais seulement si vous pouvez l'atteindre, ce qui est peu probable. Si vous pouvez refaire l'exportation vous pouvez utiliserexp
etimp
au lieu de cela, ce qui pourrait fonctionner dans votre scénario. Il peut vous donner d'autres idées aussi.OriginalL'auteur Alex Poole