Hoe tem je een Oracle Database 12c Recover

05/05/2013 by admin

Veel soorten van storingen kan uw database overkomen. De Oracle 12c Recovery Manager (RMAN) is een instrument dat kan helpen om weer op je voeten na veel van deze mislukkingen. Soms is de enige optie, soms is de beste benadering van verscheidene, en soms is niet de juiste benadering helemaal.

RMAN kan echt helpen met twee soorten fouten:

  • Media mislukking: Verlies van bestanden
  • Gebruikersfouten: Fouten die leiden tot beschadigde databases of data

Of RMAN kan je altijd helpen als het gaat om fouten van gebruikers is afhankelijk van wat voor soort probleem is gecreëerd. Bijvoorbeeld, wanneer een gebruiker per ongeluk een bestand of een eetlepel verwijdert, RMAN kan gemakkelijk helpen.

Indien een gebruiker per ongeluk laat vallen tafel of corrumpeert gegevens kan RMAN helpen, maar het kan de snelste benadering niet. Als een gebruiker een tafel daalt, kan het sneller te halen uit de database recyclebin of Flashback Database.

Echter, als de gebruiker heeft doorgeblazen de recyclebin of de Flashback Database is niet geconfigureerd, Recovery Manager is uw enige keuze.

RMAN kunt twee soorten terugvorderingen te doen:

  • Compleet: Alle bestanden worden terug naar de tijd van de database is mislukt gebracht. Geen gegevens verloren.
  • Incomplete: De database wordt teruggewonnen maar stopte plotseling van een volledig herstel. Er kan verlies van gegevens zijn. Soms is dit wat je wilt. Bijvoorbeeld, als een gebruiker daalt een tafel om 10:13 uur stipt, je doet een onvolledig herstel om 10:12 naar de database terug te krijgen voordat de daling optreedt.

Volledig herstel is wat meestal gebeurt. Maar wees op alles voorbereid.

Hoe het probleem met uw Oracle 12c database recovery controleren

Uit te zoeken wat er mis is met uw database ging is niet altijd een gemakkelijke taak. Soms krijg je geluk hebt (als je wilt om de term geluk in het gezicht van een gebroken database te gebruiken). Bijvoorbeeld, misschien weet je wat er gebeurde:

  • Een systeembeheerder vertelde u een schijf kraste.
  • Een gebruiker vertelde je ze liet een tafel.
  • Je veroorzaakt de fout en je weet wat er gebeurd is en waarom.

Deze kan het probleem niet zijn, echter. Soms bent u gepresenteerd met stiekeme problemen, in welk geval je de rol van een detective te nemen. Stel dat je de database te starten of toegang tot de gegevens, terwijl de database is nog open en krijg een foutmelding vergelijkbaar met deze:

ORA-01157: kan niet identificeren / lock databestand 4 - zie DBWR trace bestand
ORA-01110: gegevensbestand 4: '/u01/app/oracle/oradata/dev12c/users01.dbf'

Kijk je naar het bestand op de locatie die het geeft. Lo en zie, het is gegaan (of misschien de hele schijf is verdwenen). Je had meer dan een bestand op die schijf.

Waarom is Oracle vertellen u alleen dat het niet kan vinden een van uw bestanden? Want als je de database te starten, Oracle leest de lijst gegevensbestand in de controle-bestand. Zodra het niet vinden in de lijst, stopt openen en presenteert de fout.

Of, als de database is al open, Oracle vertelt u alleen over de fout die je ervaart als gevolg van uw specifieke actie. Helaas is dit een beetje misleidend; je zou herstellen en het bestand te herstellen alleen naar een andere fout, net als het vinden van een ander gegevensbestand.

Incompleet herstel met uw Oracle 12c-database

Onvolledig herstel is meestal een zeer ongelukkige positie om in te zijn. Doorgaans betekent dit dat je zal (onvolledige vandaar) worden gegevens verliest. Ook kan de Data Recovery Advisor (DRA) niet helpen in deze situatie. In een onvolledige herstel scenario, heeft de database niet is uitgevallen. Iemand heeft iets aan de database in een staat die vereist dat u om terug te gaan in de tijd gezet gedaan.

Hier zijn de stappen om incompleet herstel:

  1. Het afsluiten van de database.
  2. Opstarten van de database in het gebergte van de modus.
  3. Stel de tijd voor het herstel te werken.
  4. Herstel de database.
  5. Herstellen van de database.
  6. Open de database met RESETLOGS.

    De controle bestanden niet overeen met de data bestanden. Je moet re-sync de controle bestanden met de databestanden.
  7. Open een prompt om uw OS command line.
  8. Log in om uw database met RMAN:

    <Rman doel /
  9. Zet de database op het gebergte van de modus:

    <Shutdown onmiddellijke>
    <Opstarten mount>

  10. Gebruik de volgende RMAN commando om uw database te herstellen naar de juiste tijd (11:44 in dit geval):

    RMAN> run {
    stellen totdat de tijd =
    "TO_DATE ('30 -jun-2013: 11: 44: 00 ',' DD-MON-YYYY: HH24: MI: SS ')";
    database te herstellen;
    databank te herstellen;
    sql "alter database is geopend RESETLOGS";
    }

    Wanneer de opdracht is voltooid, moet je zoiets als dit te zien:

    het uitvoeren van commando: SET tot clausule
    Beginnen te herstellen op 30-JUN-2013 11:58:52
    toegewezen kanaal: ORA_DISK_1
    kanaal ORA_DISK_1: SID = 20 apparaattype = DISK
    ... Uitgang geknipt ...
    Afgewerkt herstellen op 30-JUN-2013 12:02:56
    sql statement: alter database is geopend RESETLOGS

  11. Zorg ervoor dat de tafel die u probeert te herstellen is inderdaad hersteld.

    Er is niets meer gênant dan iedereen vertellen u gegevens hersteld alleen aan iemand anders te ontdekken dat de gegevens nog steeds is er niet. Als u ontdekt dat het er niet is, doet u het herstel weer, terug een beetje verder in de tijd te gaan.