说起Oracle的监听你能想到什么?
不清楚?没用过?
对于一般的开发人来说,监听是其可回避的内容,他们只需要知道连接哪个IP,哪个库就行了。
但对于数据库管理来说,监听是必须要熟练掌握的。
首先说说监听的作用。
监听是连接客户端与服务端的纽带,监听负责建立两者之间的关系。
监听负责给客户端分配服务进程和内存(PGA)。
建立后,客户端与服务端进行通讯,监听就退出了。
举个例子:你去医院,前台导诊根据你的情况领你进了某科室,并指定了一个名医生。
你与医生开始进行病情的交流后,导诊就退出了。
在这里,你就是客户端,医生是服务端,导诊就是监听。
从这里可以看出,当客户端与服务单连接后,及时监听出问题,也不会影响已有的连接。
但会对新的连接有影响。
以下几个问题:
1、一台机器是否可以有多个监听,如果可以,各个监听如何区分?
2、一个实例是否可以在多个监听上进行注册?
3、一个监听是否可以注册多个实例?
4、动态监听、静态监听是什么?
1、一个机器上可以有多个监听,用端口来区分。默认监听的端口是1521。
2、一个实例可以在多个监听上进行注册。
3、一个监听可以注册多个实例
4、动态、静态监听是指实例注册到监听的方式,不是监听本身的属性。
也就是说实例可以同时有动态监听、静态监听注册到同一个监听上。
甚至一个实例可以同时动态、静态注册到同一个监听上。
对于一个实例来说,仅有一个动态注册,和多个静态注册。
下面微文将结合实验,对监听进行进一步的介绍。