Odzyskaj bazę danych jest ważną częścią administrowania bazą danych Oracle. W tym poście postaram się omówić scenariusze Jak odzyskać bazę danych za pomocą RMAN
Przypadek 1:Utrata pliku danych
Często otrzymujemy scenariusz, w którym straciliśmy plik danych z powodu awarii dysku twardego i możemy przywrócić plik danych, aby to naprawić.
W tym poście wyjaśnię, jak to zrobić
Weźmy przykład, aby to wyjaśnić
W bazie danych mamy tabelę emp_master
- Policz wiersze
SQL> SELECT COUNT(*) FROM emp_master; -- 100 rows
2) Usuń plik danych z systemu plików
3) Spróbuj ponownie liczyć
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) Aby przeprowadzić odzyskiwanie, ustaw plik danych w trybie offline, a następnie przywróć go i odzyskaj, a następnie ponownie włącz 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;
Przypadek 2:Utrata przestrzeni tabel
Ponownie, gdybyśmy stracili całą przestrzeń tabel TOOLS, instrukcja RMAN byłaby inna
run {
allocate channel t1 type 'SBT_TAPE'
sql 'alter tablespace TOOLS offline';
restore tablespace TOOLS;
recover tablespace TOOLS;
sql 'alter tablespace TOOLS online';
}
Przypadek 3:Utrata całego pliku danych z wyjątkiem pliku kontrolnego i dzienników ponownego przetwarzania
run {
startup mount
allocate channel t1 type 'SBT_TAPE'
restore database;
recover database;
sql 'alter database open';
}
Powiązane artykuły
Jak utworzyć katalog odzyskiwania RMAN i zarejestrować bazę danych w katalogu
Polecenia kopii zapasowej RMAN
Polecenia kopii zapasowej listy RMAN
Oracle Recovery Manager:ściągawka RMAN