使用 RMAN DUPLICATE 从活动数据库创建物理备库
OracleRMAN命令
# Prerequisites: standby instance in NOMOUNT with a pfile containing only db_name,
# primary password file copied, static listener entries and tnsnames on both sides.
rman target sys@<primary_tns> auxiliary sys@<standby_tns>
RUN {
ALLOCATE CHANNEL p1 DEVICE TYPE DISK;
ALLOCATE CHANNEL p2 DEVICE TYPE DISK;
ALLOCATE AUXILIARY CHANNEL s1 DEVICE TYPE DISK;
ALLOCATE AUXILIARY CHANNEL s2 DEVICE TYPE DISK;
DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE
USING COMPRESSED BACKUPSET SECTION SIZE 32G
DORECOVER
SPFILE
SET db_unique_name='<standby_db_unique_name>'
SET control_files='+DATA','+FRA'
SET db_create_file_dest='+DATA'
SET db_recovery_file_dest='+FRA'
SET fal_server='<primary_tns>'
SET log_archive_dest_2=''
SET dg_broker_start='FALSE'
NOFILENAMECHECK;
}作用
通过网络将主库数据文件复制到备库服务器(无需中间备份文件),创建适用于备库的 spfile,并用 DORECOVER 应用可用的归档日志。
适用场景
新建 Data Guard 备库或重建无法 reinstate 的备库时。
注意
会在主库上产生网络和 I/O 负载;不要在高峰时段运行,或限制通道数量。NOFILENAMECHECK 仅在备库位于独立服务器上时才安全;在同一服务器上可能覆盖主库文件。在之前或之后添加备用 redo 日志(与主库在线 redo 大小相同,每个 thread 多一组),然后配置 broker。