The Geek Diary
Dieser Beitrag behandelt die detaillierten Schritte zum Erstellen einer physischen Standby-Datenbank auf einem normalen Dateisystem mit RMAN für eine primäre Datenbank in ASM.
Übersicht
Hier kann die Standby-Datenbank mit den folgenden 2 Methoden erstellt werden:
- Normale Wiederherstellung und Wiederherstellung mit RMAN.
- Erstellen einer doppelten Datenbank für Standby mit RMAN.
Methode 1
- Führen Sie die Sicherung der ASM-Primärdatenbank durch ( Datafiles, Controlfile für Standby und Archivelogs )
- Stellen Sie die Sicherungskopien auf dem Standby-Server zur Verfügung.
- Erstellen Sie die Parameterdatei und die Kennwortdatei im Standby-Modus.
- Konfigurieren Sie Oracle net Services auf beiden Servern.
- Führen Sie die Wiederherstellung und Wiederherstellung der Standby-Datenbank durch.
- Konfigurieren Sie die primäre Datenbank, um die Archive in den Standby-Modus zu übertragen.
- Starten Sie den Wiederherstellungsvorgang, indem Sie die Datenbank in den verwalteten Wiederherstellungsmodus versetzen.
Methode 2
Verwenden Sie die RMAN-Duplikatfunktion, um die Standby-Datenbank zu erstellen. Schritte, um dasselbe zu erreichen, werden im folgenden Beitrag beschrieben.
Methode 1 – Normale Wiederherstellung und Wiederherstellung mit RMAN
1. Führen Sie die Sicherung der ASM-Primärdatenbank durch ( Datafiles, Controlfile für 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. Stellen Sie die Backup-Teile auf dem Standby-Server zur Verfügung:
– FTP oder SCP die Backup-Stücke auf den Standby-Server. Stellen Sie dabei sicher, dass FTP nur im Binärmodus ausgeführt wird. ODER
– NFS mount mounten Sie dann den NFS auf dem Standby-Server mit demselben Namen wie in der primären Datenbank. ODER
– Wenn sich die Sicherungen auf Band befinden, stellen Sie sicher, dass Sie auf dem Standby-Server die richtigen Änderungen vornehmen, damit Sie die Sicherungen auf dem Standby-Server wiederherstellen können.
3. Erstellen Sie die Parameterdatei & Passwortdatei im Standby-Modus. Kopieren Sie die primäre Datenbankparameterdatei und nehmen Sie die erforderlichen Änderungen vor:
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/'
Erstellen Sie die Kennwortdatei für die Standby-Datenbank mit demselben Kennwort wie die primäre
$ export ORACLE_SID=stand_db $ orapwd file=orapwstand_db password=oracle
4. Konfigurieren von Oracle Net Services auf beiden Servern
In standby server - configure listener.In Primary server - configure tnsnames for standby. - check connectivity using tnsping.
5. Führen Sie die Wiederherstellung und Wiederherstellung in der Standby-Datenbank durch. Starten Sie Nomount die Standby-Instanz und stellen Sie die Standby-Steuerelementdatei aus der in Schritt 1 durchgeführten Sicherung der ‚Standby-Steuerelementdatei‘ wieder her.
$ export ORACLE_SID=stnd_db$ rman target /RMAN> restore standby controlfile from '/backup/stdb_cntl_3oqff2fb_.bkp';
– Sie müssen die Option ‚Standby controlfile‘ wie verwenden
RMAN> RESTORE STANDBY CONTROLFILE from ...
andernfalls wird der Konvertierungsparameter DB_FILE_NAME_CONVERT NICHT verwendet.
– Nachdem die CONTROLFILE wiederhergestellt wurde, können Sie die AUX-Instanz mounten und überprüfen, ob der Parameter DB_FILE_NAME_CONVERT verwendet wird, und den korrekten Pfad / Namen der Datendatei anzeigen. Zum Beispiel:
RMAN> REPORT SCHEMA ; ( or sql> select name from v$datafile ; )
Mounten der Datenbank
RMAN> Alter database mount;
Wenn sich Sicherungskopien in genau derselben Verzeichnisstruktur befinden oder wenn die Verzeichnisstruktur NFS auf dem Standby-Server gemountet ist, stellen Sie die Datenbank direkt wieder her, wenn sich die Sicherungskopien an einem anderen Speicherort befinden, müssen Sie sie manuell katalogisieren. Beispielsweise:
RMAN> catalog backuppiece '/backup/database_2x21kd12.bkp';
Weitere Informationen zu den Katalogisierungsoptionen finden Sie im folgenden Beitrag:
Wiederherstellen der Datenbank
Wiederherstellen der Datenbank mit der folgenden Syntax (Verwenden Sie set newname)
RMAN> run { set newname for datafile 1 to '': Set newname for datafile 2 to ''; . . restore database; Switch datafile all; }
Wiederherstellen der Datenbank
Erfahren Sie mit dem folgenden Befehl, welche Sequenz zuletzt in der Archivelog-Sicherung verfügbar war.Dies wird uns helfen, die Datenbank bis zu diesem Archivprotokoll wiederherzustellen.
RMAN > list backup of archivelog all;
Nehmen wir an, die letzte Sequenz von last archivelog in der Sicherung ist 50. Da wir die Datenbank hier bis zur Archivelog-Sequenz 50 wiederherstellen, sollte die Sequenznummer in der UNTIL SEQUENCE-Klausel lauten 50 (+1)
RMAN> Recover database until sequence 51;
6. Konfigurieren Sie die primäre Datenbank, um die Archive in den Standby-Modus zu übertragen. Legen Sie den folgenden Parameter in der primären Datenbank fest:
log_archive_dest_2='SERVICE=stnd_db'
Führen Sie einen Protokollwechsel durch und stellen Sie sicher, dass die Archive an das Standby-Ziel übertragen werden.
7. Starten Sie den Wiederherstellungsvorgang, indem Sie die Datenbank in den verwalteten Wiederherstellungsmodus versetzen. Starten Sie in der Standby-Datenbank den verwalteten Wiederherstellungsprozess:
SQL> Recover managed standby database disconnect from session;