sql >> Database >  >> RDS >> Oracle

Stappen om stand-by te synchroniseren met primaire database in Oracle

In deze tutorials leert u Stappen om Standby te synchroniseren met Primary Database in Oracle.

We kunnen stand-by DB-synchronisatie met primair uitvoeren wanneer:

  • Als er een enorme kloof is tussen primaire en standby DB
  • Als archieflogboeken ontbreken op primair
  • Als archieflogboeken corrupt zijn op de primaire

Stappen om stand-by te synchroniseren met primaire database in Oracle

Stap 1:Op standby DB – annuleer het herstel op standby database met onderstaande opdracht.

Sql>alter database recover managed standby database cancel;

Stap 2:Op primaire DB – Bepaal het punt vanaf waar stand-by niet synchroon loopt

sql>column current _scn for 999999999

sql>select current_scn from  v$database;

Stap 3:Op primaire DB – Bepaal of er een gegevensbestand is toegevoegd aan de primaire DB nadat de stand-by DB niet gesynchroniseerd was. Zo ja, dan moeten we dat databestand apart terugzetten op stand-by. Als er geen gegevensbestand is toegevoegd, gaat u verder met de standby-synchronisatieactiviteit met de onderstaande stappen.

sql>select  file#, name, creation_change#  from v$datafile_header where creation_change#  >= Step 2's scn;

Stap 4:Op primaire DB - neem op SCN gebaseerde incrementele back-up met RMAN. Hier gebruiken we het SCN-nummer dat we uit stap 2 hebben gekregen. Deze back-up zou op schijf moeten staan. En vergeet niet om kanalen toe te wijzen tijdens het maken van een back-up, zodat de back-up sneller zal zijn.

We nemen ook de controle over de bestandsback-up.

RMAN>

run{

allocate channel ch 15

device type disk ;

backup as  compressed backupset  incremental  from scn ( scn from step 2) database format  '/u002/rman/inc_backup_%U' 

release channel ch 15;

RMAN>backup current controlfile for standby  format  '/u001/tmp/standby_ctrl.bkp';

Stap 5:Breng back-upbestanden over van primaire DB naar stand-by DB

Op primair –

OS> scp  -p /u002/rman/inc_back*  [email protected]:/u002/rman_stdby/

OS> scp  -p /u002/rman/standby_ctrl.bkp  [email protected]:/u002/rman_stdby/

Stap 6:  Stand-by  –  Maak verbinding met rman en catalogiseer de gekopieerde back-up

RMAN> catalog start with  '/u002/rman_stdby/';

Stap 7:Op stand-by DB – Herstel nu het controlebestand vanaf een back-up

RMAN>restore standby control file to '/tmp/control.ctl';

Stap 8:In stand-by DB – Kopieer nu het herstelde stand-by-besturingsbestand naar de oorspronkelijke locatie. Gebruik de onderstaande opdracht om een ​​originele locatie van een controlebestand te krijgen.

sql>show parameter control_files    

#OR

sql>select name from v$controlfile;

En vervang het controlebestand van de oorspronkelijke locatie door /tmp/control.ctl

Stap 9:Op stand-by – Sluit nu de stand-by-database af

sql>shutdown immediate

sql>startup mount

Stap 10:Stand-by – Herstel nu het gegevensbestand vanaf stap 3 met rman. We voeren deze stap alleen uit als we uitvoer krijgen in stap 3.

RMAN>restore data file datafile_number(from step3);

RMAN>recover database noredo;

Stap 11:Op stand-by - Start nu het herstel met onderstaande opdracht.

sql>recover managed standby database disconnect from session;

Stap 12:Controleer of de secundaire database is gesynchroniseerd met de primaire database. Bekijk de archiefloglijst aan beide kanten om de huidige logreeksen te zien

Nu hebt u de stappen geleerd om stand-by te synchroniseren met de primaire database in de echte Oracle-omgeving.


  1. Dagen aftrekken van een datum in SQLite

  2. Hoe importeer ik een .sql-bestand in de mysql-database met behulp van PHP?

  3. Stel een standaardwaarde in voor een kolom in SQLite:DEFAULT-beperking

  4. Nieuwe kolomwijzigingen met alleen metagegevens in SQL Server 2016