客户端的sqlnet.ora中的NAMES.DIRE…
2016-01-17 16:49
176 查看
NAMES.DIRECTORY_PATH常用的值有tnsnames,hostname,onames和ezconnect和ldap,cds,nis不常用的值,默认值是(tnsnames,onames,hostname)。
如果设置NAMES.DIRECTORY_PATH=(tnsnames),那么客户端就只会从tnsnames.ora查找你要连接的字符串(如orcl)记录,如果tnsname.ora文件中没有此记录,则连接不上数据库。
如果设置NAMES.DIRECTORY_PATH=(tnsnames,hostname),那么客户端首先会从tnsnames.ora查找你要连接的字符串(如orcl)记录,如果tnsname.ora文件中没有此记录,则尝试把你要连接的字符串(如orcl)当作一个主机名,通过网络的途径去解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=连接字符串(如orcl)这个实例,当然这里连接字符串(如orcl)并不是一个主机名,最后会尝试以ezconnect的方式连接数据库。
例如sqlnet.ora配置如下:
NAMES.DIRECTORY_PATH=
(TNSNAMES,ezconnect)
则可以同时支持如下格式的访问:
$ sqlplus scott/tiger@orcl
$ sqlplus scott/tiger@//service_IP(or
hostname):1521/orcl
当然采用第一种格式时需要正确配置tnsnames.ora,因为sqlplus需要在这里匹配IP地址、端口、服务名等参数(见上一博文)
如果设置NAMES.DIRECTORY_PATH=(tnsnames),那么客户端就只会从tnsnames.ora查找你要连接的字符串(如orcl)记录,如果tnsname.ora文件中没有此记录,则连接不上数据库。
如果设置NAMES.DIRECTORY_PATH=(tnsnames,hostname),那么客户端首先会从tnsnames.ora查找你要连接的字符串(如orcl)记录,如果tnsname.ora文件中没有此记录,则尝试把你要连接的字符串(如orcl)当作一个主机名,通过网络的途径去解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=连接字符串(如orcl)这个实例,当然这里连接字符串(如orcl)并不是一个主机名,最后会尝试以ezconnect的方式连接数据库。
例如sqlnet.ora配置如下:
NAMES.DIRECTORY_PATH=
(TNSNAMES,ezconnect)
则可以同时支持如下格式的访问:
$ sqlplus scott/tiger@orcl
$ sqlplus scott/tiger@//service_IP(or
hostname):1521/orcl
当然采用第一种格式时需要正确配置tnsnames.ora,因为sqlplus需要在这里匹配IP地址、端口、服务名等参数(见上一博文)
相关文章推荐
- 开机自动启动(关闭)oracle服务
- Oracle 中常用数据字典大总结…
- 关于PHP连接ORACLE问题(06年自己写…
- 64位 Ubuntu 安装 Oracle 11G
- oracle开机启动脚本
- Navicat_for_MySQL安装
- Hibernate生成数据库
- SQL Server 2012安装——.net framework 3.5离线安装
- 使用的 SQL Server 版本不支持数据类型“datetime2”.
- 数据库事务概念
- 数据库---T-SQL语句(一)
- 【数据库】Mysql 中的事件//定时任务
- mysql概要(十三)备份和恢复
- 查询sql server 2008所有表和行数
- sql 建立文件组示例
- mysql无法连接
- mysql show processlist [转]
- RabbitMQ与Redis队列对比
- MySQL show table status [转]
- 十步完全理解SQL