Oracle RAC服务器端的负载均衡是根据RAC中各节点的连接负荷数情况,将新的连接请求分配到负荷最小的节点上去。当数据库处于运行时,RAC中各节点的PMON进程每3秒会将各自节点的连接负荷数更新到service_register。而对于节点中任意监听器故障或监听器意外失败时,PMON进程会每1秒钟检查当前节点上的监听是否重启,以获得最新的负载信息来及时调整负载均衡。本文主要演示SUSE 10 + oracle 10g rac下的服务器端的负载均衡。
有关客户端的负载均衡可参考
一、服务器端负载均衡配置
1、为tnsnames.ora 添加相应的网络服务名(每个节点配置)
oracle@bo2dbp:~> more $ORACLE_HOME/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/oracle/db/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
remote_lsnr_gobo4 =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.61)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.62)(PORT = 1521))
)
local_lsnr_gobo4a =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.61)(PORT = 1521))
)
local_lsnr_gobo4b =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.62)(PORT = 1521))
)
2、设置remote_listener参数
alter system set remote_listener='<net_service_name>' scope=both sid='*';
SQL> show parameter instance_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string GOBO4A
SQL> show parameter listener
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener string
remote_listener string
SQL> alter system set remote_listener='remote_lsnr_gobo4' scope=both sid='*';
System altered.
3、配置客户端tnsnames.ora
-->客户端为suse 10
SZDB:~ # ifconfig eth1 | grep "inet addr"|cut -d " " -f12|cut -d : -f2 #--客户端主机的ip
192.168.7.2
SZDB:~ # su - oracle
oracle@SZDB:~> tail -10 $ORACLE_HOME/network/admin/tnsnames.ora
GOBO4 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.61)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.62)(PORT = 1521))
(LOAD_BALANCE = off) #--由于仅仅测试寄予服务器端的负载均衡,因此关闭客户端负载均衡选项
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = GOBO4)
)
)
#Author : Robinson Cheng
#Blog : http://blog.csdn.net/robinson_0612
4、检查监听情况
oracle@bo2dbp:~> lsnrctl status
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.7.61)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.7.51)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM1", status BLOCKED, has 1 handler(s) for this service...
Service "GOBO4" has 2 instance(s).
Instance "GOBO4A", status READY, has 2 handler(s) for this service...
Instance "GOBO4B", status READY, has 1 handler(s) for this service..
.......
oracle@bo2dbs:~> lsnrctl status
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.7.62)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.7.52)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service...
Service "GOBO4" has 2 instance(s).
Instance "GOBO4A", status READY, has 1 handler(s) for this service...
Instance "GOBO4B", status READY, has 2 handler(s) for this service...
..........
#--如果监听或数据库需要重启异常请考虑重新启动监听器或数据库
#--下面清空监听日志以便于后续统计连接信息
oracle@bo2dbp:/u01/oracle/db/network/log> cat /dev/null>listener_bo2dbp.log
oracle@bo2dbs:/u01/oracle/db/network/log> cat /dev/null>listener_bo2dbs.log
- 大小: 47.4 KB
分享到:
相关推荐
文章首先介绍了连接负载均衡的概念和分类,包括连接负载均衡和运行时负载均衡,然后详细探讨了连接负载均衡的实现方式,包括客户端连接负载均衡和服务器端连接负载均衡。 关键词:连接负载均衡、负载均衡公告、运行...
【Oracle RAC服务器端负载均衡配置详解】 Oracle Real Application Clusters (RAC) 是Oracle数据库的一个重要特性,它允许多台物理服务器共享同一数据库,从而提高系统的可用性和性能。RAC通过负载均衡来确保资源的...
- **服务器端负载均衡**:服务器端的负载均衡依赖于监听器(Listener)和后台进程pmon。pmon不断收集系统负载信息,并将其更新到监听器中。如果配置了`Remote_listener`参数,这些信息还会被注册到其他实例的监听器...
除了客户端负载均衡外,Oracle RAC还支持服务器端负载均衡。这意味着根据节点的当前负载,数据库实例可以将连接重定向到较轻负载的节点。这通常通过Global Resource Directory (GRD) 和 Cluster Database Services ...
二、服务器端负载均衡的配置 在服务器端,需要配置服务名和虚拟 IP。可以使用以下命令查看当前服务器中的数据库版本: SQL> select * from v$version; 可以看到当前服务器中的数据库版本为 Oracle 10g。 然后,...
在这样的环境下,配置WebLogic连接Oracle RAC数据源是一项关键任务,它确保了应用能够透明地访问RAC集群中的任何节点,实现高可用性和负载均衡。 首先,理解Oracle RAC的工作原理至关重要。RAC允许多个实例同时访问...
服务器端负载均衡则由数据库本身控制,根据节点的当前负载情况动态地将新会话转发到负载较轻的节点。这通常通过Global Load Balancing Agents(GLBA)或Oracle Network Load Balancer(NLB)实现。配置涉及服务注册...
2. **服务器端负载均衡(Server-Side Load Balancing)** 服务器端负载均衡更智能,依赖于监听器(Listener)收集的负载信息。PMON进程会定期更新负载数据到监听器,使得监听器能根据负载状况动态地将新的连接分配...
客户端负载均衡发生在客户端连接数据库时,通过TNSNAMES.ORA配置文件中的LOAD_BALANCE参数,客户端可以将连接请求发送到多个地址,Oracle会自动选择当前负载较低的节点进行连接。例如,配置一个包含三个VIP(Virtual...
### Oracle RAC数据库Load Balance问题解析 #### 概述 Oracle Real Application Clusters (RAC) 是一种集群数据库解决方案,旨在提高应用程序的可用性和可扩展性。为了确保资源的高效利用,RAC 集群通常采用负载...
在Oracle客户端配置文件中,需定义连接到Oracle RAC集群的监听器参数。具体而言,应编辑`tnsnames.ora`文件,添加以下内容: ```plaintext LR = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)...
服务器端负载均衡则涉及到RAC实例间的资源分配和会话移动。当某个实例的负载过高时,RAC会自动将新的会话转移到其他较轻负载的实例上。这部分通常由Grid Infrastructure的资源管理器(ResourceManager)和数据库的...
配置 Oracle RAC 集群数据源需要考虑多个方面,包括数据源 URL 的配置、连接池的配置、负载均衡和故障转移、服务器配置和集群配置等。正确地配置 Oracle RAC 集群数据源可以提高系统的性能和可用性。
- **负载均衡集群 (Load Balance, LB)**:通过在服务器集群中均匀分配负载来提高响应速度和服务质量,适用于需要处理大量用户请求的场景。 - **高可用性集群 (High Availability, HA)**:旨在确保服务的连续性和稳定...
Oracle Real Application Clusters (RAC) 是一种集群数据库解决方案,旨在提供高可用性和负载均衡功能。其中,高可用性的一个核心组成部分是 Failover(故障转移)机制。Oracle RAC 的 Failover 能力确保即使集群中...
3. **负载均衡**:通过设置 `LOAD_BALANCE=yes`,可以实现客户端请求在多个实例之间的自动分发,从而提高系统响应速度和资源利用率。 4. **故障转移**:在 RAC 环境中,如果一个实例出现故障,其他实例可以接管其...
【Oracle RAC数据库集群系统】是Oracle公司提供的一种高可用性、高性能的数据库解决方案,它允许多台服务器(节点)共享同一数据库,从而构建出一个集群环境。在Oracle RAC中,每个节点运行一个数据库实例,所有实例...
客户端测试部分则涵盖了配置客户端、体验故障切换(Failover)和负载均衡(LoadBalance),以及修改归档模式等内容。 #### 第2章 集群、RAC和MAA 本章定义了集群的概念,并探讨了其关键特性和核心能力,如可扩展性...
Load Balance 测试用于确保 RAC 能够均匀地分配负载到各个节点上,提高性能。测试方法包括: 1. 使用工具或脚本来模拟并发连接和查询。 2. 监控各个节点的负载情况,确保负载均衡。 #### 五、安装后的情况处理 **...
TAF 可以配置为基于客户端的 TNS 连接字符串或服务器端的服务。当两者都存在时,默认使用服务器端的服务配置。例如,一个包含 TAF 的 TNS 连接字符串可能如下所示: ```plaintext NEWSDB= (DESCRIPTION= (ADDRESS=...