The Geek Diary
dette indlæg dækker de detaljerede trin til oprettelse af en fysisk standby-database på et normalt filsystem ved hjælp af RMAN til en primær database i ASM.
oversigt
her kan Standby-databasen oprettes ved hjælp af følgende 2 metoder:
- Normal gendannelse og gendannelse ved hjælp af RMAN.
- oprettelse af en Duplikatdatabase til Standby ved hjælp af RMAN.
Metode 1
- Udfør backup af ASM primære database (datafiler, Controlfile for standby og Archivelogs )
- gør backup stykker tilgængelige på Standby-serveren.
- Opret parameterfilen og adgangskodefilen på standby.
- Konfigurer Oracle net services på begge servere.
- Udfør gendannelse og gendannelse i standby-databasen.
- konfigurer den primære database til at overføre arkiverne til standby.
- Kickstart gentagelsen Anvend ved at sætte databasen I Recover managed mode.
Metode 2
brug RMAN Duplicate-funktionen til at oprette standby-databasen. Trin til at opnå det samme er beskrevet i det følgende indlæg.
Metode 1-Normal gendannelse og gendannelse ved hjælp af RMAN
1. Udfør backup af ASM primære database (datafiler, 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. Gør backup stykker tilgængelige på Standby-serveren:
– FTP eller SCP backup stykker til standby-serveren. Mens du gør FTP sørg for at gøre det i binær tilstand kun. Eller
– NFS mount monter derefter NFS på standby-serveren med samme navn som du monterede på den primære database. Eller
– hvis sikkerhedskopierne er på bånd, skal du sørge for at foretage korrekte ændringer på standby-serveren, så du kan gendanne sikkerhedskopierne på standby-serveren.
3. Opret parameterfilen & adgangskodefil i standby. Kopier den primære databaseparameterfil og foretag de nødvendige ændringer:
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/'
Opret adgangskodefilen til standby-database med samme adgangskode som primær
$ export ORACLE_SID=stand_db $ orapwd file=orapwstand_db password=oracle
4. Konfigurer Oracle net services på begge servere
In standby server - configure listener.In Primary server - configure tnsnames for standby. - check connectivity using tnsping.
5. Udfør gendannelse og gendannelse i standby-databasen. Start Nomount standby-forekomsten og gendan standby-kontrolfilen fra sikkerhedskopien af’ standby-kontrolfilen ‘ udført i trin 1.
$ export ORACLE_SID=stnd_db$ rman target /RMAN> restore standby controlfile from '/backup/stdb_cntl_3oqff2fb_.bkp';
– du skal bruge indstillingen ‘standby controlfile’ som
RMAN> RESTORE STANDBY CONTROLFILE from ...
else konvertere parameter DB_FILE_NAME_CONVERT bruges ikke.
RMAN> REPORT SCHEMA ; ( or sql> select name from v$datafile ; )
Monter databasen
RMAN> Alter database mount;
hvis backup stykker er i nøjagtig samme mappestruktur eller hvis mappestrukturen er NFS monteret på standby-serveren derefter direkte gendanne databasen ellers hvis backup stykker er i anden placering, du har brug for at katalogisere dem manuelt. Eksempel:
RMAN> catalog backuppiece '/backup/database_2x21kd12.bkp';
for mere information om katalogiseringsindstillinger henvises til nedenstående indlæg:
Gendan databasen
Gendan databasen ved hjælp af følgende syntaks(brug Indstil nyt navn)
RMAN> run { set newname for datafile 1 to '': Set newname for datafile 2 to ''; . . restore database; Switch datafile all; }
Gendan databasen
Lær den sidste sekvens, der er tilgængelig i archivelog-sikkerhedskopien, at kende ved hjælp af følgende kommando.Dette vil hjælpe os med at genoprette databasen indtil den arkivlog.
RMAN > list backup of archivelog all;
lad os antage, at den sidste sekvens af sidste arkivlog i sikkerhedskopien er 50. Da vi er ved at inddrive databasen her indtil archivelog sekvens 50 sekvensnummeret i indtil sekvens klausul bør være 50 (+1)
RMAN> Recover database until sequence 51;
6. Konfigurer den primære database til at overføre arkiverne til standby. Indstil følgende parameter i den primære database:
log_archive_dest_2='SERVICE=stnd_db'
udfør en logkontakt og sørg for, at arkiver bliver overført til standby destination.
7. Kickstart gentag anvendelse ved at sætte databasen I Recover managed mode. I Standby database starte den administrerede opsving proces:
SQL> Recover managed standby database disconnect from session;