Comment faire pour récupérer votre base de données Oracle 12c

De nombreux types de défaillances peuvent arriver à votre base de données. Le Recovery Manager 12c Oracle (RMAN) est un outil qui peut vous aider à revenir sur vos pieds après un grand nombre de ces échecs. Parfois, il est la seule option, il est parfois la meilleure approche de plusieurs, et il est parfois pas la bonne approche du tout.

Sommaire

RMAN peut vraiment aider avec deux types de défaillances:

  • Défaillance du support: La perte de fichiers

  • Erreur de l'utilisateur: Les erreurs qui conduisent à des bases de données ou des données endommagées

Que RMAN peut toujours vous aider quand il vient d'une erreur de l'utilisateur dépend de ce type de problème a été créé. Par exemple, si un utilisateur supprime accidentellement un fichier ou un espace de table, RMAN peut aider très facilement.

Toutefois, si un utilisateur tombe accidentellement des données de table ou corrompt, RMAN pouvoir aider, mais il pourrait ne pas être l'approche la plus rapide. Si un utilisateur supprime une table, il pourrait être plus rapide pour le récupérer à partir de la base de données RecycleBin ou Flashback Database.

Cependant, si l'utilisateur a purgé la RecycleBin ou la base de données Flashback ne sont pas configurés, Recovery Manager est votre seul choix.

RMAN peut faire deux types de recouvrements:

  • Remplissez: Tous les fichiers sont ramenés à l'époque la base de données a échoué. Pas de perte de données.

  • Incomplètes: La base de données est récupérée, mais arrêta d'un rétablissement complet. Il peut y avoir une perte de données. Parfois, cela est ce que vous voulez. Par exemple, si un utilisateur efface une table à 10:13 heures précises, vous faites une incomplet la récupération à 10h12 pour obtenir la base de données de retour avant la chute se produit.

La guérison complète est généralement ce qui arrive. Cependant, être prêt à tout.

Comment vérifier le problème avec votre récupération de base de données Oracle 12c

Trouver ce qui se passait mal avec votre base de données ne sont pas toujours une tâche facile. Parfois, vous avez de la chance (si vous voulez utiliser le terme chanceux dans le visage d'une base de données cassée). Par exemple, peut-être vous savez ce qui est arrivé:

  • Un administrateur système vous a dit un disque d'une voix rauque.




  • Un utilisateur vous a dit ils ont abandonné une table.

  • Vous provoqué l'erreur et vous savez ce qui est arrivé et pourquoi.

Celles-ci pourraient ne pas être le problème, cependant. Parfois, vous êtes présenté avec des problèmes sournois, auquel cas vous prenez le rôle d'un détective. Dites que vous commencez à la base de données ou accéder aux données tandis que la base de données est toujours ouverte et obtenez une erreur similaire à celui-ci:

ORA-01157: ne peut pas identifier / fichier de données serrure 4 - voir DBWR oligo fileORA-01110: fichier de données 4: '/u01/app/oracle/oradata/dev12c/users01.dbf'

Vous cherchez le fichier dans l'emplacement qui lui donne. Et voilà, il est parti (ou peut-être la totalité du disque a disparu). Vous avez eu plus d'un fichier sur ce disque.

Pourquoi Oracle vous dit seulement qu'il ne peut pas trouver un de vos fichiers? Parce que lorsque vous démarrez la base de données, Oracle lit la liste des fichiers de données dans le fichier de contrôle. Dès qu'il ne peut pas en trouver un dans la liste, il arrête l'ouverture et présente l'erreur.

Ou, si la base de données est déjà ouvert, Oracle vous dit que l'erreur que vous rencontrez en tant que résultat de votre action spécifique. Malheureusement, cela est un peu misleading- vous pourriez restaurer et récupérer le fichier seulement pour trouver une autre erreur, tout comme pour un fichier de données différent.

Récupération incomplète avec votre base de données Oracle 12c

Récupération incomplète est habituellement une position très malheureux d'être dans. Typiquement, cela signifie que vous serez en train de perdre des données (d'où incomplet). En outre, le conseiller de récupération de données (DRA) ne peut pas aider du tout dans cette situation. Dans un scénario de récupération incomplète, la base de données n'a pas fait échoué. Quelqu'un a fait quelque chose pour mettre la base de données dans un état qui vous oblige à remonter dans le temps.

Voici les étapes à une récupération incomplète:

  1. Arrêtez la base de données.

  2. Démarrez la base de données en mode de montage.

  3. Régler l'heure pour la restauration de travailler à partir.

  4. Restaurer la base de données.

  5. Récupérer la base de données.

  6. Ouvrez la base de données avec RESETLOGS.

    Les fichiers de contrôle ne correspondront pas aux fichiers de données. Vous devez re-synchroniser les fichiers de contrôle avec les fichiers de données.

  7. Ouvrez une invite à votre ligne de commande du système d'exploitation.

  8. Connectez-vous à votre base de données avec RMAN:

  9. Mettez la base de données en mode de montage:

  10. Utilisez la commande RMAN suivante pour récupérer votre base de données au moment opportun (11:44 am dans ce cas):

    RMAN> {courir ensemble jusqu'à l'heure = "to_date ('30 -juin 2013: 11: 44: 00», «DD-MON-AAAA: HH24: MI: SS ')" - restaurer la base de données-de récupérer la base de données-sql "alter base de données open resetlogs "-}

    Lorsque la commande est terminée, vous devriez voir quelque chose comme ceci:

    exécution de la commande: SET jusqu'à clauseStarting restaurer au 30-JUN-2013 11: 58: canal 52allocated: ORA_DISK_1channel ORA_DISK_1: SID = 20 type d'appareil = DISK # 133-sortie ciselée # 133-finis récupérer au 30-JUN-2013 12:02: déclaration 56sql: alter database open resetlogs
  11. Assurez-vous que la table que vous tentiez de récupérer a en effet été récupéré.

    Il n'y a rien de plus embarrassant que de dire que tout le monde vous avez récupéré les données seulement pour avoir quelqu'un d'autre de découvrir que les données sont toujours pas là. Si vous découvrez qu'il n'y est pas, le faire à nouveau la restauration, remontant un peu plus loin dans le temps.


» » » Comment faire pour récupérer votre base de données Oracle 12c