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

Administration Oracle Discussion :

Clichés trop anciens en raison de la limite de tablespace


Sujet :

Administration Oracle

  1. #1
    Membre averti
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Par défaut Clichés trop anciens en raison de la limite de tablespace
    Bonjour,

    J'ai oracle 11.2.0.1 sous windows 2008. Dans EM, je récupère le msg suivant que faut il faire. J'ai à priori laisser la taille par défaut.
    Détection d'une erreur Cliché trop ancien : ID SQL gqf34rfdassjt, SCN du cliché 0x0000.3d0d2545, SCN récent 0x0000.3d0db803, tablespace d'annulation (undo tablespace) UNDOTBS, conservation pour annulation (undo) en cours 1874.
    Mon tablespace undotbs fait 17Gb en extension auto et gestion des segments manuelle. Il semble occupé à 0.1% selon EM.

    Que faut il faire, qu'est ce que cela signifie ?

  2. #2
    Membre Expert
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Février 2012
    Messages
    652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Février 2012
    Messages : 652
    Par défaut
    Ca signifie que ton Rollback segment n'a plus de place pour stocker les valeurs avant modification lors d'une transaction.

    - Soit ton tablespace REDO est trop petit
    - Soit tu as trop de transactions en cours
    - Soit ta transaction manipule un volume trop conséquent de données auquel cas il faudrait modifier la stratégie de mise à jour (Commit intermédiaire, pas d'utilisation du REDO)

  3. #3
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Par défaut
    Citation Envoyé par Scriuiw Voir le message
    Ca signifie que ton Rollback segment n'a plus de place pour stocker les valeurs avant modification lors d'une transaction.
    Ah bon, comment en venez-vous à cette conclusion ?

  4. #4
    Membre Expert
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Février 2012
    Messages
    652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Février 2012
    Messages : 652
    Par défaut
    Oracle Tablespace Annulation (UNDO)

    Oracle stocke temporairement les données en cours de modifications dans des segments d’annulations. Ces segments d’annulations sont en attente de validation ou d’annulation (COMMIT ou ROLLBACK).

    Utile pour la notion de lecture cohérente des données pendant des opérations de mises à jour, pour la récupération de données (FLASHBACK) et le RECOVER.

    La gestion des segments d’annulations est proposée en automatique pour ce type de Tablespace UNDO (conseillé par Oracle)et anciennement appelés, ROLLBACK SEGMENT. Ce Tablespace est créé au moment de la création de la base de données ou après et est obligatoirement géré localement.
    Le message d'erreur me semble indiquer que la boucle est bouclée

  5. #5
    Membre Expert

    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    536
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 536
    Par défaut
    Soit ta transaction manipule un volume trop conséquent de données auquel cas il faudrait modifier la stratégie de mise à jour (Commit intermédiaire, pas d'utilisation du REDO)
    Si cette erreur correspond bien à son équivalent anglais ORA-01555 rollback snapshot too old alors faites attention: le Commit, surtout quand il est fait dans la loop, représente un feu vert, une autorisation, donnés à Oracle de pouvoir écraser les informations contenues dans le UNDO tablespace conduisant ainsi à l'écrasement ou à la perte de l'information nécessaire à la reconstruction d'une image consistante (read consistency) telle que fut cette image au début de la requête. On ne soigne pas cette erreur en committant plus régulièrement comme vous l’avez suggéré.

    Ca signifie que ton Rollback segment n'a plus de place pour stocker les valeurs avant modification lors d'une transaction
    Ca signifie qu’Oracle n’est plus capable de garantir une reconstruction consistante de l’information à partir des données contenues dans les rollback segments car ceux ci ont été écrasés (ou réutilisés). Ca n’est pas en voulant écrire dans le rollback segment que cette erreur se produit mais c’est en voulant reconstruire une image consistante à partir des undo rollback segments que cette erreur est apparue. La taille du UNDO tablespace, comme le commit d’ailleurs, peuvent être les raisons qui ont poussé à la réutilisation des rollback segments

    Une remarque importante également: cette erreur se produit lors d'un select et non lors d'un update/delete/insert. Il se peut, donc, que l'on fasse énormément de transactions avec peu de select (et peut-être même peu de select sur les tables qui sont modifiées par ces transactions) sans que cela ne produise l'erreur ORA-01555

  6. #6
    Membre Expert
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Février 2012
    Messages
    652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Février 2012
    Messages : 652
    Par défaut
    On ne soigne pas cette erreur en committant plus régulièrement comme vous l’avez suggéré.
    Je suis tout à fait d'accord, tout dépend de la nature des mises à jour effectuées.
    Le COMMIT intermédiaire ne représente que rarement une bonne alternative pour les raisons que vous évoquez (Déphasage de la consistance des données avant/après mise à jour). Il existe toutefois des cas rare où son utilisation peut s'avérer "utile".

    Pour le reste, merci de votre éclairage en la matière

  7. #7
    Membre averti
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Par défaut
    En fait il semble que ce soit un avertissemnt d'Oracle Enterprise Manager. Il ne me semble pas qu'il y ait eu d'erreur ORA associée.
    Par rapport au volume, je peux dire que j'ai a peu près 15 GB de données utilisées selon OEM et un UNDO de 17Gb.

    Du coup je ne vois pas pourquoi il y a ce msg et s'il y a une action à mener. Il date du 24/04 et ne revient pas.

  8. #8
    Membre émérite
    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
    Par défaut
    bonjour,

    vous pouvez expliquer la gestion des segments manuelle?
    quel est le paramètre d'init pour UNDO_MANAGEMENT dans votre base de données?
    ça m'étonnerait qu'il n'y ait pas d'erreur. ça ressemble fort à une erreur "snapshot too old".
    savoir quelle est la requête concernée ne vous a donc pas intéressé?

Discussions similaires

  1. Format de fichier inattendu (trop ancien ?)
    Par samgratt dans le forum QlikView
    Réponses: 3
    Dernier message: 09/10/2014, 11h34
  2. [OL-2003] Ne pas réceptionner les mails trop anciens
    Par kuranes dans le forum Outlook
    Réponses: 0
    Dernier message: 29/07/2013, 14h39
  3. [Souris] HID class trop ancien ?
    Par jbarreau-mainson dans le forum Périphériques
    Réponses: 5
    Dernier message: 26/11/2010, 12h33

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