态注册,如果没有该参数,而且Data Guard 启动顺序又不正确,那么在主库可能会报 PING[ARC1]: Heartbeat failed to connect to standby 'orcl_st'. Error is 12514. 错误,导致归档无法完成。
Oracle Listener动态注册与静态注册
http://www.2cto.com/database/201006/50233.
html
Tnsnames.ora 文件
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db1/network/admin/tnsnames.ora
# Generated by
Oracle configuration tools.
DG_PD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.198.136)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = DG_PD)
)
)
DG_ST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.198.128)(PORT =1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = DG_ST)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
www.2cto.com
二. Standby 端配置
1. 创建备库存放数据文件和后台跟踪目录, 这个目录可以和主库相同, 如果不同,就需要在主库的初始化文件中进行转换。
如:
*.log_file_name_convert='/u02/oradata/dgtest/','/u03/oradata/orcl/'
*.db_file_name_convert='/u02/oradata/dgtest/','/u03/oradata/orcl/'
--建相目录
mkdir -p $ORACLE_BASE/oradata/dgtest
mkdir $ORACLE_BASE/admin/dgtest
mkdir -p $ORACLE_BASE/admin/dgtest/adump
mkdir $ORACLE_BASE/admin/dgtest/bdump
mkdir $ORACLE_BASE/admin/dgtest/cdump
mkdir $ORACLE_BASE/admin/dgtest/dpdump
mkdir $ORACLE_BASE/admin/dgtest/pfile
mkdir $ORACLE_BASE/admin/dgtest/udump
mkdir $ORACLE_BASE/admin/dgtest/
mkdir $ORACLE_BASE/flash_recovery_area/DGTEST/onlinelog
在root账户下创建目录 /u01/archive/并修改该目录权限
mkidr -p /u01/archive/
chown -R oracle:oinstall /u01/archive/
chmod 775 /u01/archive/
2. 将主库的密码文件,控制文件,数据文件,参数文件,日志文件copy到备库。
说明一点,这个控制文件是我们自己创建的standby 控制文件。将copy过来的控制文件再复制三份就可以了。 主备的控制文件是不一样的。 这里除了采用直接copy 文件之外,还可以采用Rman 恢复来做。 直接copy 需要停
数据库,如果采用RMAN 的话,就不需要停机了。
--数据文件,redo文件
scp *.dbf 192.168.198.128:/u01/app/oracle/oradata/dgtest
scp *.log 192.168.198.128:/u01/app/oracle/oradata/dgtest
--密码文件,参数文件
scp initdgtest.ora 192.168.198.128:/u01/app/oracle/product/10.2.0/db1/dbs
scp orapwdgtest 192.168.198.128:/u01/app/oracle/product/10.2.0/db1/dbs
--listener tnsnames
scp listener.ora 192.168.198.128:/u01/app/oracle/product/10.2.0/db/network/admin
scp tnsnames.ora 192.168.198.128:/u01/app/oracle/product/10.2.0/db/network/admin
--standby 控制文件
scp standby01.ctl 192.168.198.128:/u01/app/oracle/oradata/dgtest/
--archivelog
scp /u01/archive/* 192.168.198.128:/u01/archive/
登陆到192.168.198.128备库这台服务器将传过去的standby01.ctl文件复制成如下:
cp standby01.ctl control01.ctl
cp standby01.ctl control02.ctl
cp standby01.ctl control03.ctl
3. 修改初始化参数文件
*.DB_UNIQUE_NAME='dg_st'
*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(dg_pd,dg_st)'
*.log_archive_dest_1='location=/u01/archive VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=dg_st'
*.LOG_ARCHIVE_DEST_2='SERVICE=dg_pd ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=dg_pd'
*.LOG_ARCHIVE_DEST_STATE_1=ENABLE
*.LOG_ARCHIVE_DEST_STATE_2=ENABLE
*.sta