Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Import/Export
Import/Export Forum d'entraide sur les outils d'import/export Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/08/2008, 10h40   #1
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
Par défaut Export en 8i à partir d'une base 9i

Bonjour à tous,

j'aimerais savoir s'il est possible d'exporter des tables d'une base 8i à partir d'une base 9i via un dblink.

Je suis sur une AIX 5.3 avec une base 9i 64 bits et je souhaite à partir d'un répertoire exécuter la commande suivante :
Code :
1
2
 
exp user8i/pass8i@base8i PARFILE=toto.dat
sachant que j'ai bien "base8i" dans mon tnsname.ora et qu'il désigne une 8i sur un serveur AIX 4.3 distant.

Mon dblink fonctionne bien, je pe faire un select sur la base 8i.

L'erreur que j'obtiens est la suivante :
Citation:
Export: Release 9.2.0.1.0 - Production on Wed Aug 13 10:18:08 2008

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.


Connected to: Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production
With the Partitioning option
JServer Release 8.1.7.4.0 - Production
EXP-00056: ORACLE error 942 encountered
ORA-00942: table or view does not exist
EXP-00000: Export terminated unsuccessfully
Le pb ici c'est que j'utilise l'export version 9i...y'a t-il une option qui force l'export en 8i?

Je dois procéder comme ça car il n'y a pas assez de place sur le serveur où j'ai ma 8i pour créer les dump, l'idée est donc de passer par dblink.

Merci de votre aide

Cat
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2008, 17h13   #2
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
J'ai essayé de faire l'export sur le serveur AIX 4.3, donc en me connectant à la base 8i directement et là ça fonctionne.

commande :
Code :
1
2
 
imp user8i/pass8i PARFILE=toto.dat
résultat :
Citation:
Export: Release 8.1.7.4.0 - Production on Wed Aug 13 17:07:09 2008

(c) Copyright 2000 Oracle Corporation. All rights reserved.


Connected to: Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production
With the Partitioning option
JServer Release 8.1.7.4.0 - Production
Export done in US7ASCII character set and WE8ISO8859P1 NCHAR character set
server uses WE8ISO8859P1 character set (possible charset conversion)
Note: grants on tables/views/sequences/roles will not be exported
Note: indexes on tables will not be exported
Note: constraints on tables will not be exported

About to export specified tables via Conventional Path ...
. . exporting table TOTO
8 rows exported
Export terminated successfully without warnings.
Le pb ne vient donc pas du user mais bien du fait que je veux lancer un export 9i via un dblink pour exporter les données d'une base 8i (sur un autre serveur)...

Y'a t-il un paramètre pour dire "je lance la commande export à partir de ma base 9i MAIS en mode 8i" ???

Si vous avez une idée n'hésitez pas, je n'ai que peu de temps pour résoudre le pb...
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2008, 19h10   #3
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
J'ai tenté de copier le exp.exe de ma 8i sur le serveur de la 9i, en le nommant exe8i puis j'ai exécuté la commande :

Code :
1
2
 
exp8i user8i/pass8i@base8i PARFILE=toto.dat
et voici l'erreur que j'obtiens :

Citation:
Export: Release 8.1.7.4.0 - Production on Wed Aug 13 19:11:50 2008

(c) Copyright 2000 Oracle Corporation. All rights reserved.


EXP-00056:
EXP-00000: Export terminated unsuccessfully
--> il n'y a même pas de libellé sur l'erreur ORACLE !!

Comment faut-il faire svp ?
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 11h09   #4
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
En lançant le catexp.sql de la 8i sur la 9i, j'ai tjrs la même erreur...c'est bizzare d'avoir une erreur
Citation:
ORA-00942: table or view does not exist
alors que le pb vient d'une incompatibilité 8i/9i

Personne ne peut m'expliquer ?
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 13h15   #5
Membre actif
 
Inscription : avril 2007
Messages : 134
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : avril 2007
Messages : 134
Points : 150
Points : 150
Bonjour,

Tout d'abord, peux-tu donner quelques précisions.
Pourquoi vouloir absolument faire un export en version 8i?
Quelle est la version de la base cible où le dump doit être importer?
billharry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 14h32   #6
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
Bonjour,

tout d'abord merci de ta réponse...

Je dois faire un export de ma base 8i pour faire un import dans une base 9i...

si je connecte à la base 8i et utilise l'exp 8i, j'obtiens un dump que je peux charger sans pb dans ma base 9i...

le pb c'est que les 2 bases sont sur des serveurs différents et que je ne veux pas créer le dump sur le serveur source où j'ai la 8i, puis le transférer en ftp (zippé ou pas) sur l'autre serveur, et importer les données sur la 9i...

du coup j'essaie de lancer directement la commande du serveur cible (avec la 9i) en me connectant à la base 8i sur le serveur source via un dblink qui lui fonctionne bien...

le soucis c'est que l'utilitaire EXP est celui de la 9i, et même en recopiant celui de la 8i sur mon serveur cible, à partir duquel je lance donc la commande, et en le lançant, celà ne fonctionne pas :-(
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 14h39   #7
Membre actif
 
Inscription : avril 2007
Messages : 134
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : avril 2007
Messages : 134
Points : 150
Points : 150
Les exports peuvent être réalisés depuis le noyau 9i pour les importer dans la base 9i, ceci ne pose aucun problème. 9i peut interagir avec 8i.
Pas la peine de te compliquer la vie
billharry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 15h10   #8
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
ok mais alors pourquoi lorsque je lance mon export 9i sur la 8i j'ai le message d'erreur "table or view does not exist"...alors que quand je fais un select avec le même dblink et le même user ça fonctionne ?
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 15h30   #9
Membre actif
 
Inscription : avril 2007
Messages : 134
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : avril 2007
Messages : 134
Points : 150
Points : 150
Le plus sûr est d'utiliser l'utilitaire d'export de la même version que la base de données source.
Donc peux-tu installer un noyau oracle 8i à côté de ton noyau 9i? (la cohabitation de noyaux Oracle fonctionne très bien sur un même serveur)?

Sinon, passe le catexpl v9i sur ta base 8i afin de créer le bon catalogue (tu as indiqué avoir fait l'inverse...)
billharry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 15h43   #10
Membre actif
 
Inscription : avril 2007
Messages : 134
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : avril 2007
Messages : 134
Points : 150
Points : 150
Il existe une solution plus complexe pour ne pas passer par un dump physique et donc ne pas avoir de fichier qui traine, mais cela demande quelques connaissances Unix, car on passe par des tunnels:

Sur ta machine cible (donc 9i):

1. mknod /tmp/inpipe.dmp p #creation d un tunnel
2. imp xxx/xxx file=inpipe.dmp & #import depuis ce qui va arriver par ce tunnel

Sur ta machine source (donc 8i)

3. mknod /tmp/outpipe p #creation du tunnel
4. ssh -C user@targethost 'cat > /tmp/inpipe.dmp' < /tmp/outpipe & #via ssh tout ce qui est mis dans le dump est envoye dans le tunnel
5. exp xxx/xxx file=/tmp/outpipe #export vers le tunnel

C'est compliqué, mais ça consomme 0Mo
J'ai encore une autre solution si tu as de quoi stocké un dump zippé sur ta machine source...
billharry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 15h57   #11
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
wow ça me plait bien, mais ça va faire peur à certains comme méthode donc malheureusement je vais devoir passer par des dumps :-(

Sinon je ne peux pas stocker de dumps sur le serveur source non (pb de place même en compressant), de toute façon, la solution choisie a été de ne pas faire de ftp car ça prendrait trop de temps...

J'ai essayé ta méthode qui est de lancer le catexp.sql de la 9i sur la 8i donc l'inverse de ce que j'avais déjà testé...mais j'ai toujours la même erreur...et en plus lorsque j'ai lancé ce catexp.sql j'ai eu des erreurs de ce type :

Citation:
GRANT SELECT ON sys.exu9xtb TO PUBLIC
*
ERROR at line 1:
ORA-00942: table or view does not exist
et surtout dans tous mes cas de test :

Citation:
CREATE ROLE exp_full_database
*
ERROR at line 1:
ORA-01921: role name 'EXP_FULL_DATABASE' conflicts with another user or role
name
Alors même si mes tests ne concerne qu'une seule table, est-ce que ce rôle exp_full_database (qui reste donc en 8i) pose pb ?
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 17h29   #12
Membre actif
 
Inscription : avril 2007
Messages : 134
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : avril 2007
Messages : 134
Points : 150
Points : 150
Peux-tu me préciser le but de la manipulation?
Est-ce pour migrer la base de données, ou bien est-ce pour exporter régulièrement des données 8i dans une base 9i?

As-tu l'espace disque nécessaire pour installer un noyau 8i sur ton serveur 9i?
billharry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 17h37   #13
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
non en fait je ne peux pas installer de noyau 8i sur le nouveau serveur...le but est de migrer un base 8i sur aix 4.3 vers une 9i sur aix 5.3...

je ne dois pas utiliser de ftp non plus :-(

et la méthode de tunnel ssh n'est pas envisageable...

le seul moyen est de passer par dblink mais j'ai l'impression qu'ORACLE se perd entre les bibliothèques 8i et 9i, même en relançant le fameux catexp.sql pour avoir les mêmes configurations des deux côtés.
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2008, 18h02   #14
Membre actif
 
Inscription : avril 2007
Messages : 134
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : avril 2007
Messages : 134
Points : 150
Points : 150
Citation:
Envoyé par Cathy Voir le message
non en fait je ne peux pas installer de noyau 8i sur le nouveau serveur...le but est de migrer un base 8i sur aix 4.3 vers une 9i sur aix 5.3...
Pour une migration : sauvegarde par RMAN, tu redémarres en 9i et migration habituelle sans export/import
billharry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2008, 11h13   #15
Nouveau Membre du Club
 
Inscription : juillet 2005
Messages : 126
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 126
Points : 33
Points : 33
Merci à tous, je vais faire export 8i puis FTP puis import 9i ...
Cathy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2008, 11h58   #16
Membre actif
 
Inscription : avril 2007
Messages : 134
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : avril 2007
Messages : 134
Points : 150
Points : 150
Citation:
Envoyé par Cathy Voir le message
Merci à tous, je vais faire export 8i puis FTP puis import 9i ...
Bon courage
billharry est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h04.


 
 
 
 
Partenaires

Hébergement Web