http://blog.sina.com.cn/s/blog_6151984a0100m8pu.html
- 总结:
1 .三个配置文件都是放在$ORACLE_HOME\network\admin目录下。
2 .sqlnet.ora确定解析方式
3 .listener.ora上设SID_NAME,通常用于JDBC访问,对应的错误码为12505
4 .tnsnames.ora上设SERVICE_NAME,通常用于linux sqlplus客户端,对应的错误码为12514
- sqlnet.ora
假如sqlnet.ora 是下面这个样子
| NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME) |
| 当客户端输入sqlplus sys/oracle@orcl时, 就会首先在 tnsnames.ora文件中找orcl的记录.如果没有相应的记录则尝试把orcl当作一个主机名 括号中还有其他选项,如LDAP等,但HOSTNAME,LDAP通常并不常用,通常只设TNSNAME即可. |
- tnsnames.ora
| ORCL = (DESCRIPTION = ) SALES = (DESCRIPTION = ) |
| SQL> show parameter service_name; NAME ------------------------------------ ----------- ------------------------------ service_names |
| 删除tnsnames.ora [oracle@oracle admin]$ rm tnsnames.ora |
| 重启oracle |
| 本地客户端无法访问数据库了 [oracle@oracle ~]$ sqlplus scott/scott@orcl SQL*Plus: Release 10.2.0.1.0 - Production on Tue Feb 16 17:32:41 2010 Copyright (c) 1982, 2005, Oracle. ERROR: ORA-12154: TNS:could not resolve the connect identifier specified |
| 在远端(另一台机器) 通过sqlplus方式连接oracle数据库,没问题 通过jdbc连接orcle数据库,没问题 |
listener.ora
listener进程接受远程对数据库的接入请求
Listener.ora
| SID_LIST_LISTENER = (SID_LIST = ) #监听器定义,一台数据库可以有不止一个监听器 LISTENER = |
| |
本文深入解析了Oracle数据库的连接配置,包括sqlnet.ora、tnsnames.ora、listener.ora的作用与配置方法,详细解释了如何设置SID_NAME、SERVICE_NAME,以及SQL*Plus访问数据库时可能出现的错误码。重点讨论了tnsnames.ora文件的作用、配置实例和删除后的影响,并介绍了Listener进程如何接受远程接入请求,以及JDBC连接请求的URL如何对应Listener配置。
3678

被折叠的 条评论
为什么被折叠?



