The Geek Diary
ten post opisuje szczegółowe kroki tworzenia fizycznej bazy danych w trybie gotowości na normalnym systemie plików przy użyciu RMAN dla podstawowej bazy danych w ASM.
przegląd
tutaj rezerwową bazę danych można utworzyć za pomocą następujących 2 metod:
- normalne przywracanie i odzyskiwanie za pomocą RMAN.
- Tworzenie duplikatu bazy danych dla trybu gotowości przy użyciu RMAN.
1
- wykonaj kopię zapasową podstawowej bazy danych ASM (Datafiles, Controlfile for standby i Archivelogs )
- Udostępnij kopie zapasowe na serwerze rezerwowym.
- Utwórz plik parametrów i plik hasła w trybie gotowości.
- Skonfiguruj usługi Oracle net services na obu serwerach.
- wykonaj przywracanie i odzyskiwanie w bazie danych w trybie gotowości.
- Skonfiguruj podstawową bazę danych, aby przenieść archiwa do trybu gotowości.
- Kick rozpocznij ponowne zastosowanie, umieszczając bazę danych w trybie Recover managed.
Metoda 2
Użyj funkcji RMAN Duplicate, aby utworzyć rezerwową bazę danych. Kroki, aby osiągnąć to samo są opisane w poniższym poście.
Metoda 1-Normalne przywracanie i odzyskiwanie za pomocą RMAN
1. Wykonanie kopii zapasowej podstawowej bazy danych ASM (Pliki Danych, Controlfile for standby & Archivelogs )
$ rman target / RMAN> backup database format '/backup/database_%U.bkp';RMAN> backup archivelog all format '/backup/archivelog_%U.bkp';RMAN> backup current controlfile for standby format '/backup/stdb_cntl_%U.bkp';
2. Udostępnienie kopii zapasowych na serwerze rezerwowym:
– FTP lub SCP kopie zapasowe na serwer rezerwowy. Wykonując FTP upewnij się, że robisz to tylko w trybie binarnym. Lub
– NFS mount następnie zamontuj NFS na serwerze rezerwowym o tej samej nazwie, co w podstawowej bazie danych. Lub
3. Utwórz plik parametru & plik hasła w trybie gotowości. Skopiuj podstawowy plik parametrów bazy danych i wprowadź niezbędne zmiany:
db_unique_name='stnd_db'instance_name='stnd_db'standby_archive_dest=''db_file_name_convert='+DATA/prim_db/datafile/', '/u01/oradata/stnd_db/', '+DATA/prim_db/tempfile/', '/u01/oradata/stnd_db/' log_file_name_convert='+DATA/prim_db/onlinelog/', '/u01/oradata/stnd_db/'
Utwórz plik hasła dla bazy danych standby z tym samym hasłem, co podstawowe
$ export ORACLE_SID=stand_db $ orapwd file=orapwstand_db password=oracle
4. Skonfiguruj usługi Oracle net services na obu serwerach
In standby server - configure listener.In Primary server - configure tnsnames for standby. - check connectivity using tnsping.
5. Wykonaj przywracanie i odzyskiwanie w bazie danych w trybie gotowości. Uruchom Nomount instancję standby i przywróć plik standby controlfile z kopii zapasowej pliku 'standby controlfile’ wykonanej w kroku 1.
$ export ORACLE_SID=stnd_db$ rman target /RMAN> restore standby controlfile from '/backup/stdb_cntl_3oqff2fb_.bkp';
– musisz użyć opcji 'standby controlfile’ jak
RMAN> RESTORE STANDBY CONTROLFILE from ...
else nie jest używany parametr konwertujący DB_FILE_NAME_CONVERT.
– po przywróceniu pliku STANDBY CONTROLFILE możesz zamontować instancję AUX i zweryfikować użyty parametr DB_FILE_NAME_CONVERT i pokazać poprawną ścieżkę/nazwę pliku danych. Na przykład:
RMAN> REPORT SCHEMA ; ( or sql> select name from v$datafile ; )
montowanie bazy danych
RMAN> Alter database mount;
jeśli kopie zapasowe znajdują się w dokładnie tej samej strukturze katalogów lub jeśli struktura katalogów jest NFS zamontowana na serwerze rezerwowym, to bezpośrednio Przywróć bazę danych w innym przypadku jeśli kopie zapasowe znajdują się w innej lokalizacji, musisz je ręcznie skatalogować. Na przykład:
RMAN> catalog backuppiece '/backup/database_2x21kd12.bkp';
aby uzyskać więcej informacji na temat opcji katalogowania, zapoznaj się z poniższym postem:
Przywróć bazę danych
Przywróć bazę danych przy użyciu następującej składni (użyj ustaw nową nazwę)
RMAN> run { set newname for datafile 1 to '': Set newname for datafile 2 to ''; . . restore database; Switch datafile all; }
Odzyskaj bazę danych
zapoznaj się z ostatnią sekwencją dostępną w kopii zapasowej archivelog za pomocą następującego polecenia.To pomoże nam odzyskać bazę danych do archiwum.
RMAN > list backup of archivelog all;
Załóżmy, że ostatnia Sekwencja ostatniego archiwum w kopii zapasowej to 50. Ponieważ odzyskujemy tutaj bazę danych do archiwum Sekwencja 50 numer sekwencji w klauzuli UNTIL SEQUENCE powinien być 50 (+1)
RMAN> Recover database until sequence 51;
6. Skonfiguruj podstawową bazę danych, aby przenosić archiwa do stanu gotowości. Ustaw następujący parametr w podstawowej bazie danych:
log_archive_dest_2='SERVICE=stnd_db'
wykonaj przełącznik dziennika i upewnij się, że archiwa są przenoszone do miejsca docelowego w trybie gotowości.
7. Kick rozpocznij ponowne zastosowanie, umieszczając bazę danych w trybie Recover managed. W Standby database Uruchom zarządzany proces odzyskiwania:
SQL> Recover managed standby database disconnect from session;