oracle网络配置

当客户端通过网络以"connect 用户名/密码@连接字符串"的形式连接oracle数据库时,需要监听程序的协助,当连接建立后,即使监听程序挂掉也不会影响已经建立好的连接。


用户连接oracle数据库服务器主要有两种方式:专有服务器连接和共享服务器连接

  • 在专用服务器模式中,对于每个运行数据库应用程序的用户进程都由执行Oracle 数据库服务器代码的专用服务器进程提供服务。

每个服务器进程都有自己专用的PGA,这个PGA 在服务器进程启动时创建,对PGA 的访问权限仅限于该服务器进程,并且只能由代表该服务器进程的Oracle 代码对PGA 进行读写。

  • 在共享服务器模式中,不必为每个连接都提供一个专用服务器进程。分派程序将多个传入网络会话请求引到共享服务器进程池。共享服务器进程为所有客户机请求提供服务。

多个客户端用户共享服务器进程,且UGA被转移到SGA(如果配置了共享池或者大型池),PGA将只剩下栈空间。


配置和管理Oracle Net 的工具主要有dbconsole、netca、netmgr、和命令行工具(vi)


Oracle Net支持多种连接解析方式:

  • Easy Connect(EZCONNECT)

   使用简便连接时,可提供Oracle Net 连接所需的所有信息作为连接字符串的一部分。简便连接的连接字符串采用以下形式:

   username/password@hostname[:port][/service_name]

   监听程序端口和服务名为可选项。如果未提供监听程序端口,Oracle Net 假定使用的是默认端口1521。如果未提供服务名,Oracle Net 假定连接字符串中提供的数据库服务名与主机名是相同的。

   SQL> conn hr/[email protected]:1521/orcl.example.com

  • 本地命名(TNSNAMES)

   使用本地命名时,用户可提供Oracle Net 服务的别名。Oracle Net 会根据本地已知服务的列表来检查别名,如果发现匹配名称,会将别名转换为主机、协议、端口和服务名。

   本地命名的一个优势是,数据库用户仅需要记住简便连接所需的短别名,而不必记住很长的连接字符串。

   如果组织的Oracle Net 服务配置不经常更改,则适合使用本地命名。

   SQL> conn hr/hr@orcl

  • 目录命名和外部命名


Oracle 网络相关的文件位于$TNS_ADMIN目录下,其中主要有sqlnet.ora、listener.ora、tnsnames.ora三个文件

sqlnet.ora    :位于数据库服务器上,用于定义连接解析方式(默认连接方式为TNSNAMES, EZCONNECT)

listener.ora  :位于数据库服务器上,用于监听器的配置文件

tnsname.ora   :位于客户机上,包含网络服务器名,并映射到连接字符串

默认可能不存在sqlnet.ora、listener.ora两个文件,但监听程序仍然可以以默认方式启动。此时,Oracle将自动在解析地址为计算机主机名,端口为1521的地址上启动一个名为"LISTENER"的监听器。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
cat  sqlnet.ora
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
ADR_BASE =  /u01/app/oracle
cat  listener.ora
LISTENER =
   (DESCRIPTION_LIST =
     (DESCRIPTION =
       (ADDRESS = (PROTOCOL = TCP)(HOST = ora11g.example.com)(PORT = 1521))
     )
   )
ADR_BASE_LISTENER =  /u01/app/oracle
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON               # line added by Agent
cat  tnsnames.ora
ORCL =
   (DESCRIPTION =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.90)(PORT = 1521))
     (CONNECT_DATA =
       (SERVICE_NAME = orcl.example.com)
     )
   )
$ lsnrctl service
LSNRCTL  for  Linux: Version 11.2.0.1.0 - Production on 11-SEP-2013 22:11:58
Copyright (c) 1991, 2009, Oracle.  All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora11g.example.com)(PORT=1521)))
Services Summary...
Service  "+ASM"  has 1 instance(s).
   Instance  "+ASM" , status READY, has 1 handler(s)  for  this service...
     Handler(s):
       "DEDICATED"  established:0 refused:0 state:ready
          LOCAL SERVER
Service  "orcl.example.com"  has 1 instance(s).
   Instance  "orcl" , status READY, has 1 handler(s)  for  this service...
     Handler(s):
       "DEDICATED"  established:0 refused:0 state:ready
          LOCAL SERVER
Service  "orclXDB.example.com"  has 1 instance(s).
   Instance  "orcl" , status READY, has 1 handler(s)  for  this service...
     Handler(s):
       "D000"  established:0 refused:0 current:0 max:972 state:ready
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值