扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
文章摘要:本文详细介绍了RAC负载均衡配置的代码内容,主要是针对客户端的。那么我们首先要了解当前数据库版本和其他信息然后才能进行设置。
熟悉Oracle数据库的朋友们应该都清楚RAC的负载均衡分为两种。那么现在,我们针对其中一种——客户端RAC负载均衡配置进行一个全面具体的介绍。文中包含了主要的配置代码,希望通过介绍,能让大家清楚配置过程。稍后我们还会介绍RAC服务器负载均衡配置。
负载均衡是指连接的负载均衡?RAC的负载均衡主要是指新会话连接到RAC数据库时,如何判定这个新的连接要连到哪个节点进行工作?在RAC中,负载均衡分为两种,一种是基于客户端连接的,另外一种是基于服务器端的?
客户端RAC负载均衡配置
1?当前服务器中的数据库版本如下:
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
2?在客户端的tnsnames.ora的配置中,只要连接的是整个数据库的服务名,不是实例名?
在服务器端查看RAC数据库的service_names:
SQL> show parameter service_names
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names string RACDB.chenxu.yo2.cn
SQL>
编辑推荐
负载均衡技术基础专题
当前,无论在企业网、园区网还是在广域网上,即使按照当时最优配置建设的网络,业务量的发展都超出了过去..
文章摘要:本文详细介绍了RAC负载均衡配置的代码内容,主要是针对客户端的。那么我们首先要了解当前数据库版本和其他信息然后才能进行设置。
3?在客户端配置TNS:
客户端RAC负载均衡配置相对简单,只需要在tnsnames.ora中添加LOAD_BALANCE=ON这么一个选项即可?
RACDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.170)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.171)(PORT = 1521))
(LOAD_BALANCE = on)
)
(CONNECT_DATA =
(SERVICE_NAME = racdb.chenxu.yo2.cn)
)
)
配置TNS中的HOST值是服务器端RAC配置中的虚拟IP即VIP,如下:
[root@NODE01 admin]# more /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
192.168.1.180 node01
192.168.1.181 node02
192.168.1.170 vip01
192.168.1.171 vip02
10.10.10.1 priv01
10.10.10.2 priv02
4?在客户端测试:
开启sqlplus_1:
SQL> conn sys/chenxu@racdb as sysdba
已连接?
SQL>
SQL> show parameter instance_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string RACDB2
SQL>
SQL> select instance_name from gv$instance;
INSTANCE_NAME
----------------
RACDB1
RACDB2
编辑推荐
负载均衡技术基础专题
当前,无论在企业网、园区网还是在广域网上,即使按照当时最优配置建设的网络,业务量的发展都超出了过去..
开启sqlplus_2:
SQL> conn sys/chenxu@racdb as sysdba
已连接?
SQL> show parameter instance_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string RACDB1
开启sqlplus_3:
SQL> conn sys/chenxu@racdb as sysdba
已连接?
SQL>
SQL> show parameter instance_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string RACDB2
开启sqlplus_4:
SQL> conn sys/chenxu@racdb as sysdba
已连接?
SQL> show parameter instance_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string RACDB1
5?总结
这样当客户端连接RAC数据库时,会随机在TNS里面挑个监听地址进行连接?在Oracle 10g以前,假如有节点宕机或者类似事故时,客户端可能还是选择连接到这个节点,这样会发生较长时间的TCP等待超时?而在10g以后,由于VIP和FAN的引入,这样的情况可以得到很大程度的改善?客户端RAC负载均衡配置是相对简单的,客户端负载均衡在通常情况下能够较好地工作,但是由于连接是在客户端随机发起的,这样客户端并不知道RAC各节点的负荷及连接数情况,有可能负荷大的节点还会源源不断地增加新的连接,导致RAC节点无法均衡工作?
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者