Oracle 11g dataguard的log_archive_dest_1和log_archive_dest_2要如何设置

解决方案 »

  1.   

    你这个设置是指 源数据库还是目标数据库,
    对于源数据库来说 log_archive_dest_1 这个就是 本地归档文件存放路径
     log_archive_dest_2 就是目标库地址
    例子:
    *.LOG_ARCHIVE_DEST_1='location=E:\oracle\product\10.2.0\archivelog' 
    *.LOG_ARCHIVE_DEST_2='SERVICE=orcl2'
    两台数据库的存储要求要一致,不然 就要 设置
    *.DB_FILE_NAME_CONVERT='E:\oracle\product\10.2.0\oradata\orcl','D:\oracle\product\10.2.0\oradata\orcl' (根据实际情况去转换)
      

  2.   

    楼主
    LOG_ARCHIVE_DEST_1:对应的是主库归档日志的路径LOG_ARCHIVE_DEST_2:只有主库角色才会生效,对应目标库从官方文档中摘录出来的,以chicago为主库,boston为备库,做physical standby的配置信息如下
    主库配置
    LOG_ARCHIVE_DEST_1='LOCATION=/arch1/chicago/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=chicago'
    LOG_ARCHIVE_DEST_2='SERVICE=boston ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=boston'
    备库配置
    LOG_ARCHIVE_DEST_1='LOCATION=/arch1/boston/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=boston'
    LOG_ARCHIVE_DEST_2='SERVICE=chicago ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=chicago'LOG_ARCHIVE_DEST_1就是本地的归档日志位置
    LOG_ARCHIVE_DEST_2配置的就是备库的信息,只有主库角色该参数才有效,所以上面的设置,备库的LOG_ARCHIVE_DEST_2其实不起作用,可以忽略,备库配置这个参数主要是为了以后如果切换成了主库后,该参数就可以生效了对应参数
    LOCATION或SERVICE:
    LOCATION=local_disk_directory or USE_DB_RECOVERY_FILE_DEST
    SERVICE=net_service_name如果是LOCATION则代表本地的路径,本例中指本地归档日志路径,SERVICE指连接远程数据库的服务名,与远程数据库实例对应,设置LOG_ARCHIVE_DEST_n时,LOCATION或者SERVICE必须有一个VALID_FOR:redo的信息以何种类型传输到目标端 VALID_FOR=(redo_log_type, database_role)DB_UNIQUE_NAME:数据库对应的唯一名称,LOG_ARCHIVE_DEST_1对应主库,LOG_ARCHIVE_DEST_2对应备库ASYNC:采用异步方式传输redo