1. 问题描述
Oracle DataGuard日志传输失败,日志信息如下所示,
Error 1017 received logging on to the standby
------------------------------------------------------------
Check that the primary and standby are using a password file
and remote_login_passwordfile is set to SHARED or EXCLUSIVE,
and that the SYS password is same in the password files.
returning error ORA-16191
------------------------------------------------------------
FAL[client, ARC2]: Error 16191 connecting to epmsn for fetching gap sequence
sql> select * from v$archive_gap; --日志存在gap
THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#
---------- ------------- --------------
1 38 40
2. 问题分析
日志中显示的非常清晰,该问题主要由以下原因造成,
- 检查数据库参数remote_login_passwordfile,值为SHARED or EXCLUSIVE(默认);
- SYS密码是否与password file一致,即是否最近改过sys密码,没有同步password file;
- dg 源和目标端password file是否同步;
- 11g默认密码大小写敏感,生成密码文件时是否添加参数ignorecase。
- 目标端password file格式: orapw+sid。
3. 恢复过程
3.1 修改源端sys密码
sql> alter user sys identified by Star_1234;
User altered.
sql>
3.2 生成源端password file
[oracle@sourcedb oracle]$ cd $ORACLE_HOME/dbs
[oracle@sourcedb dbs]$ ls -ltr
total 9568
-rw-r--r--. 1 oracle oinstall 2851 May 15 2009 init.ora
-rw-r-----. 1 oracle oinstall 24 Aug 13 2018 lkHsql
-rw-r----- 1 oracle oinstall 24 Jun 21 2019 lkEPMBAK
-rw-r----- 1 oracle oinstall 3584 Jun 21 2019 spfileepmbak.ora
-rw-rw---- 1 oracle oinstall 1544 Jun 21 2019 hc_epmbak.dat
-rw-rw----. 1 oracle oinstall 1544 Jun 21 2019 hc_hsql.dat
-rw-r----- 1 oracle oinstall 1536 Jan 26 21:22 bak_orapwepmsn
-rw-r--r-- 1 oracle oinstall 50 Feb 15 00:18 initepmbak.ora
-rw-r----- 1 oracle oinstall 24 Feb 15 02:34 lkEPMSN
-rw-rw---- 1 oracle oinstall 1544 Feb 15 02:36 hc_epmsn.dat
-rw-r----- 1 oracle oinstall 9748480 Feb 15 21:24 snapcf_epmsn.f
-rw-r----- 1 oracle oinstall 3584 Mar 22 06:00 spfileepmsn.ora
-rw-r----- 1 oracle oinstall 1536 Mar 22 06:38 orapwepmsn
[oracle@sourcedb dbs]$ mv orapwepmsn bak_orapwepmsn ---备份源密码文件
[oracle@sourcedb dbs]$ orapwd file=orapwepmsn password=Star_1234 ignorecase=y ---重新生成密码文件
[oracle@sourcedb dbs]$ scp orapwepmsn oracle@hsql:$ORACLE_HOME/dbs/ --传输密码文件到dg目标端
orapwepmsn 100% 1536 1.5KB/s 00:00
[oracle@sourcedb dbs]$
sql> select * from v$archive_gap; --日志传输恢复正常,gap消除
no rows selected
sql>
4. 重新开启adg
**********oracle active data guard
alter database recover managed standby database cancel;
alter database open;
alter database recover managed standby database using current logfile disconnect;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。