rac之SCAN

简介:

数据库的初始化参数remote_listener默认被设置为SCAN Listener,目的是为了让SCAN Listener可以监听所有的实例,记录所有实例的压力,以便于按照负载均衡的方式来转发客户端的请求。


客户端如何通过SCAN访问数据库
------------------------------------------------------
客户端发出连接数据库的请求,DNS将SCAN解析出对应的3个SCAN IP并返回给客户端,
客户端随机的选择其中一个SCAN IP地址,然后客户端通过这个SCAN IP访问对应的节点,当对应节点的SCAN Listener接受到请求后,SCAN Listener会选择压力最小的数据库实例,然后压力最小的数据库实例对应的local listener的地址将会返回给客户端,最终这个local listener为客户端请求建立与数据库的连接。


客户端tnsnames.ora的配置
-------------------------------------------
RAC =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-cluster-scan)(PORT = 1521))
  (CONNECT_DATA =
     (SERVER = DEDICATED)
     (SERVICE_NAME = rac)
  ) )

客户端的连接方式:
$ sqlplsu <username>/<password>@RAC


EZconnet的连接仍然适用于SCAN
$ sqlplus <username>/<password>@rac-cluster-scan:1521/rac

常用命令
-----------------------
1. 查看SCAN配置信息
$ srvctl config scan
SCAN name: rac-cluster-scan, Network: 1/192.168.1.0/255.255.255.0/
SCAN VIP name: scan1, IP: /rac-cluster-scan/192.168.1.12
SCAN VIP name: scan2, IP: /rac-cluster-scan/192.168.1.13
SCAN VIP name: scan3, IP: /rac-cluster-scan/192.168.1.14


2. 查看SCAN Listener配置信息
$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1521


3. 查看SCAN的状态
$ srvctl status scan


4. 查看SCAN listener的状态
$ srvctl status scan_listener














本文转自东方之子736651CTO博客,原文链接:http://blog.51cto.com/ecloud/1710925 ,如需转载请自行联系原作者

相关文章
|
网络协议 Oracle 关系型数据库
Oracle rac 修改SCAN IP
Oracle rac 修改SCAN IP
751 0
|
负载均衡 网络协议 Oracle
Oracle 11g R2 RAC高可用连接特性 – SCAN详解1
<p style="line-height:1.5em; font-family:'Lucida Grande','Lucida Sans Unicode',Verdana,Arial,sans-serif; font-size:1em; margin-top:1.2em; margin-bottom:1.2em"> 昨天帮朋友解决11g RAC SCAN问题,当时为这朋友简单解答了一些
2258 0
|
网络协议 Linux
|
网络协议 Oracle 关系型数据库
|
网络协议 Oracle 关系型数据库
|
负载均衡 网络协议 Oracle
|
网络协议 Oracle 关系型数据库