问题:
一同学安装EM12C ,连接本机的EMREP数据库,通过连接串连接conn system/oracle_4U@emrep,报:
ORA-12537 TNS:connection closed
环境:
本机安装有12c 12.1.2.0 GI,数据库
数据库和GI是分开两个用户,GRID 和 ORACLE安装的
数据库使用GI的监听
分析:
后测试,通过连接串连接本地所有数据库,还有一个orcl,也报同样的错误。
检查监听日志,只要通过连接串连接,都报:
TNS-12518: TNS:listener could not hand off client connection
TNS-12547: TNS:lost contact
TNS-12560: TNS:protocol adapter error
TNS-00517: Lost contact
Linux Error: 32: Broken pipe
原因:
出现这个问题的原因,一般是由于 $ORACLE_HOME/bin/oracle 的权限不对导致。
以 'oracle' 登录:
ls -l $ORACLE_HOME/bin/oracle
-rwsrwx--x 1 oracle asmadmin 323613240 Feb 15 14:33 /u01/app/oracle/product/12.1.0/dbhome_1/bin/oracle
正确的权限应该为 6751
解决:
以root登录
chmod 6751 /u01/app/oracle/product/12.1.0/dbhome_1/bin/oracle
ls -l $ORACLE_HOME/bin/oracle
-rwsr-s--x 1 oracle asmadmin 323613240 Feb 15 14:33 /u01/app/oracle/product/12.1.0/dbhome_1/bin/oracle
再去连接,问题解决。
参考:ORA-12537/ORA-12547 or TNS-12518 if Listener (including SCAN Listener) and Database are Owned by Different OS User (Doc ID 1069517.1)
本文解决了一个常见的Oracle数据库连接问题,ORA-12537TNS:connectionclosed,通常由$ORACLE_HOME/bin/oracle权限设置不当引起。通过调整文件权限至6751,问题得以解决。
1718

被折叠的 条评论
为什么被折叠?



