绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
【EZCONNECT】 sqlnet.ora文件中EZCONNECT参数与Easy Connect Naming Method方法
2019-12-29 17:11:17
如果对tnsnames.ora文件没有做充分的配置,也可以使用Oracle的Easy Connect Naming Method方法测试数据库是否可以访问。
这里不对这种方法的原理和详细用法展开描述,这方面的信息可以通过以下Oracle连接获得。
http://download.oracle.com/docs/cd/B19306_01/network.102/b14212/naming.htm#i498306
或直接访问下属文章进行参考。
Net Services Administrator's Guide - 2 Quick Start to Oracle Net Connections - Task 3: Configure the Client for Connection to a Database
Net Services Administrator's Guide - 8 Configuring Naming Methods - Using the Easy Connect Naming Method

简单列一下该方法的使用语法,供参考。
CONNECT username/password@host[:port][/service_name][/instance_name]
CONNECT username/password@[//]host[:port][/service_name]

本文想要强调指出的是,如果想要使用Easy Connect Naming Method方法测试数据库的连通性,需要在sqlnet.ora文件中增加“NAMES.DIRECTORY_PATH= (EZCONNECT)”信息,否则该功能将无法使用。

1.sqlnet.ora文件的位置
该文件与listener.ora和tnsnames.ora文件处于同一目录,具体目录为:$ORACLE_HOME/network/admin。

2.体验报错,以此为鉴
如果是Windows客户端没有配置相应的参数,会收到如下报错:
C:\Users\secooler>sqlplus sec/sec@10.17.193.211:1521/ora10g

SQL*Plus: Release 10.2.0.3.0 - Production on 星期一 8月 2 21:19:01 2010

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

ERROR:
ORA-12154: TNS: 无法解析指定的连接标识符


请输入用户名:
ERROR:
ORA-12560: TNS: 协议适配器错误


请输入用户名:
ERROR:
ORA-12560: TNS: 协议适配器错误


SP2-0157: 在 3 次尝试之后无法连接到 ORACLE, 退出 SQL*Plus

C:\Users\secooler>

如Linux服务器端的sqlnet.ora文件没有设置相应的参数,将会收到如下错误:
sec@secdb /home/oracle$ sqlplus sec/sec@10.17.193.211:1521/ora10g

SQL*Plus: Release 10.2.0.3.0 - Production on Mon Aug 2 21:21:34 2010

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified


Enter user-name:
ERROR:
ORA-01017: invalid username/password; logon denied


Enter user-name:
ERROR:
ORA-01017: invalid username/password; logon denied


SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus

两种错误内容是一样的,从错误提示上看,很难直接定位是由于sqlnet.ora文件配置问题导致的。这就需要我们对Easy Connect Naming Method的原理深入了解。

3.向sqlnet.ora文件中添加“EZCONNECT”信息,解决该问题
“EZCONNECT”这个单词很好理解,从发音上即可等同于“Easy Connect”。从此,该参数将不再陌生。
sec@secdb /home/oracle$ cat $ORACLE_HOME/network/admin/sqlnet.ora
# sqlnet.ora Network Configuration File: /oracle/app/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.

NAMES.DIRECTORY_PATH= (TNSNAMES,EZCONNECT)

在添加完参数后尝试连接,成功。
sec@secdb /oracle$ sqlplus sec/sec@10.17.193.211:1521/ora10g

SQL*Plus: Release 10.2.0.3.0 - Production on Mon Aug 2 21:31:50 2010

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options

sec@ora10g>

4.小结
Oracle提供了很多类似文中提到的Easy Connect Naming Method小技巧。建议在使用这些便捷方法之前充分了解工具使用的前提和约束,这样可以在提高效率的同时不至于带来太多的障碍。

Good luck.

secooler
10.08.02

-- The End --

分享好友

分享这个小栈给你的朋友们,一起进步吧。

OCM联盟
创建时间:2019-12-27 14:04:54
OCM联盟(OCMU – Oracle Certified Master Union)是一群有着共同理想,共同志向的DBA的家。 ⚠️该小栈仅限ocm成员入驻!审核制! Oracle Certified Master (OCM) -Oracle认证大师,是Oracle认证的别,是对数据库从业人员的技术、知识和操作技能的别的认可。Oracle OCM是解决困难的技术难题和复杂的系统故障的佳Oracle专家人选,也是IT行业衡量IT专家和经理人的高专业程度及经验的基准。
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

栈主、嘉宾

查看更多
  • 侯圣文@secooler
    栈主

小栈成员

查看更多
  • gaokeke123
  • ?
  • 山中老狐狸
  • 飘絮絮絮丶
戳我,来吐槽~