IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Import/Export Oracle Discussion :

Export d'une base avec changement de tablespace


Sujet :

Import/Export Oracle

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 41
    Points
    41
    Par défaut Export d'une base avec changement de tablespace
    Bonjour,

    j'ai récupéré un dump de prod, les données étaient réparties sur différents tablespace l'objectif est de tous mettre dans un seul tablespace.

    Pour ce faire j'ai récupérer le schema de la base, j'ai changé tout les tablespaces, j'ai chargé le schema de la base et ensuite j'importe le dump en utilisant la commande imp dans un script :
    imp ****/**** fromuser=*** touser=$base file=$dumpFile log=imp_data_$base_$now.log ignore=Y Indexes=Nlors de cette import tous ce passe bien sauf pour deux tables
    qui s obstinent à se mettrent dans un des anciens tablespaces a cause de la requete STORE AS (tablespace 'THE_OLD_ONE'...
    Ma question est : puis je lui dire d'ignorer totalement ce genre d option ?
    Est ce qu'un bricolage du type ALTER TABLE blabla MOVE TABLESPACE THE_NEW_ONE sur la base puis refaire un export peut marcher ?

    Je précise que évidement j'obtient une erreur
    ORA-00959: tablespace 'the_old_one' does not exist
    Merci

  2. #2
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 41
    Points
    41
    Par défaut
    Je reviens vers vous car je me suis repenché dessus et j'ai trouvé ce qui cause l'erreur, il s'agit de colonnes ayant pour type CLOB, dans l ancienne base ces données étaient sauvegardées dans différents tablespace donc je me suis dis je rajoute au schema les lignes suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
       LOB ("DATA")
        STORE AS 
    	(
            TABLESPACE "DATA_001" 
    		CHUNK 8192 
            PCTVERSION 5 
    		NOCACHE LOGGING
    		STORAGE (MAXEXTENTS 5) 
            INDEX (
                TABLESPACE "INDX_001"
                STORAGE (MAXEXTENTS UNLIMITED)
            )
        )
    En effet j'ai cru qu en explicitant le tablespace de sauvegarde celui ci serait choisi lors de l'import en lieu et place de celui d'origine, mais il n'en est rien, j'ai obtenu de nouveau la même erreur.

  3. #3
    Membre confirmé
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2007
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2007
    Messages : 419
    Points : 616
    Points
    616
    Par défaut
    bonsoir,

    il faudrait que tu fasse un import avec l'option show=Y. tu extrais du fichier l'ordre de création de la table problématique, tu en modifies le tablespace celui de la table et celui de l'index), puis tu crées la table avec l'ordre extrait et modifié, et tu importes cette table seulement. puis tu fais de la même façon pour l'autre, ou les deux en même temps.
    l'import ne crée ni les tables partitionnées, ni les table contenant des lobs dans le tablespace par défaut du user cible. il garde la définition de l'ancien tablespace car l'import classique ne gère pas les définitions multiples de tablespaces.

    tu ne peux pas lui dire d'ignorer ce genre d'option. et tu ne peux pas faire de move si la table n'est pas créée.

    sinon tu demandes un export datapump et tu inclus un remap_tablespace pendant l'import

  4. #4
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 41
    Points
    41
    Par défaut
    intéressant merci de ta réponse, je test ça la semaine prochaine, je te dirais si ça c'est bien passé

  5. #5
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 41
    Points
    41
    Par défaut
    En fait ce que tu me demande dans la premiere partie c'est de faire quelque chose que je faisait déjà lorsque je chargeait mon schema de base,
    sinon tu demandes un export datapump et tu inclus un remap_tablespace pendant l'import
    Je n'ai pas essayé en fait j'ai rajoute, apres avoir chargé mon schema, les lignes suivantes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      ALTER TABLE "T_TABLE_1" MOVE LOB("DATA") STORE AS (TABLESPACE "DATA_001_VPN");
      ALTER TABLE "T_TABLE_2" MOVE LOB("DATA") STORE AS (TABLESPACE "DATA_001_VPN");
    et la ça passe lorsque j'importe les données après, c'est bizarre on dirait qu'il ne prend pas en compte le tablespaces du LOB lors de la création de la table
    étrange ...
    En tous cas Merci pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. export d'une base avec un certain nombre de tables
    Par scazikiss dans le forum Administration
    Réponses: 13
    Dernier message: 30/11/2012, 10h36
  2. Export d'une base Oracle avec 3 instances
    Par tunis71187 dans le forum Import/Export
    Réponses: 3
    Dernier message: 13/05/2011, 16h27
  3. Réponses: 2
    Dernier message: 22/06/2006, 18h20
  4. Création d'une base avec IbConsole
    Par Lucien dans le forum Outils
    Réponses: 3
    Dernier message: 02/03/2004, 19h34
  5. Export d'une vue avec LEFT JOIN
    Par schnourf dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 22/05/2003, 14h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo