Oracle经典技巧之RAC详解

1. 什么是Oracle RAC?

Oracle RAC (Real Application Clusters) 是 Oracle 数据库的一种高可用性及高可伸缩性的解决方案。RAC 可以使多台服务器共同访问同一组 Oracle 数据库文件(文件系统或 ASM),共享存储,并且可以通过网络连接共享多个节点共同访问同一组数据库块。这意味着,在使用RAC解决方案的情况下,如果其中一个节点出现硬件故障,服务可以继续运行,而不会影响用户数据的可用性。

1.1 RAC的主要功能

Oracle RAC 提供以下主要功能:

多节点共享

数据高可用性

线性可扩展性

透明的负载均衡

1.2 RAC的体系结构

Oracle RAC 采用共享存储,所有节点访问共享存储上的数据库文件,访问数据通过 Oracle Clusterware 控制的虚拟 IP 地址进行访问。每个节点都有自己的 Oracle 实例,每个节点上的实例都可以同时访问共享存储。Oracle Clusterware 提供集群管理服务,用于管理集群环境,并在失败发生时重新启动集群。

2. RAC的优缺点

2.1 优点

数据可用性更高:系统能够在节点出现故障时继续提供服务,完全透明。

线性可扩展:可以通过添加节点来提高集群的处理能力。

负载均衡:通过 Oracle 自带的连接池功能来实现负载均衡。

2.2 缺点

维护成本较高:需要更多的硬件和软件成本,并且需要更多的管理员来维护。

性能问题:由于一些锁定和共享资源争用,可能出现性能问题。

3. 如何配置Oracle RAC?

3.1 环境准备

在开始配置 Oracle RAC 之前,需要先准备好以下硬件和软件环境:

至少两个 Oracle 节点

共享存储设备(文件系统或 ASM)

Oracle Clusterware 软件

Oracle Grid Infrastructure 软件

Oracle Database 软件

3.2 RAC 安装步骤

以 CentOS 7 为例,以下是 RAC 安装的基本步骤:

3.2.1 安装Oracle Clusterware

# 解压 Oracle Clusterware 文件

unzip linux.x64_11gR2_clusterware.zip

# 进入解压后的目录

cd clusterware/

# 运行安装程序,指定安装类型为“Enterprise Edition”

./runInstaller -silent -ignoreSysPrereqs -responseFile /vagrant/response/clusterware_install.rsp \

oracle.install.option=CRS \

ORACLE_HOSTNAME=racnode1 \

INVENTORY_LOCATION=/u01/app/oraInventory \

SELECTED_LANGUAGES=en,zh_CN \

oracle.install.asm.OSDBA=asmdba \

oracle.install.asm.OSASM=asmadmin \

oracle.install.crs.config.scanType=LOCAL_SCAN \

oracle.install.crs.config.gpnp.scanName=rac-scan \

oracle.install.crs.config.gpnp.scanPort=1521 \

oracle.install.crs.config.autoConfigureClusterNodeVIP=ture \

oracle.install.asm.storageOption=ASM \

oracle.install.asm.diskGroup.name=DATA \

oracle.install.asm.diskGroup.redundancy=EXTERNAL \

oracle.install.asm.diskGroup.disks=/dev/sdb,/dev/sdc \

oracle.install.asm.diskGroup.diskDiscoveryString=/dev/oracleasm/* \

oracle.install.asm.monitorPassword=oracle \

oracle.install.crs.rootconfig.executeRootScripts=true \

oracle.install.crs.config.useIPMI=false \

oracle.install.crs.config.ignoreDownNodes=false \

oracle.install.crs.config.autoRestart=false \

oracle.install.config.managementOption=NONE

# 继续安装过程中会弹出一些配置向导,根据向导填写信息即可。安装过程中可能需要root用户密码等信息。

3.2.2 安装 Oracle Grid Infrastructure

# 进入 Oracle Grid Infrastructure 软件目录

cd /u01/oracle/app/grid/product/11.2.0/grid

# 运行安装程序,指定安装类型为“Enterprise Edition”

./runInstaller -silent -ignoreSysPrereqs -responseFile /u01/oracle/response/grid_install.rsp -waitForCompletion \

oracle.install.option=INSTALL_DB_SWONLY \

ORACLE_HOSTNAME=racnode1 \

INVENTORY_LOCATION=/u01/app/oraInventory \

SELECTED_LANGUAGES=en,zh_CN \

oracle.install.asm.OSDBA=asmdba \

oracle.install.asm.OSASM=asmadmin \

oracle.install.asm.storageOption=ASM \

oracle.install.asm.diskGroup.name=DATA \

oracle.install.asm.diskGroup.redundancy=EXTERNAL \

oracle.install.asm.diskGroup.disks=/dev/sdb,/dev/sdc \

oracle.install.asm.diskGroup.diskDiscoveryString=/dev/oracleasm/* \

oracle.install.asm.monitorPassword=oracle \

oracle.install.config.managementOption=NONE \

oracle.install.crs.rootconfig.executeRootScripts=true \

oracle.install.config.managementOption=NONE

3.2.3 安装 Oracle Database

# 解压 Oracle Database 软件

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

# 进入解压后的目录

cd database/

# 运行安装程序,指定安装类型为“Enterprise Edition”

./runInstaller -silent -ignoreSysPrereqs -responseFile /u01/oracle/response/db_install.rsp -waitForCompletion \

oracle.install.option=INSTALL_DB_SWONLY \

UNIX_GROUP_NAME=oinstall \

INVENTORY_LOCATION=/u01/app/oraInventory \

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1 \

s_install.db.InstallEdition=EE \

oracle.install.db.DBA_GROUP=dba \

oracle.install.db.OPER_GROUP=dba \

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE \

oracle.install.db.config.starterdb.globalDBName=DB11G \

oracle.install.db.config.starterdb.SID=DB11G \

oracle.install.db.config.starterdb.characterSet=AL32UTF8 \

oracle.install.db.config.starterdb.InitParams.file="/u01/oracle/response/initDB11.sql"

完成以上步骤后,RAC 配置完成。

4. 总结

Oracle RAC 是 Oracle 数据库的高可用性和高可伸缩性解决方案,其体系结构采用共享存储和多节点共享的方式。RAC 的部署安装相对复杂,需要仔细设置和配置各项参数和环境,但一旦成功部署,可以提供更高的数据可用性和更强的性能扩展能力。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

数据库标签