Oracle RAC必备知识点整理


数据库规划要从业务特性和需求为导向,不要为了RAC的可用性而上RAC,实际上RAC也不是万能的,需要如下知识点需要掌握。

1.使用RAC的好处

1.1 提升应用系统性能,提高数据库事务处理能力

在单台主机资源或者单实例数据库的事务处理能力受到瓶颈时,使用RAC能极大提高并发能力。

主机的资源使用率不是简单的求和。比如在2个节点的RAC环境中,每个节点的CPU使用率为50%,如果所有资源转移到单个节点,其使用率不会等于100%,可能70%。所以资源的使用很大程度上在于交互成本。

当交互成本过大时,其处理效率会极大的降低。

1.2提高数据库高可用性,尤其是双活的架构下。其好处如下:

同城本地服务器和同城异地服务器之间的无需任何切换,实现极为稳定可预期的秒级失败业务切换。

业务连接的后台数据中心,是同城双活中心,任一站点的故障,业务不受到影响,这大大提高了业务的响应能力,也大大增加了检修等日常运维管理时间。

3.RAC的选型考虑

全表扫描情况是不是很多?

索引争用厉不厉害?

高水位争用厉不厉害?

sequence争用厉不厉害?

正版授权、安装、运维费用是否在预算范围内?

4.RAC的副作用

资源争用成本会成倍放大,负载均衡下尤其严重

代码访问深度变深,带来的bug,数据库的整体稳定性甚至不如单节点

节点之间SQL执行计划不一致

心跳网络的故障率很高

各个版本之间的差异化

对维护人员的技能经验要求较高

如果在单实例中数据块争用比较厉害,那么迁移到RAC之后就会是一场灾难,性能可能会更加恶化。在这种情形下,多买了一台小机,只实现了HA的功能,但付出的是性能下降。得不偿失!

其中一个实例hang住时,RAC的可用性得不到保障

5.安装时

全面检查操作系统补丁情况,建议安装最新的数据库补丁

心跳网络使用双网卡绑定

主机的操作系统版本要求一致,配置最好一致

部署主机资源监控脚本,如部署OSW

做好各项暴力测试,如CRS/主机启动测试,插拔网线测试

预防性的设置好各类参数,如Oracle的DRM参数

 

6.运维时

应用端做针对RAC特性调整,建议业务分节点运行

死锁可能在多个节点发生

不要将数据文件增加到本地硬盘上

先关数据库,再关CRS软件,最后关主机

单机转成RAC之后,适当加大buffer cache和shared pool的大小

开启并行要慎重,程序不要跨节点并行运行

容易忽略的数据库参数

Oracle RAC必备知识点整理

7.学习RAC的几点建议

具备操作系统的相关知识,熟悉vmware或Oracle vbox基本操作

安装、升级,且反复安装、升级

阅读官方文档,知道“有什么”,“怎么做”,再查其他文档

在实验环境中操作,尤其需要操作以下内容:

CRS的资源管理

ASM磁盘、磁盘组的添加删除操作

OCR/VOTING DISK的备份、恢复、镜像、删除操作

VIP/PUBLIC IP/HAIP/PRIVATE IP更改操作

学会查看CRS日志文件

要学会查看gv$视图

了解业务特性,尤其需要知道哪张表在哪个节点访问频率最高

熟悉CRS日志存放位置

相关内容