oracle客户端发生ORA-12154情况之一
的有关信息介绍如下:绝大多数时候我们都要用oracle的客户端来连接数据库。但是最近不知道为什么连接数据的时候出现了这样一个error:error while trying to receive text from error ORA-12154.当然了发生这样的错误有可能是服务器的防火墙没有关闭又或是oracle没有开启监听程序。我这里的情况是第三者!
出现这样的情况我首先是进入dos尝试的tnsping 一下数据库是否是通的。请看下图,出现了Message 3511 not found的错误!
这个时候可以检查下服务器的防火墙是否是打开的,进入root用户,查看命令:service iptables status。如果服务器防火墙没有是开启的状态可以对其进行关闭:service iptables stop。
防火墙已经关闭之后还要确认下数据库的监听程序是否是处于监听状态。进入oracle用户,lsnrctl status命令来查看,如下图。如果lsnrctl没有开启,输入命令:lsnrctl start就可以顺利开启了。
如果还是不行,这个时候先检查下tnsping是否已经添加到了环境变量中。在dos里面敲入path就可以看到了。下图红色全出来的地方就是我tnsping所在的目录,已经存在环境变量中了。
还是不行的话,就要在本地系统变量中添加环境变量了。右键计算机---属性----高级系统设置----环境变量。
添加两个环境变量,分别是:oracle_home和oracle_sid。
oracle_home是客户的路径,我这里是:E:\app\Administrator\product\11.2.0\client_3
添加完成之后再次的tnsping,显示已经成功ping通!这样就能顺利的连接oracle了。