oracle网络配置有三个文件,它们都在D:appAdministratorproduct11.2.0dbhome_1NETWORKADMIN 这个文件夹下面,有sqlnet.ora、listener.ora、tnsnames.ora。
sqlnet.ora里只有两行配置:
1、SQLNET.AUTHENTICATION_SERVICES= (NTS)
# NTS,如果是NTS,那么在sqlplus下面sys用户可以不用输入密码,因为你是以管理员身份登陆操作系统的;默认就是NTS。
2、NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
# EZCONNECT 就是easy connect 的意思。
1,本地连接:sqlplus scott/tiger的连接方式,不需要tnsnames.ora文件,也不需要listener.ora文件,甚至也不需要sqlnet.ora文件,还不需要开启监听服务。
2,简单连接(EZCONNECT):即 conn scott/scott@a84p1l1x02meo8p:1521/orcl的连接方式,不需要客户端进行任何配置,即不需要tnsnames.ora文件;也不需要服务器端的监听配置,即不需要listener.ora文件,甚至也不需要sqlnet.ora文件。但必须要开启监听服务。
3,本地命名(TNSNAMES):以 tcp/ip 的方式连接oracle数据库,即conn scott/scott@orcl的连接方式,必须要开启监听服务。需要客户端配置一个本地命名解析文件,即 tnsnames.ora文件。
再看listener.ora
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = PC-20180705MOOP)(PORT = 1521))
)
)
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))是什么意思呢?
调用外部过程:c/c++/java完成一些任务很简单,但是oracle pl/sql自己来完成就很复杂,这个配置就是来监听外部c、c++、java 等高级语言写的过程的。
再来看tnsnames.ora
这三个文件的配置方法:
方式1、在开始菜单打开Net Configuration Assistant。
方式2、在cdm窗口输入netca打开Net Configuration Assistant。
1、配置sqlnet.ora
打开 Net Configuration Assistant 后,选择命名方法配置,本地命名(TNSNAMES),轻松连接命名(EZCONNECT)。
2、配置listener.ora文件
打开 Net Configuration Assistant 后,选择监听程序配置。
3、配置tnsnames.ora文件
打开 Net Configuration Assistant 后,选择本地net服务名配置。
pl/sql 连接数据库使用的是 TNSNAMES 的连接方式,即 tcp/ip 的连接方式,即conn scott/scott@orcl这种连接方式。
Datebase 选项就是 conn scott/scott@orcl 里@后面的部分,是本地可以随便起的名字。