ARCH配置最大性能dataguard(不需要在备库创建standby redo log)
主库确保强制归档
alter database archivelog;
alter database force logging;
select name,log_mode,force_logging from v$database
1:主库创建主备的pfile
create pfile='XX.主’ from spfile;
create pfile='XX.备’ from spfile;
主pfile配置增加下面五项,缺一不可(DG_CONFIG谁在逗号前面,谁在逗号后面不影响,DG_CONFIG值是db_unique_name,service值是tns别名)
*.db_unique_name='master'
*.log_archive_config='DG_CONFIG=(master,slave)'
*.log_archive_dest_1='location=/orasoft/ora11g/archivelog'
*.log_archive_dest_2='service=testdg arch db_unique_name=slave' ###没有写sync,默认就是arch sync
*.remote_login_passwordfile='EXCLUSIVE'
备pfile配置增加下面七项,缺一不可(DG_CONFIG谁在逗号前面,谁在逗号后面不影响,DG_CONFIG值是db_unique_name,service值是tns别名,fal_client和fal_server值是tns别名)
*.db_unique_name='slave'
*.log_archive_config='DG_CONFIG=(master,slave)'
*.log_archive_dest_1='location=/orasoft/ora11g/archivelog'
*.remote_login_passwordfile='EXCLUSIVE'
*.fal_client='testdg'
*.fal_server='testdb'
*.STANDBY_FILE_MANAGEMENT='AUTO' //缺少这个参数的话,主库新建data_file后备库会报错ORA-01274
2:主库在mount状态下创建备库的crontrol
alter database create standby controlfile as ‘XX’
3:关闭主库,把主库数据文件、密码文件,备库crontrol拷贝到备库(不用从主库拷贝online redo log,因为备库启动的时候会自动创建online redo log)
4:主库pfile启动
5:备库pfile启动到nomount状态,再依次执行下面三条语句
alter database mount standby database;
alter database open read only;
alter database recover managed standby database disconnect from session;
以上配置是不考虑以后主备进行切换的场景,如果需要主备切换,则需要在主的pfile中增加*.fal_client、*.fal_server,在备的pfile中增加*.log_archive_dest_2
以上如果主备的归档路径不一样,则在各自的log_archive_dest_1设置自己的路径即可,说明归档日志路径不在控制文件中,在参数文件中
如果主备库的数据文件和在线日志文件路径不一样,则在备库的pfile中增加*.db_file_name_convert=’主库数据文件路径’,’ 备库数据文件路径’
*.log_file_name_convert=’主库在线日志文件路径’,’ 备库在线日志文件路径’