12537: TNS: connection closed问题解决
1、问题描述及排除
在做rac切换时发现关闭节点1后,应用无法正常连接,这时使用各种办法连接就都报“12537: TNS: connection closed.”错误,使用srvclt status listener –n racdb02和lsnrctl status命令,查看状态也是正常了,反复重新启动多次都没有效果,最后经过网上查询和反复对两节点相关目录权限比对后发现$ORACLE_HOME/bin/oracle这个文件节点2和节点1不一致,正常情况下oracle文件权限应为:
[oracle@racdb01 ~]$ cd $ORACLE_HOME/bin
[oracle@racdb01 bin]$ ll oracle
-r-sr-s--x 1 oracle asmadmin 210824720 2010-12-23 oracle*
[oracle@racdb01 bin]$
下面是节点2权限:
Using username \"root\".
Last login: Thu Feb 26 10:14:21 2015 from 172.16.128.250
[root@racdb02 ~]# cd /u01/app/oracle/product/11.2.0/dbhome_1/bin
[root@racdb02 bin]# ll oracle
-r-xr-s--x 1 oracle asmadmin 210824720 2010-12-23 oracle*
2、问题解决:
更改节点2权限与节点1一致;
[root@racdb02 bin]# chmod 6551 oracle
[root@racdb02 bin]# ll oracle
-r-sr-s--x 1 oracle asmadmin 210824720 2010-12-23 oracle
更改完权限,实例2处于mount状态,需手动启动才可以
sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Thu Feb 26 19:41:15 2015
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
--------------- ----------
racdb2 MOUNTED
SQL> alter database open;
Database altered.
3、重新启动监听
[oracle@racdb02 bin]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 26-FEB-2015 19:39:08
Copyright (c) 1991, 2009, Oracle. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 26-FEB-2015 19:34:30
Uptime 0 days 0 hr. 4 min. 37 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/11.2.0/grid/network/admin/listener.ora
Listener Log File
/u01/app/grid/diag/tnslsnr/racdb02/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.*.*)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.*.*)(PORT=1521)))
Services Summary...
Service \"+ASM\" has 1 instance(s).
Instance \"+ASM2\
Service \"racdb\" has 1 instance(s).
Instance \"racdb2\
The command completed successfully
这样再单独使用节点2登录问题就解决了。