oracle监听配置介绍

一、配置文件

    Oracle Net配置文件都是文本形式的,可以通过netca或netmgr实用程序生成和修改,也可以使用文本编辑器生成和修改。

1) Oracle Net配置文件的路径

$ORACLE_HOME/network/admin/

2) 三个Oracle Net配置文件

①listener.ora在服务器端的配置文件
②tnsnames.ora在客户端的配置文件
③sqlnet.ora描述连接方式的配置文件

二、轻松连接方式(ezconnect)

优点:不需要网络配置文件的描述。缺点:登录不方便
连接方法:只要服务器端启动默认的监听器listener,并数据库打开(动态注册)
远程登录语法为:$Sqlplus 用户/密码@IP地址:端口号/服务名

   
示例:sqlplus scott/tiger@192.168.3.66:1521/vbox66in

三、动态注册

1)动态注册要点

①实例启动后,pmon每分钟自动将服务名(service_name)注册到监听器中,也可以通过alter system register命令通知pmon立刻注册
②系统有一个默认的监听器叫做LISTENER,端口号是1521,利用它可以不需要listener.ora配置文件
③动态注册要求实例至少启动到mounted状态,listener监听器才能注册成功

2)如果不想使用默认的listener监听器,可以自定义一个动态监听器。需要下面完成两步操作:

①在listener.ora配置文件描述自定义监听器。如:

(DESCRIPTION=
  (ADDRESS_LIST=
    (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.3.66)(PORT=1555))))

②更改local_listener参数

SQL> alter system set local_listener='(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.3.66)(PORT=1555))'

四、静态注册

1)静态注册要点

①静态注册必须在listener.ora中描述
②实例不必启动,静态监听器也能注册
③服务器启动静态监听后,可以通过远程启动数据库
④在一个listener.ora中可以配置多个静态监听,选择不同的端口

2)静态注册的描述分为两部分内容

①网络三要素:①Protocal ②Host ③Port
②服务名描述:GLOBAL_DBNAME:全局数据库名(静态注册特征)

3)listener.ora配置示例

LSN2 =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.88)(PORT = 1522))
 )
 )

SID_LIST_LSN2 =
(SID_LIST =
(SID_DESC =
    (GLOBAL_DBNAME=prod )
    (ORACLE_HOME = /u01/oracle)
    (SID_NAME =prod)
  )
 )            #注意后面的括号不要顶格写

4)客户端配置文件tnsnames.ora

① 可以描述登录多个服务器
② 示例

vbox8tds=
     (description=
       (address=(protocol=tcp)(host=192.168.3.66)(port=1521))
       (connect_data=
           (server=dedicated)
           (service_name=prod)   #SERVICE_NAME的值应和listener.ora中的GLOBAL_DBNAME一致
        )
      )
 

五、客户端连接到数据库的连接方式

客户端可以在tnsnames.ora中配置连接服务器的信息,其中SERVER可以选择共享连接模式(share)或者专用连接模式(dedicated),下面介绍2种模式的作用。

1)专用连接模式(dedicated)

oracle监听配置介绍

对于客户端的每个user process,服务器端都会出现一个server process,会话与专用服务器之间存在一对一的映射。专用连接的PGA的管理方式是私有的。Oracle缺省采用共享连接模式。

2)共享连接模式(shared)

oracle监听配置介绍

多个user process共享一个server process。
①,共享服务器实际上就是一种连接池机制(connection pooling),连接池可以重用已有的超时连接,服务于其它活动会话。但容易产生锁等待。
②所有调度进程(dispatcher)共享一个公共的请求队列(resquest queue),但是每个调度进程都有与自己响应的队列(response queue)。
③在共享服务器中会话的(UGA)存储信息是在SGA中的,而不像专用连接那样在PGA中存储信息,这时的PGA的存储结构为堆栈空间。

上一篇:安全专家教你如何利用Uber系统漏洞无限制的免费乘坐?


下一篇:通过文件系统(NFS)搭建RAC