连接串连接ORACLE报:ORA-12537

本文解决了一个常见的Oracle数据库连接问题,ORA-12537TNS:connectionclosed,通常由$ORACLE_HOME/bin/oracle权限设置不当引起。通过调整文件权限至6751,问题得以解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:
一同学安装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)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值