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 :

Problème avec tablespace d'annulation


Sujet :

Oracle

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 76
    Points : 35
    Points
    35
    Par défaut Problème avec tablespace d'annulation
    Version : Oracle 10G 10.2.3
    Plateforme: Windows

    Bonjour,

    J'ai eu le message suivant 'ORA-01552 cannot use system rollback segment for non-system tablespace '

    J'ai exécuté le SQL suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select segment_name,status,tablespace_name from dba_rollback_segs
    Tout était STATUS = 'NEEDS RECOVERY'

    J'ai créer un nouveau tablespace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE 'C:\oracle\oradata\db1\undotbs02.dbf' SIZE 2000M AUTOEXTEND ON;
    J'ai modifié le fichier init.ora
    pour changer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     undo_tablespace=UNDOTBS02
    _offline_rollback_segments='_sysmmu1$', .............
    Arret, redemarrage avec PFILE

    Je ne suis pas arrivée à supprimer les segments d'annulation

    Quelle est la syntaxe exacte ?

    J'ai supprimé le tablespace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    drop tablespace UNDOTBS1 including contents and datafiles
    J'ai tout redémarré, je n'ai plus au le message ora-01552 mais dans mon appli lorsque j'ai fais une suppression
    J'ai eu ora-00959 Tablesapce UNDOTBS1 does not exist

    Ce problème est il du au fait que je n'ai pas supprimé les segments d'annulation ?

    Quelle est la meilleure facon de procéder ?

    Merci pour votre aide

  2. #2
    Membre habitué
    Inscrit en
    Janvier 2009
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 162
    Points : 181
    Points
    181
    Par défaut
    Bonjour,

    Quelle est la meilleure facon de procéder ?
    La meilleure façon de procéder est d'utiliser un tablespace UNDO en fixant UNDO_MANAGEMENT=AUTO. Au démarrage, l'instance utilisera le premier tablespace UNDO disponible ou celui spécifié par UNDO_TABLESPACE. Si aucun tablespace UNDO n'est disponible, l'instance utilisera le tablespace SYSTEM, ce qui n'est évidemment pas pour le coup la meilleure façon de procéder.

    Je ne suis pas arrivée à supprimer les segments d'annulation
    Pour quelle raison souhaites-tu faire cela ? Sans raison valable cela semble être plutôt une mauvaise pratique, au même titre que l'utilisation du paramètre _offline_rollback_segments

  3. #3
    Membre habitué
    Inscrit en
    Janvier 2009
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 162
    Points : 181
    Points
    181
    Par défaut Meilleure pratique
    ...et de ne plus laisser l'applicatif choisir son segment d'annulation.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    Excuse moi, mais je ne comprends pas !!!!
    Nous sommes dans le mode
    UNDO_MANAGEMENT = AUTO

    Mais lorsqu'il y a un pb (ORA-01552 ....)
    que faut il faire ?

  5. #5
    Membre expérimenté Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Points : 1 332
    Points
    1 332
    Par défaut
    Citation Envoyé par Mathias44 Voir le message
    Bonjour,


    La meilleure façon de procéder est d'utiliser un tablespace UNDO en fixant UNDO_MANAGEMENT=AUTO. Au démarrage, l'instance utilisera le premier tablespace UNDO disponible ou celui spécifié par UNDO_TABLESPACE. Si aucun tablespace UNDO n'est disponible, l'instance utilisera le tablespace SYSTEM, ce qui n'est évidemment pas pour le coup la meilleure façon de procéder.


    Pour quelle raison souhaites-tu faire cela ? Sans raison valable cela semble être plutôt une mauvaise pratique, au même titre que l'utilisation du paramètre _offline_rollback_segments

    Bonjour,

    Il y a des cas de force majeure ...

    comme celui-ci (dans le lien)

    essaye de faire comme suit

    http://www.developpez.net/forums/d26...e-9-2-0-1-0-a/

    mais ce qui métonne c'est aue pourqoui tu n'a pas pu supprimer les offline_rollback_segments

    A l'origine qu'est ce qui s'est passé sur cette base ?

    asktom.oracle.com tahiti.oracle.com otn.oracle.com

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.


    phrase chinoise issue du Huainanzi

  6. #6
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    Au démarrage de la base il n'y a pas eu de problèmes

    Mais à la première modif dans l'applicatif, nous avons eu le message
    'ORA-01552 cannot use system rollback segment for non-system tablespace '

    j'ai fais les modifs détaillées plus haut

    L'erreur que j'ai faite et peut être de ne pas être passer en mode manuel dans le fichier INIT ???

    Est ce pour cela que je n'ai pas pu supprimer les segments d'annulations

  7. #7
    Membre expérimenté Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Points : 1 332
    Points
    1 332
    Par défaut
    Citation Envoyé par ambre Voir le message
    Au démarrage de la base il n'y a pas eu de problèmes

    Mais à la première modif dans l'applicatif, nous avons eu le message
    'ORA-01552 cannot use system rollback segment for non-system tablespace '

    j'ai fais les modifs détaillées plus haut

    L'erreur que j'ai faite et peut être de ne pas être passer en mode manuel dans le fichier INIT ???

    Est ce pour cela que je n'ai pas pu supprimer les segments d'annulations
    Oui,

    ce que je voulais dire, il s'est passé quelque chose ,une panne courant, un disque qui est tombé,

    du jour au lendemain vous avez eu ce message la ?

    as-tu regardé alert.log s"il y a autre chose ?

    En tous ca dans le lien ils ont supprimé les anciens rolback segments ..

    as tu pu le faire ?

    asktom.oracle.com tahiti.oracle.com otn.oracle.com

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.


    phrase chinoise issue du Huainanzi

  8. #8
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    Non il n'y a rien eu de spécial comme panne

    La seule chose, la base a été passé en Archivelog hier

    Oui dans le lien, il y a bien suppression des segments

    Mais je n'ai pas pu le faire

  9. #9
    Membre expérimenté Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Points : 1 332
    Points
    1 332
    Par défaut
    Que donne cette requete

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT segment_name, STATUS FROM dba_rollback_segs WHERE tablespace_name='UNDOTBS1' AND STATUS = 'NEEDS RECOVERY';

    asktom.oracle.com tahiti.oracle.com otn.oracle.com

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.


    phrase chinoise issue du Huainanzi

  10. #10
    Membre expérimenté Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Points : 1 332
    Points
    1 332
    Par défaut
    il y a aussi des info ici

    http://forums.oracle.com/forums/thre...art=0&tstart=0

    mais je cois qu'il est temp d'ouvrir un TAR

    asktom.oracle.com tahiti.oracle.com otn.oracle.com

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.


    phrase chinoise issue du Huainanzi

  11. #11
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    Ok je vais regarder

    Merci

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

Discussions similaires

  1. Problème avec bouton Ok/annuler
    Par Berlo56 dans le forum Composants graphiques
    Réponses: 3
    Dernier message: 28/03/2014, 09h25
  2. Réponses: 4
    Dernier message: 21/11/2008, 16h27
  3. Problème avec tablespace temporaire
    Par nounou21 dans le forum Administration
    Réponses: 3
    Dernier message: 26/06/2008, 13h14
  4. Problème avec le bouton Annuler de la fonction Inputbox
    Par r0main2b dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/06/2007, 19h48
  5. problème avec tablespaces
    Par ulysse031 dans le forum Administration
    Réponses: 13
    Dernier message: 24/02/2007, 15h49

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