windows2003+Oracle 10.2.0.3
相关文档如下:
1、修改HOST文件,添加如下内容:
192.168.1.1  dgemo1
192.168.1.2  dgemo2
2、primary安装EMO数据库,standby只安装数据库软件
3、primary、standby分别配置LISTENER和TNDNAMES,是的两库可以互联,如:primary连primary和standby;
6、修改primary初始化参数文件:
查找初始化文件路径:show parameter spfiel;
创建pfile:create pfile from spfile;   #spfile为二进制文件,用spfile创建文本文件pfile,数据库默认启动使用spfile,这里可以删除spfile
修改INIEMO.ORA文件
参照官方文档:
DB_NAME=chicago
DB_UNIQUE_NAME=chicago
LOG_ARCHIVE_CONFIG='DG_CONFIG=(chicago,boston)'
CONTROL_FILES='/arch1/chicago/control1.ctl', '/arch2/chicago/control2.ctl'
LOG_ARCHIVE_DEST_1=
'LOCATION=/arch1/chicago/ 
  VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
  DB_UNIQUE_NAME=chicago'
LOG_ARCHIVE_DEST_2=
'SERVICE=boston LGWR ASYNC
  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) 
  DB_UNIQUE_NAME=boston'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
LOG_ARCHIVE_MAX_PROCESSES=30这里需要添加的内容如下:
DB_UNIQUE_NAME=dgnode1
LOG_ARCHIVE_CONFIG='DG_CONFIG=(dgnode1,dgnode2)'
LOG_ARCHIVE_DEST_2='SERVICE=emo2 LGWR ASYNC  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)  DB_UNIQUE_NAME=dgnode2'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
LOG_ARCHIVE_MAX_PROCESSES=30 
FAL_SERVER=emo2
FAL_CLIENT=emo1
STANDBY_FILE_MANAGEMENT=AUTO
7、修改primary为归档模式:
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
8、为standby创建控制文件:
STARTUP MOUNT;
ALTER DATABASE CREATE STANDBY CONTROLFILE AS 'd:\oracle\dg.ctl';
ALTER DATABASE OPEN;
9、将INTEMO.ORA、PWDEMO.ORA、dg.ctl、admin(文件夹)、oradata(文件夹)copy到standby相应位置;
10、删除standby的.ctl文件,用dg.ctl代理control01.ctl,control02.ctl,control03.ctl
11、修改standby的INTEMO.ORA文件
官方文档如下:
DB_NAME=chicago
DB_UNIQUE_NAME=boston
LOG_ARCHIVE_CONFIG='DG_CONFIG=(chicago,boston)'
CONTROL_FILES='/arch1/boston/control1.ctl', '/arch2/boston/control2.ctl'
DB_FILE_NAME_CONVERT='chicago','boston'
LOG_FILE_NAME_CONVERT=
'/arch1/chicago/','/arch1/boston/','/arch2/chicago/','/arch2/boston/'
LOG_ARCHIVE_FORMAT=log%t_%s_%r.arc
LOG_ARCHIVE_DEST_1=
'LOCATION=/arch1/boston/
  VALID_FOR=(ALL_LOGFILES,ALL_ROLES) 
  DB_UNIQUE_NAME=boston'
LOG_ARCHIVE_DEST_2=
'SERVICE=chicago LGWR ASYNC
  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) 
  DB_UNIQUE_NAME=chicago'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
STANDBY_FILE_MANAGEMENT=AUTO
FAL_SERVER=chicago
FAL_CLIENT=boston参照实际情况需修改或添加如下内容:
DB_UNIQUE_NAME=dgnode2
LOG_ARCHIVE_CONFIG='DG_CONFIG=(dgemo1,dgemo2)'
LOG_ARCHIVE_DEST_2='SERVICE=dgemo1 LGWR ASYNC  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)  DB_UNIQUE_NAME=dgnode1'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
LOG_ARCHIVE_MAX_PROCESSES=30
FAL_SERVER=dgemo1
FAL_CLIENT=dgemo2
STANDBY_FILE_MANAGEMENT=AUTO12、为standby创建实例
oradim -NEW -SID emo -INTPWD D:\oracle\product\10.2.0\db_1\database\PWDemo.ora -STARTMODE manual 
备库的listener.ora如下:
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = node2)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )
现在主库启动,尝试用备库连接主库时报错:ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务求救啊