连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME 错误的解决

连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME 错误的解决

Posted on 2007-02-12 23:45 云自无心水自闲 阅读(29669) 评论(26)   编辑   收藏 所属分类: 心得体会数据库 <!-- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"> <rdf:Description rdf:about="http://www.blogjava.net/usherlight/archive/2007/02/12/99566.html" dc:identifier="http://www.blogjava.net/usherlight/archive/2007/02/12/99566.html" dc:title="连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME 错误的解决" trackback:ping="http://www.blogjava.net/usherlight/services/trackbacks/99566.aspx" /> </rdf:RDF> -->
最近在Oracle网站上下载一个Oracle 10g安装了一下,只有一张盘,而且安装时还有一个便捷的选项,非常方便。
可以安装完毕后,使用的时候却遇到了麻烦:如果只是本机的访问 sqlplus system/manager这样是没有问题的。
但是如果使用 sqlplus system/manager@orcl的时候却会报ora-12514的错误。

解决方法:
1. 打开<OracleHome>/network/admin/listener.ora文件,找到:

   SID_LIST_LISTENER =
   (SID_LIST =
     (SID_DESC =
       (SID_NAME = PLSExtProc)
       (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
       (PROGRAM = extproc)
     )
   )
  2. 添加:
            (SID_DESC =
       (GLOBAL_DBNAME = ORACLE)
       (ORACLE_HOME = D:\oracle\product\10.2.0\db_1) 
       (SID_NAME = ORACLE)
      )
  3. 最后变成:
 SID_LIST_LISTENER =
   (SID_LIST =
     (SID_DESC =
       (SID_NAME = PLSExtProc)
       (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
       (PROGRAM = extproc)
     )
     (SID_DESC =
       (GLOBAL_DBNAME = ORACLE)
       (ORACLE_HOME = D:\oracle\product\10.2.0\db_1) 
       (SID_NAME = ORACLE)
      )
   )
  4. 保存文件,重启服务中的TNSListener,OK!

PS: Oracle10g有一个好处:不再与Tomcat的端口冲突了。原来的Oracle9i安装完成后,8080端口就会被占用,一般都需要改tomcat的端口。现在终于轻松了。

评论

连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME 错误的解决 

2007-02-13 09:35 by pierce
我在listener.ora中添加过SID_NAME,结果无效

# re: 连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME 错误的解决[未登录]  回复  更多评论  

2007-02-13 09:59 by 云自无心水自闲
我昨天晚上通过这样的修改确实解决了我的问题。
如果你的错误还存在,那试一下:
set oracle_sid=<sid_name>
sqlplus /nolog
connect sys/pwd as sysdba
start
看看行不行。

你可能感兴趣的:(html,oracle,tomcat,.net,xml)