第三步: 创建备用数据库
1、从主数据库 $ORACLE_HOME/dbs 中复制密码文件,并将其重命名为备用数据库名称。 2、用户名必须为 SYS 且主数据库和备用数据库的密码需相同。 此处的最佳做法是按照建议复制密码文件。密码文件名称必须和备用站点上使用的实例名称/SID 匹配,而非 DB_NAME。
3、仅用一个参数 DB_NAME 创建初始化参数。 DB_NAME=pridb
DB_UNIQUE_NAME=stadb
DB_BLOCK_SIZE=
4、将主、备节点的环境变量ORACLE_SID分别该为pridb,stadb 5、 验证“AS SYSDBA”连接正在运行 $ sqlplus sys/oracle@pridb as sysdba $ sqlplus sys/oracle@stadb as sysdba
6、在主系统上执行RMAN 并连接主数据库和辅助数据库(即备用数据库) $rman target sys/oracle@pridb auxiliary sys/oracle@stadb
7、在rman下运行如下脚本:
run {
allocate channel prmy1 type disk; allocate channel prmy2 type disk; allocate channel prmy3 type disk; allocate channel prmy4 type disk;
allocate auxiliary channel stby type disk;
duplicate target database for standby from active database spfile
parameter_value_convert 'pridb','stadb' set db_unique_name='stadb'
set db_file_name_convert='/study/','/aux/' set log_file_name_convert='/study/','/aux/'
set control_files=' /opt/app/oracle/oradata/aux/ control01.ctl' set log_archive_max_processes='5' set fal_client='stadb' set fal_server='pridb'
set standby_file_management='AUTO'
set log_archive_config='dg_config=(pridb,stadb)'
set log_archive_dest_2='service=pridb ASYNC valid_for=(ONLINE_LOGFILE,PRIMARY_ROLE) db_unique_name=pridb' ; }
激活standby库到read/write模式 5. 激活standby库:
SQL> ALTER DATABASE ACTIVATE STANDBY DATABASE; 6. 重启standby库到mount模式 SQL> STARTUP MOUNT FORCE;
7. 修改standby库到 MAXIMIZE PERFORMANCE模式并打开到read/write状态 SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE; SQL> ALTER DATABASE OPEN;
完成这一步就是可以开始使用standby库进行测试和报表了