Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2397880
  • 博文数量: 328
  • 博客积分: 4302
  • 博客等级: 上校
  • 技术积分: 5486
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-01 11:14
个人简介

悲剧,绝对的悲剧,悲剧中的悲剧。

文章分类

全部博文(328)

文章存档

2017年(6)

2016年(18)

2015年(28)

2014年(73)

2013年(62)

2012年(58)

2011年(55)

2010年(28)

分类: Oracle

2014-02-23 17:29:08

网络环境包括服务器端和客户端,服务器端提供监听来处理来自客户的连接请求,客户端提出请求并连接到服务器端进行数据库操作。

1 服务器端网络监听配置


Oracle Net listener 是位于DB host上面的一个进程,它监听客户的连接请求,并且处理客户和服务器DB的通信。

缺省的监听配置文件是 listener.ora, 它位于 Oracle home目录的子目录 network/admin 中. 比如,你的home目录是 /u01/app/oracle/product/11.2.0/dbhome_1, 那么这个配置文件在默认情况下就位于 /u01/app/oracle/product/11.2.0/dbhome_1/network/admin .

这个文件配置了一个协议地址,而这个地址指示了数据库。下面是一个例子:
  1. LISTENER =
  2.   (DESCRIPTION_LIST =
  3.     (DESCRIPTION =
  4.       (ADDRESS = (PROTOCOL = TCP)(HOST = dbhost.example.com)(PORT = 1521))
  5.     )
  6.   )
配置文件是在安装阶段自动配置生成的,同时也可以用EM进行重新配置

DB在启动时,会花上1分钟左右时间和listener进行注册。服务名,代表的DB,转发请求的目标都可以在 listener.ora 文件中进行配置。这些信息也可以进行动态注册,listener上面服务和DB的动态注册被称为 service registration. 它是由后台程序监控进程(PMON)执行的,每个instance都有对应的PMON进程。Dynamic service registration 不需要更改listener.ora配置文件。

可以通过以下命令来查看监听器的状态
lsnrctl status/start/stop
配置网络可以使用netca或者EM

2 客户端连接


客户端需要提供数据库的位置和名称等信息,以便连接到指定主机的指定数据库,一般来说有三种命名方法
1 简单连接命名(Easy Connect Naming)
2 连接描述(Connect Descriptors)
3 目录命名(Directory Naming)

简单连接命名这种方式相对比较原始,不需要进行任何前期配置工作,仅仅是把目标数据库的所有信息都罗列在一个字符串中,例如
"host[:port][/service_name][:server][/instance_name]"
其中
host 主机名或者IP
port 监听器的TCP端口号,默认1521
service_name 数据库服务名称
server 服务句柄类型,为dedicated, shared, 或者 pooled

连接命令为
sqlplus user/password@/

连接描述是在上个方法的基础上又进了一步,它把所有的信息都记录在一个位于ORACLE_HOME/network/admin的名为tnsnames.ora文件中,通过一个简单的名称来指明要连接的DB。它包含了一个协议和DB service name,一个DB可以定义有多个service name。 一般情况下,一个DB只有一个service name,就是global database name。例如
  1. MYDB =
  2.   (DESCRIPTION =
  3.     (ADDRESS = (PROTOCOL = TCP)(HOST = my-server)(PORT = 1521))
  4.     (CONNECT_DATA =
  5.       (SERVER = DEDICATED)
  6.       (SERVICE_NAME = myinctance)
  7.     )
  8.   )
其中的DESCRIPTION部分被称为connect descriptor,它使得客户可以连接到一个服务名为mydb.us.example.com的数据库

连接命令为
sqlplus system@MYDB
阅读(1828) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~