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

Recovery Manager Oracle Discussion :

Oracle 10g (+Rman) - Error Drop Datafile


Sujet :

Recovery Manager Oracle

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut Oracle 10g (+Rman) - Error Drop Datafile
    Bonjour à tous,
    après avoir cherché sur le forum et n'ayant pas trouvé de solution à mon problème, je vous expose ma situation :

    Je souhaite supprimer un datafile (vide) qui fait parti d'un TBS (que je veux conserver) qui lui est composé de plusieurs datafile.
    (une erreur faite par une autre personne )

    Cependant étant et ArchiveLOG, cela me pose quelques soucis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    SQL> ALTER TABLESPACE tbs_index DROP DATAFILE
     '/data/oradata/tbs_index_005.dbf' ;
     
    ALTER TABLESPACE tbs_index DROP DATAFILE
    *
    ERROR at line 1:
    ORA-03264: cannot drop offline datafile of locally managed tablespace
     
    SQL> ALTER DATABASE DATAFILE  '/data/oradata/tbs_index_005.dbf' ONLINE;
    ALTER DATABASE DATAFILE  '/data/oradata/tbs_index_005.dbf' ONLINE
    *
    ERROR at line 1:
    ORA-01113: file 14 needs media recovery
    ORA-01110: data file 14: '/data/oradata/tbs_index_005.dbf'
    PS: je ne connais pas trop Rman ... et ne souhaite pas rejouer les ArchiveLog, car il y en a un paquet depuis cette erreur (env.400 seq.)

    Merci d'avance pour votre aide (je précise que c'est un DB de prod, et qu'il y a des gens connectés dessus )

  2. #2
    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
    C'est mieu de retailler le fichier de donnée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ALTER DATABASE DATAFILE   <filename> RESIZE taille;
    taille = 5 fois la taille du bloc oracle, comme ca oracle ne peut plus etendre le datafile. Sinon, il faut, recréer le tablespace.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Je veux bien ... mais Oracle ne veut pas :
    (db_block_size=8192)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SQL> ALTER database datafile '/data/oradata/tbs_index_005.dbf' resize 20M;
    ALTER database datafile '/data/oradata/tbs_index_005.dbf' resize 20M
    *
    ERROR at line 1:
    ORA-00376: file 14 cannot be read at this time
    ORA-01110: data file 14: '/data/oradata/tbs_index_005.dbf'

  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
    Ca donne quoi cette requette :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT V1.FILE#, NAME FROM V$BACKUP V1, V$DATAFILE V2 
    WHERE V1.STATUS = 'ACTIVE' AND V1.FILE# = V2.FILE# ;

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    ça ne donne rien ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SQL> SELECT V1.FILE#, NAME
      2    FROM V$BACKUP V1, V$DATAFILE V2
      3   WHERE V1.STATUS = 'ACTIVE'
      4     AND V1.FILE# = V2.FILE# ;
     
    no rows selected
     
    SQL>

  6. #6
    Membre éclairé

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2003
    Messages
    701
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 701
    Points : 710
    Points
    710
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Curieux qu' oracle ne veuille pas supprimer le datafile avec la 1ere commande .

    Maintenant le risque est qu' au prochain redémarrage de la base, oracle ne veuille pas soit rouvrir la base, soit le tablespace ne sera pas online .

    à mon avis, il serait préférable de supprimer le tablespace et le le recréer comme l' a dit bouyao .

    cdlt

  7. #7
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Juin 2007
    Messages : 52
    Points : 46
    Points
    46
    Par défaut
    Ca donne quoi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select v.file#, dba.file_name
    from v$recover_file v, dba_data_files dba
    where v.file# = dba.file_id;
    Il semble qu'Oracle est besoin de faire une recupération de données sur le fichier que tu veux supprimier

  8. #8
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    et :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RECOVER DATAFILE '/data/oradata/tbs_index_005.dbf';
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RECOVER TABLESPACE tbs_index;
    ce serait pas mal de nous en dire plus sur le scénario qui t'a amené là.

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par lapincretin
    Ca donne quoi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select v.file#, dba.file_name
      from v$recover_file v, dba_data_files dba
    where v.file# = dba.file_id;
    Il semble qu'Oracle est besoin de faire une recupération de données sur le fichier que tu veux supprimier
    En effet, c'est bien celui là qui ressort :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
         FILE# FILE_NAME
    ---------- ---------------------------------------------
            14  /data/oradata/tbs_index_005.dbf
    Par contre, pour l'explication exacte de ce qui a été fait, j'ai du aller voir dans les traces, car c'est une tierce personne qui a fait cette manip. durant mon absence, et ses explications n'étaient pas très claires.
    En fait, elle a voulu ajouter un datafile pour étendre le TBS, et ensuite se rendant compte que le nom du datafile ne respectait pas la convention de nommage des précédents datafiles, elle a essayé de le mettre OFFLINE (le datafile) mais a rencontré une erreur, et elle a continué en tentant un rename datafile ...

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SQL> RECOVER DATAFILE '/data/oradata/tbs_index_005.dbf';
    ORA-00279: change 1781021180 generated at 06/21/2007 09:43:40 needed for thread 1
    ORA-00289: suggestion : /usr/local/ora_alog/ORADB10/ARCH_ORADB10_SEQ~0000020369.0001.0600865793
    ORA-00280: change 1781021180 for thread 1 is in sequence #20369
     
    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    Sauf que l'ArchiveLog n'est plus là (dans /usr/local/ora_alog/ORADB10/),
    car RMAN est intallé sur un autre serveur (mode catalog) ... et l'a envoyé sur l'outil de sauvegarde sur bandes
    Et je ne connais pas trop Rman pour faire le restore

  11. #11
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    bah t'as plus qu'à ramener l'archive

    mais comment t'en es arrivé là ?

  12. #12
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SQL> RECOVER TABLESPACE TBS_INDEX;
    ORA-00283: recovery session canceled due to errors
    ORA-01124: cannot recover data file 15 - file is in use or recovery
    ORA-01110: data file 15: '/data/oradata/tbs_index_005.dbf'
    SQL>
    j'ai l'impression qu'Oracle ne veut pas supprimer le file "14" '/data/oradata/tbs_index_004.dbf'
    car le suivant, le "15" '/data/oradata/tbs_index_005.dbf' existe déjà ...

  13. #13
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    pas du tout... il ne veut pas le supprimer parce qu'il est OFFLINE et nécessite un recover c'est tout

  14. #14
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par orafrance
    bah t'as plus qu'à ramener l'archive

    mais comment t'en es arrivé là ?
    Comment fait-on pour redescendre l'archivelog à partir de Rman ?

    1/ je me connecte à RMAN,
    2/ je fais un "connect target user/passwd@DB" sur ma DB
    3/ et ??

  15. #15
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par orafrance
    pas du tout... il ne veut pas le supprimer parce qu'il est OFFLINE et nécessite un recover c'est tout
    En effet il est OFFLINE, mais pas moyen de le remettre ONLINE ... il veut faire un recover

  16. #16
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    tu dois restaurer l'archive de la bande

  17. #17
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par orafrance
    tu dois restaurer l'archive de la bande
    P'tite question, c'est Rman, qui l'envoi sur la bande il me semble ... et d'après la personne qui s'occupe des sauvegardes, le nom de l'archive serait modifié, donc ce ne peut être que RMAN qui redescend l'archive à partir de la bande : vrai ou faux ?

  18. #18
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    peut-être bien en effet... mais là j'avoue que mes compétences sont limitées

    n'y a-t-il pas d'information dans ce tutoriel : http://oracle.developpez.com/guide/s...rde/rman/#L3.4 ?

  19. #19
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075

  20. #20
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par orafrance
    C'est ce que j'ai tenté de faire ... mais ça ne fonctionne pas
    (j'ai desoin de la sequence 20369)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    RMAN> RESTORE ARCHIVELOG  SEQUENCE 20369;
     
    Starting restore at 26-JUN-07
    using channel ORA_DISK_1
     
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of restore command at 06/26/2007 13:30:47
    RMAN-06026: some targets not found - aborting restore
    RMAN-06102: no channel to restore a backup or copy of log thread 1 seq 20369 lowscn 1781004696
     
    RMAN>
    Si un spécialiste RMAN passe dans le coin

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Script sauvegarde totale rman oracle 10g
    Par milka dans le forum Recovery Manager
    Réponses: 26
    Dernier message: 17/11/2010, 17h52
  2. [Oracle 10g XE] Error libaio.so.1 & ORA-12547
    Par Guigui_91090 dans le forum Installation
    Réponses: 0
    Dernier message: 20/05/2010, 11h18
  3. Réponses: 0
    Dernier message: 17/10/2007, 14h23
  4. Drop de datafile Oracle 10g R1 Base de Production
    Par iks22 dans le forum Administration
    Réponses: 6
    Dernier message: 29/09/2007, 13h17
  5. Oracle 10g - RMAN - fichiers ouverts durant un backup
    Par isa06 dans le forum Recovery Manager
    Réponses: 6
    Dernier message: 22/06/2007, 13h40

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