TNS-12537报错解决方法

今天公司因为服务器迁移,需要将数据库暂时关闭,等迁移完后,启动服务器,打开数据库正常,但是使用客户端连接数据库时,
总是提示TNS-12537:连接关闭,首先想到的是使用tnsping,测试一下数据库的连通状况,结果连不上,
首先想到的是去服务器查一下log日志,结果如下

***********************************************************************
Fatal NI connect error 12537, connecting to:
 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle)(PORT=1521))(CONNECT_DATA=(SID=dd)(CID=(PROGRAM=emagent)(HOST=oracle)(USER=oracle))))

  VERSION INFORMATION:
TNS for Linux: Version 11.2.0.4.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
  Time: 28-NOV-2015 10:55:51
  Tracing not turned on.
  Tns error struct:
    ns main err code: 12537
    TNS-12537: TNS:connection closed
    ns secondary err code: 12560
    nt main err code: 507
    TNS-00507: Connection closed
    nt secondary err code: 0

大概搜索了下,发现大多数的影响因素都被排除,但是问题都没解决。
无意中检查了一下hostname,发现hostname被修改了,
发现问题后,解决起来就很简单了,直接hostname oracle ,然后再/etc/sysconfig/network中修改主机名为oracle即可,重新启动oracle和监听以后,一切正常。
造成的原因很简单因为在厂商安装服务器系统时,系统的主机名为localhost.domain,而安装数据库时直接hostname oracle修改,并没有在/etc/sysconfig/network中修改,从而导致服务器重启后,服务器的主机名直接被还原。

总结:错误解决很简单,但是造成原因很难捕捉到,当然TNS-12537错误还是有很多其他原因,这里只提供一种解决的场景,仅供参考。


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

转载于:http://blog.itpub.net/29812844/viewspace-1988841/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值