连接远程数据库的时候。出现ora-12514 tns 监听程序当前无法识别连接描述符中请求的服务的错误!!tnsnames.ora文件:ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = PC-200908201515)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
(UR=A)
)
)
zghouse=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =51.143.123.49)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME =zghouse)
)
)EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)listener.ora文件:SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = F:\oracle\product\10.1.0\db_1) (PROGRAM = extproc)
)
)LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = PC-200908201515)(PORT = 1521))
) )
)
zghouse=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =51.143.123.49)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME =zghouse)
)
) 楼主是手动修改tnsname.ora文件的吗? 在检查下,把前面的空格都去掉,这里面多一个空格都报错..
监听重启了没? 用tnsping SID看看..能ping通就可以了..
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =51.143.123.49)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME =zghouse)
)
) |||||||||||||||||||||
客户端 nsping zghouse
服务器端 51.143.123.49
lsnrctl status 看下有zghouse这个服务吗?
防火墙有开没?在Net Manager里配置下看看..
上面是你服务端的内容吧。。
你客户端的tnsnames.ora文件的内容呢?贴出来看看
listener.ora是你本机的,不是服务器的如果PC-200908201515是你服务器的电脑名,那么
(ADDRESS = (PROTOCOL = TCP)(HOST = PC-200908201515)(PORT = 1521))
换成
(ADDRESS = (PROTOCOL = TCP)(HOST = 服务器ip)(PORT = 1521))或者打开系统盘->:\WINDOWS\system32\drivers\etc\hosts文件
填加
服务器ip PC-200908201515
PC-200908201515是我使用的电脑名
服务器的IP为51.143.123.49
能正常通过啊
可还是报错。。
请帮帮忙啊
楼主你把服务器和客户端的tnsnames.ora文件内容分别贴出来看看,我觉得是两个文件不对应导致的。
你说的是。监听文件吧
问题的关键是:oracle10g里面必须将server_name 改成SID
在tnsname文件里面