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

Oracle Discussion :

[oracle 8.0.5] suppression d'un datafile dans tablespace system


Sujet :

Oracle

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 38
    Points : 14
    Points
    14
    Par défaut [oracle 8.0.5] suppression d'un datafile dans tablespace system
    Bonjour,

    j'ai, par erreur, affecté deux datafiles au tablespace system.
    ces deux datafiles sont d'une taille conséquente (5go).
    Je souhaite supprimer ces datafiles de ce tablespace mais je n'y parviens pas:

    J'ai tout de même réussi à réduire la taille de ces fichiers de données à l'aide d'un [alter database datafile x resize 50k]...c'est déjà ça !

    j'ai essayé également de mettre ces fichiers offline et de les supprimer avec [alter database datafile x offline drop] mais ça ne marche pas...
    -j'obtiens le message suivant si je suis en mode noarchivelog :
    offline immediate disallowed unless media recovery enabled
    - si en revanche je suis en mode archivelog, la commande semble fonctionner mais au redémarrage de la base j'ai le message d'erreur ci dessous :
    ORA-01147: SYSTEM tablespace file 25 is offline
    ORA-01110: data file 25: '/index/oracle/xdwa/DATA01.dbf'


    ...La lecture des rares posts sur le sujet ne m'inspirent pas confiance quant à mes chances de réussite : j'ai cru comprendre qu'on ne supprimait pas un datafile !
    Quelqu'un aurait-il une vague idée de la façon dont je dois m'y prendre?

  2. #2
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut
    J'ai bien peur que, concernant le tablespace SYSTEM, ce ne soit pas possible, cf la FAQ : Comment supprimer un datafile ?
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 38
    Points : 14
    Points
    14
    Par défaut remplacer le tablespace system

    ...je sais...je sais...J'avais lu cette FAQ mais j'esperais qu'il existe un moyen de contourner le problème en supprimant manuellement les liens. Ce n'eut pas été une solution très orthodoxe mais même les solutions peu recommendables restent des solutions.


    Existe-il alors un moyen de remplacer le tablespace system... du style : je crée un nouveau tablespace avec un seul datafile, il devient le tablespace system et je supprime celui dont je ne veux plus (celui avec les trois datafiles) ?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 6
    Points
    6
    Par défaut Article en anglais
    Je sais pas si c'est le cas ici (50KB < 5 blocks Oracle?), il devrait y avoir moyen de reconstruire le 'Tablespace' plus tard avec cette commande:
    select
    'alter index <user>.'
    ||segment_name
    ||' rebuild tablespace <tablespace>'
    ||' storage (initial '
    ||ceil(0.9*bytes/(4*1024))*4
    ||'K next '
    ||ceil(0.05*bytes/(4*1024))*4
    ||'K pctincrease 0 ); '
    ||'

    Article:
    If you really added the datafile by mistake, and Oracle has not yet allocated any space within this datafile, then you can use ALTER DATABASE DATAFILE <filename> RESIZE; command to make the file smaller than 5 Oracle blocks. If the datafile is resized to smaller than 5 oracle blocks, then it will never be considered for extent allocation. At some later date, the tablespace can be rebuilt to exclude the incorrect datafile.

Discussions similaires

  1. Réponses: 7
    Dernier message: 06/04/2011, 14h59
  2. Suppression datafile dans tablespace DRSYS
    Par Djemens dans le forum Oracle
    Réponses: 3
    Dernier message: 16/12/2010, 11h43
  3. Réponses: 4
    Dernier message: 05/07/2007, 15h22
  4. [Oracle 10g] Controle de suppression
    Par maximus001ma dans le forum Oracle
    Réponses: 6
    Dernier message: 29/08/2006, 19h33
  5. Réponses: 14
    Dernier message: 01/12/2003, 17h47

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