Previous Topic: Restore to a Server with Different Directory StructuresNext Topic: Glossary


Szenario zum Erstellen eines Datenbankduplikats auf einem Remote-Host in RMAN-Modus

In diesem Szenario duplizieren Sie eine Datenbank auf einem Remote-Host, die über dieselbe Verzeichnisstruktur wie die ursprüngliche Datenbank verfügt. In diesem Beispiel hat die ursprüngliche Datenbank den Namen "orcl", und der Hostname dieser Datenbank lautet "host1". Die ursprüngliche Datenbank "orcl" verwendet eine RMAN-Recovery-Katalogdatenbank "catdb" auf "host2". Der Name der duplizierten Datenbank ist dup, und der Hostname der duplizierten Datenbank ist host3.

So erstellen Sie ein Datenbankduplikat auf einem Remote-Host:

  1. Führen Sie auf "host1" mit Arcserve Oracle Agent eine vollständige Sicherung für die Zieldatenbank "orcl" aus, um sicherzustellen, dass die benötigten Sicherungen und archivierten Redo-Protokolle vorliegen. Nun können Sie das Hilfsprogramm zur Konfiguration des Oracle Agent starten, damit der Job von der RMAN-Konsole übergeben und der Oracle Agent konfiguriert werden kann.
    C:\> rman catalog rman/rman@catdb target sys/sys_pwd@orcl
    RMAN> run {
    allocata channel dev1 type "sbt_tape"
    backup database plus archivelog;
    release channel dev1;}
    

    Hinweis: Achten Sie darauf, "rman catalog" für die Durchführung der vollständigen Sicherung zu aktivieren und die vollständige Sicherung über die GUI auszuführen.

  2. Erstellen Sie auf "host3" mit "oradim" eine zusätzliche Instanz.
    oradim -new -sid dup
    
  3. Erstellen Sie auf "host3" eine Oracle-Kennwortdatei für die zusätzliche Instanz. Beispiel:
    Orapwd file="c:\oracle\product\10.2.0\db_1\database\PWDdup.ora" password=sys_pwd entries=5
    
  4. Stellen Sie die Oracle Net-Konnektivität für die zusätzliche Instanz her.
  5. Erstellen Sie auf "host3" eine Datei "initdup.ora" mit den Initialisierungsparametern für die zusätzliche Instanz "dup".

    Nachfolgend finden Sie Beispiele für die Einstellungen der Initialisierungsparameter für die duplizierte Datenbank:

    db_name=dup
    db_unique_name=dup
    background_dump_dest='C:\oracle\product\10.2.0\admin\dup\bdump'
    compatible='10.2.0.1.0'
    control_files='C:\oracle\product\10.2.0\oradata\dup\control01.ctl','C:\oracle\product\10.2.0\oradata\dup\control02.ctl','C:\oracle\product\10.2.0\oradata\dup\control03.ctl'
    core_dump_dest='C:\oracle\product\10.2.0\admin\dup\cdump'
    user_dump_dest='C:\oracle\product\10.2.0\admin\dup\udump'
    DB_FILE_NAME_CONVERT=('c:\oracle\product\10.2.0\oradata\orcl','C:\oracle\product\10.2.0\oradata\dup\')
    LOG_FILE_NAME_CONVERT=('c:\oracle\product\10.2.0\oradata\orcl','C:\oracle\product\10.2.0\oradata\dup\')
    
  6. Starten Sie nun auf "host3" die zusätzliche Instanz.

    Bevor Sie mit der RMAN-Duplizierung beginnen, stellen Sie mit SQL*Plus eine Verbindung mit der zusätzlichen Instanz her, und starten Sie diese im NOMOUNT-Modus (unter Angabe einer Parameterdatei). In diesem Beispiel ist "sys_pwd" das Kennwort für den Benutzer mit SYSDBA-Berechtigung und "dup" der Net Service-Name für die zusätzliche Instanz.

    SQL> connect sys/sys_pwd@dup
    SQL> startup nomount pfile=' c:\oracle\product\10.2.0\db_1\database\PWDdup.ora ';
    

    Hinweis: Da für die zusätzliche Instanz keine Kontrolldatei vorhanden ist, können Sie die Instanz nur im NOMOUNT-Modus starten. Erstellen Sie keine Kontrolldatei, und versuchen Sie nicht, die zusätzliche Instanz zu laden oder zu öffnen.

  7. Sie können Arcserve Oracle Agent installieren und das Hilfsprogramm zur Konfiguration des Oracle Agent auf "host3" starten. Stellen Sie sicher, dass die Instanz "dup" zum Schützen aktiviert ist.
  8. Bearbeiten Sie die Datei "config.xml" im Verzeichnis "%Oracle_Agent_Home%", um ein alternatives Restore zu ermöglichen.

    Suchen Sie den folgenden Abschnitt in der Datei "config.xml":

    <AlternateRestore>
    	     <IsAnyOriginalHost>0</IsAnyOriginalHost>
    	     <OriginalHost\>
    
    	</AlternateRestore>
    

    Sie können ein alternatives Restore durchführen, indem Sie "Set OriginalHost" auf "host1" oder "Set IsAnyOriginalHost" auf "1" festlegen.

  9. Stellen Sie auf "host1" mit RMAN eine Verbindung zur Zieldatenbank, der duplizierten Datenbank und der Recovery-Katalogdatenbank her, und führen Sie den Befehl "Duplicate" aus.
    C:\> rman catalog rman/rman@catdb target sys/sys_pwd@orcl auxiliary sys/sys_pwd@dup 
    connected to target database: ORCL (DBID=1143972091)
    connected to recovery catalog database
    connected to auxiliary database: DUP (not mounted)
    RMAN> run 
    {
    allocate auxiliary channel aux1 type "sbt_tape";
    duplicate target database to dup;
    release channel aux1;
    }
    
  10. Die Duplizierung der Datenbank ist abgeschlossen. Sie können jetzt den folgenden Befehl auf "host3" ausführen:
    C:\> sqlplus / as sysdba
    

    Verbunden mit:

    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

    Mit Partitioning, OLAP- und Data Mining-Optionen

    SQL> wählen Sie den Status in "v$database;"
    STATUS
    ----------
    OPEN
    SQL> SELECT NAME FROM V$DATABASE;
    NAME
    ---------
    
    DUP