两个关于oracle监听的报错分析

今天部署oracle的时候出现了两个问题,

首先tnsping ok 的情况下是输入sqlplus /as sysdba 登陆数据库报错

ERROR - ORA-12560: TNS:protocol adapter error

找了下网上的资料,找到可能是如下原因

1、服务监听没起来

2、没有配置ORACLE_SID

3、没有配置ORACLE_HOME

4、TNS_ADMIN没有指定

5、tnsnames.ora文件内容不对

我逐一排查发现还是不行,这时候发现我在oracle server 和 oracle client 中配置了相同的两个listener ,使用oracle 自带的sqlplus 工具可以用

system 账户登陆,这时候同事怀疑是两个listener的缘故,于是在环境变量Path中将oracle server的路径放在client 的路径前面,果然

sqlplus /as sysdba 可以正常登陆了。

然后在使用新建的用户登陆的时侯sqlplus cms/cms@cmsdb 又报错了 ORA-12518: TNS:listener could not hand off client connection

咨询了下数据库大师,大师说应该是监听冲突了,这时候才恍然大悟,赶紧删了client中的listener,重启下服务(重要),果然好了。

这里有几个经验:

1、环境变量靠前Path的优先被使用

2、sqlplus /as sysdba使用oracle server的listener,cms/cms@cmsdb使用client的listener

3、在同时安装server和client的情况下只需要配置一个listener

对于我这个oracle小菜,还有很多要去探索学习,加油!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值