Oracle布置在局域网中的服务器的时候,用本地PL SQL 链接没有丝毫的问题。
但是,如果用远程客户端的PL SQL 链接的时候却出现了“TNS:无监听器”的问题。
首先,就是进行了服务器端的监听器检查,发现是用127.0.0.1来作为Host的,对于局域网服务器来说,用127.0.0.1或者localhost来进行HOST的设置,是不可行的,都会在远端客户端上出现“无监听器”的情况。
将127.0.0.1改为192.168.1.120(服务器所在网域的内网IP),重启监听器正常,但是在本地登录PL SQL的时候却出现了TNS:解析错误的情况。
这是什么原因?具体不太清楚,根据网上查到的资料,我将IP更改为计算机的别名(该别名可以通过右击计算机的属性查看,可以得到)。
这个时候监听器重启后,本地PL SQL可以正常访问。
既然服务器端的监听器表示一切正常,那么情况就必定出现在客户端的tnsnames.ora的配置上。
我将其打开,发现HOST的值为192.168.1.120。
这个就是原因了,因为监听器映射的是计算机别名(之前是本地默认IP),不管这两者哪个,都无法使得客户端访问到服务器,问题找到了,解决的办法就是将其更改为服务器端的计算机别名即可。
修改完成后,开启PL SQL客户端,能正常进入。问题解决。
2013.9.16
在帮别人建立的时候发现仍旧无法链接,我尝试着进行格式的整理,将属性名和等号之间去掉空格,在等号和值的之间加上一个空格,其他都不能存在空格。
这样一来,发现可以成功链接到服务器。