♣
思考
在Oracle中,什么是EZCONNECT方式连接数据库?
♣
答案
如果对tnsnames.ora文件没有做相应的配置,那么也可以使用Oracle的EZCONNECT(Easy Connect Naming Method)方式来连接到数据库,其语法形式如下所示:
sqlplus username/password@host[:port][/service_name][/instance_name]
需要注意的是,如果想要使用EZCONNECT方式连接到数据库,那么需要在客户端的sqlnet.ora文件中增加“NAMES.DIRECTORY_PATH=(EZCONNECT)”信息或者删除客户端的sqlnet.ora文件,否则该功能将无法使用,默认是有该配置的。一般配置如下所示:
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
例如:listener配置TCP协议,使用主机名,端口为1521,service_names=orclasm.lhr.com
连接到数据库:
C:\Users\Administrator>sqlplus lhr/lhr@192.168.59.130:1521/orclasm.lhr.com
SQL*Plus: Release 11.2.0.1.0 Production on 星期一 2月 2 10:35:52 2015
Copyright (c) 1982, 2010, Oracle. All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options
SQL>
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options
SQL>
测试连通性:
C:\Users\Administrator>tnsping 192.168.59.130:1521/orclasm.lhr.com
TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 02-2月 -2015 10:39:03
Copyright (c) 1997, 2010, Oracle. All rights reserved.
已使用的参数文件:
D:\Program files\app\oracle\product\11.2.0.1\dbhome_1\NETWORK\ADMIN\sqlnet.ora
已使用 EZCONNECT 适配器来解析别名
尝试连接 (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=orclasm.lhr.com))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.59.130)(PORT=1521)))
OK (0 毫秒)
若使用PLSQL Developer连接到数据库,则在登录界面的数据库输入框中填写:192.168.59.130:1521/orclasm.lhr.com,如下所示:
登录后可以看到:
本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗