sql >> Databáze >  >> RDS >> Oracle

jak obnovit pohotovostní databázi z chybějícího archivního protokolu

Databáze fyzického pohotovostního režimu spoléhá na nepřetržité používání archivních protokolů z primární databáze, aby s ní byly synchronizovány. Ve verzích Oracle Database starších než 10g jste v případě, že archivní protokol zmizel nebo byl poškozen, museli záložní databázi znovu sestavit od začátku. Od 10g můžete použít přírůstkovou zálohu ze SCN a obnovit pohotovostní režim pomocí toho samého, abyste kompenzovali chybějící archivní protokoly. Zde uvidíme, jak obnovit pohotovostní databázi z chybějícího archivního protokolu

Zde jsou tedy kroky, jak obnovit pohotovostní databázi z chybějícího archivního protokolu

Krok 1:

V pohotovostní databázi zkontrolujte aktuální SCN

sqlplus "/ as sysdba"SQL>nastavit numwidth 30;SQL>vybrat current_scn z v$database;CURRENT_SCN-----------6746747647647

Krok 2 :

V primární databázi vytvořte potřebnou přírůstkovou zálohu z výše uvedeného SCN

rman target /RMAN> {allocate channel c1 type disk;BACKUP INCREMENTAL FROM SCN 6746747647647 DATABASEFORMAT /tmp/inc_standby_%U';}

Pro urychlení vytváření záloh můžeme použít paralelní pracovníky, pokud databáze vygenerovala hodně změn

spustit{přidělit disk typu d1;přidělit disk typu d2;přidělit disk typu d3;přidělit disk typu d4;přidělit disk typu d5;přidělit disk typu d6;přidělit disk typu d7;přidělit kanál d8 typ disku;alokace kanálu d9 typ disku;alokace disku typu d10;ZÁLOHOVÁNÍ PŘÍRŮSTKOVÁ OD SCN 6746747647647 DATABASEFORMAT /tmp/inc_standby_%U';}

Krok 3:

Zrušte spravovanou obnovu v pohotovostní databázi

sqlplus "/ as sysdba"SQL>změnit obnovení databáze spravované pohotovostní databáze zrušit;Obnova médií dokončena.

Krok 4:

  • Přesuňte záložní soubory na záložní server do složky /tmp.
  • Katalogujte soubory přírůstkové zálohy v pohotovostní databázi
rman target /RMAN> KATALOG ZAČÍNÁ '/tmp/';hledá všechny soubory, které odpovídají vzoru /tmp/Seznam souborů neznámých v databázi=====================================… Opravdu chcete katalogizovat výše uvedené soubory (zadejte ANO nebo NE)? YESkatalogizuje se soubory…provedena katalogizace

Krok 5:

Použijte přírůstkovou zálohu na pohotovostní databázi

rman target /RMAN>OBNOVIT DATABÁZI NOREDO;

Krok 6:

Vraťte záložní databázi zpět do režimu spravované obnovy.

sqlplus "/ as sysdba"SQL>obnovit spravovanou pohotovostní databázi odpojení;Obnova médií dokončena.

Ze souboru alert.log si všimnete, že pohotovostní databáze stále hledá staré soubory protokolu

FAL[klient]:Nepodařilo se požádat o sekvenci mezer GAP - sekvence vlákna 1 ….

Důvodem je, že kontrolní soubor nebyl aktualizován. Kontrolní soubor pohotovostního režimu je proto nutné znovu vytvořit

Krok 7:

Na primárním vytvořte nový kontrolní soubor pohotovostního režimu

sqlplus "/ jako sysdba"SQL> změnit databázi vytvořit záložní kontrolní soubor jako "/tmp/standby01.ctl"; Systém byl změněn.

Krok 8:

Zachyťte informace o datovém souboru do databáze STANDBY.
Pohotovostní kontrolní soubor bude muset být obnoven ze zálohy provedené v kroku #7. Vzhledem k tomu, že názvy datových souborů se pravděpodobně liší od primárních, uložte si názvy záložních názvů datových souborů pro referenci po obnovení řídicího souboru z primární zálohy. Spusťte níže uvedený dotaz v pohotovostní databázi a uložte výsledky pro další použití.

spool standby_datafile_names.txt
nastavit velikost stránek 1000;
nastavit řádky 200
formát názvu sloupce a60
vybrat soubor#, název z v$datového souboru seřadit podle souboru#;
vypnutá cívka

Krok 9:

Zkopírujte soubor řízení pohotovostního režimu na web v pohotovostním režimu. Vypněte pohotovostní databázi a nahraďte záložní řídicí soubory a restartujte pohotovostní databázi v režimu řízené obnovy pomocí níže uvedeného příkazu

RMAN> OKAMŽITÉ VYPNUTÍ;RMAN> NOMOUNT PŘI STARTU;RMAN> OBNOVENÍ SOUBORU ŘÍZENÍ POHOTOVOSTNÍHO REŽIMU Z '/tmp/standby01.ctl';

Krok 10:

Namontujte pohotovostní režim

RMAN> ALTER DATABASE MOUNT;

Krok 11:

Tento krok je vyžadován, pokud se umístění datových souborů liší v pohotovostním režimu a primární

Pokud primární a pohotovostní režim mají stejnou strukturu a názvy datových souborů, lze tento krok přeskočit.

Společnost Oracle doporučuje před dokončením tohoto kroku zkontrolovat primární a pohotovostní inkarnaci.

příklad:  
RMAN> inkarnace seznamu;

Protože jsme obnovili kontrolní soubor z PRIMARY, názvy umístění datových souborů v tomto obnoveném kontrolním souboru STANDBY budou stejné jako názvy v databázi PRIMARY. Pokud se struktura adresářů mezi záložní a primární databází liší nebo pokud používáte OMF spravované názvy souborů Oracle, nebude schopen identifikovat záložní soubory. Můžeme tedy katalogizovat datové soubory STANDBY pomocí RMAN a provést operaci přejmenování.

Proveďte níže uvedený krok v POHOTOVOSTNÍM REŽIMU pro každou diskovou skupinu (nebo adresář), kde jsou uloženy záložní datové soubory.

RMAN> KATALOG ZAČÍNÁ NA '+DATA/STBY/datafile/';

Pokud byly nějaké datové soubory přidány do primárního PO záložním SCN (v našem příkladu scn 6746747647647), tyto datové soubory nebudou automaticky vytvořeny na záložním serveru bez ohledu na nastavení parametru standby_file_management. Přidané datové soubory bude nutné obnovit na záložní server. Chcete-li zjistit, zda byly nějaké soubory přidány do Primární od pohotovostního aktuálního SCN

SQL>VYBERTE SOUBOR #, JMÉNO Z V$DATAFILE WHERE CREATION_CHANGE#> 6746747647647

Pokud vrátí nějaké řádky, musíme tyto soubory obnovit z primárního do pohotovostního režimu

RMAN> záložní datový soubor , , , formát '/tmp/ForStandby_%U' tag 'FORSTANDBY';

Zkopírujte je do pohotovostního režimu a poté je katalogizujte a obnovte

KATALOG ZAČÍNÁ S '/tmp/ForStandby';spustit{nastavit nový název pro datový soubor X na '+DISKGROUP';nastavit nový název pro datový soubor Y na '+DISKGROUP';nastavit nový název pro datový soubor Z na '+DISKGROUP';atd. obnovit datový soubor x,y,z,….;}

Nyní můžeme přepnout databázi na kopírování

RMAN> PŘEPNĚTE DATABÁZI NA KOPÍROVÁNÍ;

Pokud se výše uvedený dotaz vrátí s 0 nulovými řádky

RMAN> PŘEPNĚTE DATABÁZI NA KOPÍROVÁNÍ;

Krok 11

POHOTOVOSTNÍM REŽIMU  databáze, vymažte všechny pohotovostní skupiny redo log:

SQL> vyberte GROUP# z v$logfile, kde TYPE='STANDBY' seskupí podle GROUP#;
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 1;
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 2;
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 3;
….

Krok 12

Nyní můžete spustit MRP

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;

Doufám, že se vám budou líbit tyto podrobné kroky, jak obnovit záložní databázi z chybějícího archivního protokolu. Prosím, poskytněte zpětnou vazbu. Možná je chyba.

Také čte
Bez ASM na ASM
jak najít pořadové číslo archivního protokolu v oracle
jak zkontrolovat chyby protokolu výstrah v oracle
Příkazy pro zálohování RMAN
Příkazy pro zálohování seznamu RMAN
Kroky, které je třeba provést pro předávání fyzické pohotovostní databáze pomocí RMAN Incremental Backup. (ID dokumentu 836986.1)


  1. Jak zacházet s booleovskými hodnotami v SQLite pomocí JavaScript proxy

  2. Proč mohu vytvořit tabulku s PRIMARY KEY ve sloupci s možnou hodnotou Null?

  3. Spojení mezi tabulkami ve dvou různých databázích?

  4. Postgres - VYTVOŘTE TABULKU Z VÝBĚRU