ITPub博客

首页 > 数据库 > Oracle > 奇怪的ora-12154

奇怪的ora-12154

原创 Oracle 作者:cccgw 时间:2009-12-17 12:34:57 0 删除 编辑

前两天从10.2.0.4到11.2.0.1.0升级了一个库,主库升级完打开,在主库重建密码文件传到备库,备库以11g的环境变量打开升级。结果发现主库一直报这个错:

Error 12154 received logging on to the standby
Errors in file /u01/diag/rdbms/test/test/trace/test_arc0_7115.trc:
ORA-12154: TNS:could not resolve the connect identifier specified
PING[ARC0]: Heartbeat failed to connect to standby 'test_stb'. Error is 12154.

tnsping可以通,sqlplus 去连备库也没有问题。

重启备库没有解决,临时使用脚本去做register.

最终这个问题是重启主库解决的。

[@more@]

oracle的SR说出现这种问题有两种情况,

一个是主库更改密码文件没有重启。(我在另一套11.2上尝试没有重现这个问题)。

另一个是归档进程尝试往原来的目录去归档,而不是用最新的归档设置。在linux下可以用strace去跟踪。如

strace -fo /tmp/arch0.log -p

pid为arc0的进程号。

附手动传归档的脚本:

. /home/oracle/.bash_profile > /dev/null 2>&1

cd /home/oracle/syncprilog
/home/oracle/syncprilog/syncprilog.sh


cd /archive/test
LOGS=`ls -rtl|awk -F " " '{print $9}'|tail -5`
for log in $LOGS
do
$ORACLE_HOME/bin/sqlplus " / as sysdba" < alter database register logfile '/archive/test/$log';
exit
EOF
done

/home/oracle/syncprilog/syncprilog.sh 里的内容:

#!/usr/bin/expect -f
set timeout 10
spawn rsync -av -e ssh oracle@standby:/archive/test /archive/
set timeout 300
expect "*password:"
send "standbypassowrdr"
expect eof

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/668365/viewspace-1029759/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: limit active sessions
请登录后发表评论 登录
全部评论

注册时间:2012-08-27

  • 博文量
    82
  • 访问量
    1035049