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.1.7.4 : Vider les Rollback segments


Sujet :

Oracle

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 23
    Points : 20
    Points
    20
    Par défaut Oracle 8.1.7.4 : Vider les Rollback segments
    Bonjour,

    Mes traitements de chargement de la base ont fait péter mon tablespace GROSRBK composé de mes Rollback segments.
    En effet, GROSRBK a atteint sa taille maximale.
    Je voudrais savoir comment le vider.
    Je sais que pour vider TEMP, il faut arrêter et redémarrer la base, pour
    que SMON fasse son travail de nettoyage.

    Merci d'avance

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 487
    Points : 455
    Points
    455
    Par défaut
    de mémoire, (cela fait longtemps que je ne travaille plus avec la 8i) essayes our le tablespace temporaire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    alter tablespace temp default storage (pctincrease 0);
    pour les rollbacks, essayes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    alter rollback segment GROSRBK shrink to X M

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    OK, merci aline

    En fait, GROSRBK est le Tablespace qui héberge ma dizaine de Rollback
    segment.
    J'ai fait une solution radicale en le droppant après avoir mis tous mes RBS1, RBS2, ... offline.

    Là je viens d'essayer ta méthode mais en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    alter rollback segment RBS0x shrink to 2M;
    ...
    et ça marche terrible.
    C'est dorénavant cette méthode que je vais adopter.

    Quant à vider TEMP, je garde ma méthode qui consiste simplement
    à l'arrêt/démarrage de la base. (je n'ai pas essayé la tienne ... )

    Le processus d'arrière plan SMON se charge de vider tous les extents
    au démarrage.

    Merci encore

  4. #4
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    Moi je pense que tes Rollback segments ne se vident pas car tu a tuer des sessions en cours de traitements.
    Quand une session est en cours de traitement il va utiliser les rollback segments, si le traitement fini normalement oracle vide les rollback, par contre si tu interrompre la session, oracle ne vide rien.
    la solution est de créer un autre rollback.

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    salut Bouyao,

    Je crois que tu as trouvé la cause tout seul, car en fait, mes développeurs
    me demandent sans cesse de killer leurs sessions (on est en mode projet).

    Donc, toi tu préconises plutôt ma première méthode qui a consisté à
    détruire mon GROSRBK et à le recontruire ?
    Ca a très bien marché mais je ne savais pas si c'était rigoureux comme
    travail ...

    Question subsidiaire : il faut donc attendre que tout se fracasse pour reconstruire ? Ou dois-je faire un SHRINK de temps en temps ?

  6. #6
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    La meilleur solution est d'eviter de tuer les processes

  7. #7
    Membre confirmé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 487
    Points : 455
    Points
    455
    Par défaut
    Bouyao a raison,
    le shrink doit plutôt servir à retailler ton rollback si celui si grossit.
    Tu lui redonne donc sa taille initiale avec le shrink

  8. #8
    Nouveau membre du Club
    Inscrit en
    Mars 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut
    moi je le passerai en OFFLINE et Oracle prendra le temps pour le vider

Discussions similaires

  1. Réponses: 6
    Dernier message: 28/12/2012, 14h56
  2. Vider un rollback segment
    Par deldin dans le forum Administration
    Réponses: 2
    Dernier message: 02/03/2009, 17h16
  3. [9i]Ne pas utiliser les rollback segments
    Par loudo dans le forum Oracle
    Réponses: 3
    Dernier message: 15/06/2006, 14h17
  4. Les Rollback Segments
    Par blids dans le forum Administration
    Réponses: 20
    Dernier message: 18/05/2004, 19h22
  5. remise à jour des rollback segment par oracle
    Par juin29 dans le forum Administration
    Réponses: 9
    Dernier message: 23/04/2004, 14h51

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