使用duplicate克隆資料庫

myownstars發表於2013-06-07

用途

1

建立物理備庫

2

克隆資料庫

會自動為其分配新的DBID,由於Redo log無法歸檔,因此須執行point-in-time recovery

相比傳統的手工copyduplicate自動化了一系列工作

建立引數檔案(可選)

自動從active database搜尋滿足until條件的controlfilemountrestore資料檔案並使用增量備份或archive log恢復到指定時間點;

重啟資料庫至nomount,新建控制檔案(DBID)

Open resetlogs資料庫

 

操作型別

有兩種方式:

Active duplication

Backup-based duplication

 

 

 

 

限制

Source/target db必須位於同一OS平臺,32bit/64bit屬於同一平臺

至少需要一個auxiliary channel

Active duplicationsource/auxiliary例項 使用相同的sysdba密碼

如果操作失敗,將auxiliary instance置為nomount重新執行,會跳過已經完成的資料檔案;也可使用noresume忽略此功能;

 

引數

For standby— 建立standby,如果複製spfile則指定db_unique_name;不可與to database_name共存;dorecover會在restore資料庫後進行recover;如果連線了catalog資料庫會自動被註冊;

Backup location— 指定備份集的路徑,沒有rman target/catalog連線時使用

Logfile— 指定online redo,用於non-standby

Nofilenamecheck— 不執行datafile/online redo名字檢查,當source/target的檔案路徑一致時使用,否則會抱錯,因為rman無法分辨不同host;當source/target為同一host則不要使用;

Password file— 複製source db的密碼檔案覆蓋auxiliary instance,只用於active database;如果指定for standby,預設自動複製;

Spfile— 複製source dbspfile

 

 

Source Database Files

Active Database

Backup-Based

Control files

Copied from source database when FOR STANDBY specified; otherwise re-created

Restored from backups when FOR STANDBY specified or duplication without a connection to the target database; otherwise re-created

Data files

Copied from source database (unless excluded with a SKIP option)

Restored from backups (unless excluded with a SKIP option)

Temp files

Re-created (see )

Re-created (see )

Online redo log files

Re-created

Re-created

Standby redo log files

Re-created when FOR STANDBY specified and defined on primary database

Re-created when FOR STANDBY specified and defined on primary database

Archived redo log files

Copied from source database, but only if needed for the duplication

Obtained from backups or cataloged copies, but only if needed for the duplication

Server parameter file

Copied from source database (see SPFILE clause in )

Restored from backup if SPFILE clause is specified (see )

Flashback log files

Not re-created

Not re-created

Block change tracking file

Not re-created

Not re-created

Password file

Copied by default for standby databases; for nonstandby databases, copied only if PASSWORD FILE option is specified

Not re-created

Backups and other files in fast recovery area

Not copied

Not copied

 

 

--建立standby

DUPLICATE TARGET DATABASE

  FOR STANDBY

  FROM ACTIVE DATABASE

  PASSWORD FILE

  SPFILE

    PARAMETER_VALUE_CONVERT '/disk1', '/disk2'

    SET DB_FILE_NAME_CONVERT '/disk1','/disk2'

    SET LOG_FILE_NAME_CONVERT '/disk1','/disk2'

    SET DB_UNIQUE_NAME 'dup1'

    SET SGA_MAX_SIZE 200M

    SET SGA_TARGET 125M;

 

--克隆資料庫

DUPLICATE DATABASE TO dupdb

  UNTIL TIME "TO_DATE('11/01/2007 14:00:00', 'MM/DD/YYYY HH24:MI:SS')"

  SPFILE

  BACKUP LOCATION '/prod_backups'

  NOFILENAMECHECK;

 

DUPLICATE TARGET DATABASE TO dupdb

  FROM ACTIVE DATABASE

  SPFILE

    PARAMETER_VALUE_CONVERT '/oracle/oradata/prod/', '+DISK1'

    SET DB_CREATE_FILE_DEST +DISK1;

 

RUN

  ALLOCATE AUXILIARY CHANNEL newdb DEVICE TYPE sbt;

  DUPLICATE TARGET DATABASE TO newdb

    PFILE ?/dbs/initNEWDB.ora

    UNTIL TIME 'SYSDATE-1'  # specifies incomplete recovery

    SKIP TABLESPACE example, history   # skip desired tablespaces

    DB_FILE_NAME_CONVERT ('/h1/oracle/dbs/trgt/','/h2/oracle/oradata/newdb/')

    LOGFILE

      GROUP 1 ('/h2/oradata/newdb/redo01_1.f',

               '/h2/oradata/newdb/redo01_2.f') SIZE 4M,

      GROUP 2 ('/h2/oradata/newdb/redo02_1.f',

               '/h2/oradata/newdb/redo02_2.f') SIZE 4M,

      GROUP 3 ('/h2/oradata/newdb/redo03_1.f',

               '/h2/oradata/newdb/redo03_2.f') SIZE 4M REUSE;

}

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15480802/viewspace-763451/,如需轉載,請註明出處,否則將追究法律責任。

相關文章