Obnovení databáze je důležitou součástí správy databáze Oracle. Zde v tomto příspěvku se pokusím pokrýt scénáře Jak obnovit databázi pomocí RMAN
Případ 1:Ztráta datového souboru
Často se setkáváme se scénářem, kdy jsme ztratili datový soubor kvůli havárii pevného disku a musíme obnovit datový soubor, abychom věci napravili.
Zde v tomto příspěvku bych vysvětlil, jak to provést
Vezměme si příklad, abychom to vysvětlili
V databázi máme tabulku emp_master
- Počtěte řádky
SQL> SELECT COUNT(*) FROM emp_master; -- 100 rows
2) Odstraňte datový soubor ze souborového systému
3) Zkuste znovu počítat
SELECT COUNT(*) FROM emp_master; SELECT COUNT(*) FROM emp_master; SELECT COUNT(*) FROM emp_master * ERROR at line 1: ORA-01116: error in opening database file 50 ORA-01110: data file 50: '/oradata/TEST/test_tools1.dbf' ORA-27041: unable to open file
4) Chcete-li provést obnovu, přepněte datový soubor do režimu offline a poté jej obnovte, obnovte a znovu uveďte do režimu online
$
run {
allocate channel t1 type 'SBT_TAPE'
sql 'alter database datafile 50 offline';
restore datafile 50;
recover datafile 50;
sql 'alter database datafile 50 online';
}
SQL> SELECT COUNT(*) FROM emp_master;
Případ 2:Ztráta tabulkového prostoru
Pokud jsme opět ztratili celý tabulkový prostor TOOLS, příkaz RMAN by byl jiný
run {
allocate channel t1 type 'SBT_TAPE'
sql 'alter tablespace TOOLS offline';
restore tablespace TOOLS;
recover tablespace TOOLS;
sql 'alter tablespace TOOLS online';
}
Případ 3:Ztráta všech datových souborů kromě kontrolního souboru a opakovaných protokolů
run {
startup mount
allocate channel t1 type 'SBT_TAPE'
restore database;
recover database;
sql 'alter database open';
}
Související články
Jak vytvořit katalog obnovy RMAN a zaregistrovat databázi v katalogu
RMAN Backup příkazy
RMAN Seznam příkazů zálohování
Oracle Recovery Manager:Cheatsheet RMAN