Jurnalul Geek
acest post acoperă pașii detaliate pentru crearea unei baze de date standby fizic pe un sistem de fișiere normal folosind RMAN pentru o bază de date primară în ASM.
Prezentare generală
aici baza de date Standby poate fi creată folosind următoarele 2 metode:
- normal restaurare și recuperare folosind RMAN.
- crearea unei baze de date duplicat pentru Standby folosind RMAN.
Metoda 1
- efectuați copia de rezervă a bazei de date primare ASM ( fișiere de date, fișier de control pentru standby și jurnale de arhivă )
- faceți piesele de rezervă disponibile pe serverul Standby.
- creați fișierul parametru și fișierul parolă în standby.
- configurați Oracle Net services pe ambele servere.
- efectuați restaurarea și recuperarea în baza de date standby.
- configurați baza de date primară pentru a transfera arhivele în standby.
- Kick începeți aplicarea refacerii punând baza de date în modul Recuperare gestionat.
Metoda 2
utilizați caracteristica duplicat RMAN pentru a crea baza de date standby. Pașii pentru a realiza același lucru sunt prezentate în următorul post.
Metoda 1 – restaurare și recuperare normală folosind RMAN
1. Efectuați copia de rezervă a bazei de date primare ASM( fișiere de date, Controlfile pentru 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. Faceți piesele de rezervă disponibile pe serverul de așteptare: – NFS mount apoi montați NFS pe server standby cu același nume ca tine montat pe baza de date primară. Sau
– dacă copiile de rezervă sunt pe bandă, asigurați-vă că efectuați modificări adecvate pe serverul de așteptare, astfel încât să puteți restaura copiile de rezervă pe serverul de așteptare.
3. Creați fișierul parametru & fișier parolă în standby. Copiați fișierul parametrilor bazei de date primare și efectuați modificările necesare:
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/'
creați fișierul parolă pentru baza de date standby cu aceeași parolă ca primar
$ export ORACLE_SID=stand_db $ orapwd file=orapwstand_db password=oracle
4. Configurați Oracle Net services pe ambele servere
In standby server - configure listener.In Primary server - configure tnsnames for standby. - check connectivity using tnsping.
5. Efectuați restaurare și recuperare în baza de date standby. Startup Nomount instanța de așteptare și de a restabili controlfile standby din copia de rezervă a ‘controlfile standby’ efectuate la Pasul 1.
$ export ORACLE_SID=stnd_db$ rman target /RMAN> restore standby controlfile from '/backup/stdb_cntl_3oqff2fb_.bkp';
– trebuie să utilizați opțiunea ‘standby controlfile’ ca
RMAN> RESTORE STANDBY CONTROLFILE from ...
altfel converti parametru DB_FILE_NAME_CONVERT nu este utilizat.
– după standby CONTROLFILE este restaurat, puteți monta instanța AUX și verificați parametrul db_file_name_convert este utilizat și arată calea corectă datafile/nume. De exemplu:
RMAN> REPORT SCHEMA ; ( or sql> select name from v$datafile ; )
montați baza de date
RMAN> Alter database mount;
în cazul în care piesele de rezervă sunt în exact aceeași structură de directoare sau în cazul în care structura de directoare este NFS montat pe serverul de așteptare, apoi restabili direct baza de date altceva în cazul în care piesele de rezervă sunt în altă locație aveți nevoie pentru a le cataloga manual. De exemplu:
RMAN> catalog backuppiece '/backup/database_2x21kd12.bkp';
pentru mai multe informații despre opțiunile de catalogare, consultați postarea de mai jos:
restaurați baza de date
restaurați baza de date utilizând următoarea sintaxă (utilizați set newname)
RMAN> run { set newname for datafile 1 to '': Set newname for datafile 2 to ''; . . restore database; Switch datafile all; }
recuperați baza de date
cunoașteți ultima secvență disponibilă în backup-ul archivelog folosind următoarea comandă.Acest lucru ne va ajuta în recuperarea bazei de date până la acel arhivelog.
RMAN > list backup of archivelog all;
să presupunem că ultima secvență a ultimului jurnal de arhivă din copie de rezervă este 50. Din moment ce recuperăm baza de date aici până la secvența archivelog 50, numărul secvenței din clauza until SEQUENCE ar trebui să fie 50 (+1)
RMAN> Recover database until sequence 51;
6. Configurați baza de date primară pentru a transfera arhivele în standby. Setați următorul parametru în baza de date primară:
log_archive_dest_2='SERVICE=stnd_db'
efectuați un comutator jurnal și asigurați-vă că arhivele sunt obtinerea transferate la destinație de așteptare.
7. Lovi cu piciorul începe Redo aplica prin punerea bazei de date în modul de recuperare gestionat. În baza de date Standby începe procesul de recuperare gestionat:
SQL> Recover managed standby database disconnect from session;