Import base de donnees oracle

Résolu
Bonjour,
Je veux importer une base de données oracle d'un poste vers un autre, mais le problème qui se pose c'est ce qu'il s'agit de deux versions differents à savoir 8 et 9i, lorsque j'essaye j'aurais cet message
" La conversion de jeu de caractere est impossible ..."
Veuillez me répondre et merci infiniment

22 réponses

Résumé de la discussion

Importation d'une base Oracle entre deux versions (8i et 9i) entraîne l'impossibilité de convertir le jeu de caractères, générant une erreur qui bloque le transfert. Plusieurs éléments suggèrent de vérifier les paramètres NLS sur les deux machines via select * from nls_database_parameters, et d'envisager l'usage d'outils comme dbca pour créer une base vide sur Linux/Unix. Des tentatives échouent avec IMP-00017/ORA-6550 et des messages sur DBMS_EXPORT_EXTENSION, indiquant que certains composants ou paramètres statistiques ne sont pas compatibles entre les versions et que des ajustements manuels peuvent être nécessaires. Des échanges discutent aussi de la différence entre export et import, de la syntaxe d’import, et de l’importance de préparer les tablespace, les rôles et les utilisateurs avant l’opération.

Bobot (l’IA à votre service)
  1. Que donne le "select * from nls_database_parameters" sur les 2 machines ?

    @++
    Poster, poster encore et toujours :-)
    5
    1. Salut mick57,

      Si t'es sous linux ou Unix, tu peux utiliser l'outil dbca en mode graphique. C'est un "Wizard" qui va t'aider à créer un BD vide.

      Asser simple et rapide. Tu le trouveras sous $ORACLE_HOME/bin

      Bonne chance.

      Dave
      2
      1. exporter tu veux dire ???

        importer :
        qqchose (fichier, etc.) => oracle

        exporter :
        oracle => qqchose...

        @++

        Vous hésitez entre Linux et Windows ?
        Vous voulez dépenser du temps ou de l'argent ?
        1
        1. bonjour

          je veux savoir qu'elle est la syntaxe de l'import d"une base de donne oracle
          et es que toute la structure de la base soit importé ou non

          merçi
          1
          1. Bonjour à tous,

            J'importe d'une base Oracle 9i vers une 10g et l'import commence correctement, certaines tables sont créées correctement, mais après un certain temps, j'obtiens le message suivant :
            IMP-00017: Echec de l'instruction suivante avec erreur ORACLE 6550 :
            "BEGIN SYS.DBMS_EXPORT_EXTENSION.SET_IMP_SKIP_INDEXES_OFF; END;"
            IMP-00003: Erreur ORACLE 6550 rencontrÚe
            ORA-06550: Ligne 1, colonne 12 :
            PLS-00302: Le composant 'DBMS_EXPORT_EXTENSION' doit Ûtre dÚclarÚ
            ORA-06550: Ligne 1, colonne 8 :
            PL/SQL: Statement ignored

            Avez-vous une idée de la source de cette erreur ?
            1
            1. Importer un export provenant d'une base 8 dans une base 9i est possible. L'inverse ne l'est pas ( en gros tu peux monter mais pas descendre).

              Par contre BATMAT a raison, il sagit d'un pb lié au CHARACTER SET qui est defini à la création de la base et non modifiable par la suite.

              Il nest po possible d'importer une base ayant un caractere set "supérieur" à la base dans laquelle on veut l'importer. (en gros si ta base originale à des "à" ou "é" alors que celle dans laquelle tu importe ne conné po ces caractères : c'est mort!).

              Donc : recréer la base 9i.
              0
              1. Ya ptete une solution qd meme : utiliser tr à outrance. Je n'ai jamais regardé le format des exports Oracle : si le format est simple et non compressé, tu pourrais faire un truc du genre

                tr 'àâéèê' 'aaeee' < tonexport > tmp
                mv tmp> tonexport

                Je regarde lundi si c possible et j'essaie de penser à te dire ce qu'il en est... A moins que qqn n'annonce que le format d'export oracle est binaire pur, compressé crypté ou que sais-je ;p

                @++
                Poster, poster encore et toujours :-)
                0
                1. non ça c po possible.. l'export c pas un simple fichier texte et puis y'a bocou plus de caractere ke ça...
                  Et puis de toutes façons, ce serait kan même dommage de mettre le bordel dans une base tout neuve! lol
                  0
              2. Je viens de vérifier et l'export laisse les données en clair... Il doit donc être possible d'utiliser tr.

                A tester donc :)

                @++
                Poster, poster encore et toujours :-)
                0
                1. Merci,
                  c vrai que lorsqu'il s'agit d'un caractere set superieur il n'est pas possible de faire l'import,
                  la solution donc, c de reinstaller 9i avec soin, en choisissant le jeu de caratere convenable, et c fait avec reuissite, en plus que ça il faut mentionner dans le script d'imort l'option FULL à YES

                  Merci à tous
                  0
                  1. Bonjour,

                    je cherche comment importer que les données d'une base oracle et je veux pas importer les setructures des tables.

                    Merci
                    0
                    1. commt importer/exporter une base de donnee oracle dans unix?
                      0
                      1. Salut

                        pour exporter sous linux/unix

                        exp system/xxxx file=/var/dump/file.dump log /var/log/export_oracle.log FULL=Y ROWS=Y

                        Mais regardes de pluspres les options avec -help

                        deplus pour faire un export il y a une opeartion prelimaine a realiser:
                        les infos ici:

                        http://www.nuxora.com/2007/01/22/import-export-sous-oracle/
                        0
                      2. Salut a tous
                        je suis moi actuellement en stage et je dois faire une sauvegarde de la base de donnée oracle 9.2.0.1.0 sous linux red hat enterprise 3, sur un disk NAS, et je vous avoue franchement je suis nul en linux (pour l'instant)alors si kelkun pouvait m aider ca serai vraiment sympa car la je vois le stage avancer mais pas mon projet.voila merci a ceux ki me tenderont la main.
                        cramouillo
                        0
                    2. svp à chaque fois que j'installe oracle 9i , oms ne peut pas démarrer

                      j'ai essayer plusieurs fois , et j'ai pas réussi , qu'est ce que je fais

                      c'est à dire comment j'installe oracle 9i avec oms
                      0
                      1. Bonjour,

                        je cherche moi aussi à migrer de oracle 8i vers la 9i.
                        pas de probleme pour l'export.

                        Par contre comment faire pour créer une base vide sur la 9i afin de faire un import sur une base propre ?

                        merci

                        Micka
                        0
                        1. salut et merci pour ta réponse davlar99.

                          En fait je suis sous windows.
                          J'ai réussi à créer ma base de données vide. J'ai créé les tablespace, les segments de rollback comme la base existante en 8i.

                          J'ai également créé les rôle et le user avec lequel je fais l'export.

                          L'import se passe pas "trop mal" mais y a des erreurs avec les statistiques:

                          IMP-00017: Echec de l'instruction suivante avec erreur ORACLE 6550 :
                          "DECLARE SREC DBMS_STATS.STATREC; BEGIN SREC.MINVAL := '31'; SREC.MAXVAL :="
                          " '393939'; SREC.EAVS := 0; SREC.CHVALS := NULL; SREC.NOVALS := DBMS_STATS.N"
                          "UMARRAY(254422546068207000000000000000000000,297121534289157000000000000000"
                          "000000); SREC.BKVALS := DBMS_STATS.NUMARRAY(0,1); SREC.EPC := 2; DBMS_STATS"
                          ".SET_COLUMN_STATS(NULL,''xxxx,'ICODE',NULL,NULL,NULL,,,00000"
                          "1111111,0,srec,4,0); END;"
                          IMP-00003: Erreur ORACLE 6550 rencontrée
                          ORA-06550: Ligne 1, colonne 367 :
                          PLS-00103: Symbole "," rencontré à la place d'un des symboles suivants :

                          ( - + case mod new not null others <an identifier>
                          <a double-quoted delimited-identifier> <a bind variable> avg
                          count current exists max min prior sql stddev sum variance
                          execute forall merge time timestamp interval date
                          <a string literal with character set specification>
                          <a number> <a single-quoted SQL string> pipe
                          Symbole "null" a été substitué à "," pour continuer.

                          As-tu une idée ?

                          Merci
                          0
                          1. Bonjour,

                            C'est un bug connu de Oracle depuis 2005.

                            Le plus souvent c'est qu'il y'a un apostrophe a quelque part dans le nom d'un colonne.
                            Donc soit 2 possibilités les NLS ne sont pas les mêmes (BD à BD) ou (dans registre ou variable d'environnement) ou
                            c'est soit l'histoire de l'apostrophe.

                            Dans le cas de l'apostrophe:
                            J'ai pris la peine depuis d'exporter (en 9i) avec l'option statistics=none
                            L'option existe possiblement aussi avec la commande d'import (jamais essayé) .
                            Je sais que le l'option ANALYZE=N existe mais fait-elle la même chose?.

                            Dans le cas des NLS:
                            Compare tes paramètres de registre ou ceux de tes BD dans la table v$NLS_PARAMETERS.

                            A+
                            0
                            1. bon jour,merçi
                              je veut l'instruction pour importer la base de donnée sous oracle ,j'ai la sauvgarde .BMP?merçi
                              0
                              1. bonjour,
                                j ve savoir comment creer une base de donnée sous orcle 8i et avoir son nom et son chemin car je ve l'utiliser dans un prg java et puis comment je vais l'importer sur un cd.
                                merci d'avance.
                                0
                                1. salut,svp j ai besoin des cours d'oracle pour mon TP qu'il s'agit de la gestion des salle TP
                                  merci d'avance
                                  0
                                  • 1
                                  • 2