构建高可用性oracle集群_第1页
构建高可用性oracle集群_第2页
构建高可用性oracle集群_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、构建高可用性 oracle 集群随着 IT 以及 IT 相关服务在企业里应用的越来越广泛, 现代化企业也越来越依赖于他们 所采用的 IT 架构。如果一个关键应用的数据库不可用,不但直接影响到企业业务运行,而 且会使企业面临数据丢失的危险。 因此, 构建一个具有高可用性的数据库平台对于一个现代 化企业来讲至关重要。所谓数据库的高可用性是指, 提供近乎连续的数据访问, 将硬件和软件组件故障产生的 中断降低到最少。 实现数据库的高可用性需要综合可虑, 涉及到 IT 架构的诸多方面, 包括: 网络、存储、服务器、数据库软件、 备份系统等。 Oracle 作为被广泛使用的一种数据库系统, 在实现数据库高

2、可用方面有很多优点,本文着重讨论oracle 数据库高可用性的实现方式。在设计数据库高可用性之前, 首先需要分析可能造成数据库系统不可用的原因, 这样才 能采取相应的办法避免因这些原因导致的数据库故障。数据库系统停机通常包含计划停机和意外停机两种。计划停机通常是在有计划的情况下对数据库系统或相应硬件进行维护升级, 只要事先做好详细计划, 计划停机通常是可以控制并减少的。 在这方面 oracle 提供了联机修 改系统配置、 联机升级等功能, 可以有效的减少计划停机的时间。 我们重点需要考虑的是非 计划停机, 这类停机通常是由于计算机故障或者数据故障引起的, 相对于计划停机, 这类故 障引起的数据

3、库停机危害更大,影响也最严重,因此需要我们重点关注。运行数据库的服务器意外故障导致服务中断, 这是一种最并常见的故障, 大多数情况是 由于硬件故障造成。 Oracle RAC(Real Application Clusters) 架构可以有效地防止这类故障的发 生。Oracle RAC是首要的数据库集群技术,在RAC环境中Oracle运行于两个或者更多的计算机节点上, 并可以同时访问一个共享数据库。 这使得一个数据库系统可以跨越多个硬件系 统平台, 同时对应用程序而言仍是一个统一的数据库系统, 从而为各中应用程序的可用性提 供了极大的优势。下面以 AIX 操作系统下,讨论 Oracle RAC

4、 的实现方式。对于一个两节点的群集,下面是推荐的最小软硬和操作系统要求。(图一)所示的是实现两节点 ORACLE RAC 集群比较典型的硬件连接方式。眼务器服务器图一两节点Oracle RAC典型硬件连接方式 IBM服务器 -两个可以运行5L 64位的IBM服务器每个服务器必须有至少512M内存,至少1G交换分区或两倍于物理内存或更多。要确定使用的系统内存:$ /usr/sbi n/lsattr -E -l sysO -a realmem要确定使用的交换分区:$ /usr/sb in/lsps -a需要64位的处理器。共享的磁盘阵列和 2台存储交换机。IBM HACMP 所需要的交换机端口和I

5、P地址。 IBM AIX 5.1 (5L)和 Oracle服务器企业版HACMP及RAC可能需要的各种补丁在安装IBM AIX 操作系统环境和 HACMP软件之前,应结合Oracle RAC的要求对磁盘 阵列做一个规划,下表列出了Oracle RAC的基本磁盘空间要求:需求空间要求位置辅助Oracle 文件在两个节点上都需要100MB任意的本地系统驱动器临时空间在两个节点上都需要50MB任意的本地系统驱动器集群就绪服务软件在两个节点上都需要500MB任意的本地系统驱动器但在两个节点上名称必须相同数据库软件在两个节点上都需要1GB任意的本地系统驱动器但两个节点上 名称必须相同数据库文件7 GB共

6、享磁盘阵列实例1实例2SPFILE、SRVCTL图二Oracle RAC磁盘配置如果没有使用 GPFS,那么RAC需要每个实例可以访问一个共享磁盘系统上的一系列未格式化的设备。这些共享磁盘也被称为裸设备,如果系统平台支持Oracle认证的群集文件系统,那么可以直接保存RAC需要的文件到群集文件系统里。如果使用GPFS,那么也可以直接保存RAC需要的文件到群集文件系统里。RAC配置中的Oracle实例把数据写入到裸设备, 更新控制文件,服务器参数文件,每个 数据文件和每个重做日志文件,群集中的所有实例共享这些文件。RAC配置中的Oracle实例把信息写到以下定义的裸设备:控制文件spfile.o

7、ra每个数据文件每个联机重做日志文件Server Manager (SRVM)配置信息所以有必要为每个文件类别定义裸设备,AIX操作系统和IBM HACMP集群的安装配置可以参考IBM相关手册,在配置时候除了提前做好磁盘规划外,还需要注意网络接口名称的限制:名称是区别大小写的名称不能包含任何多字节语言字符公共和专用网络接口名称必须不同两个节点上的各个接口的名称必须相同公共和专用 IP 地址必须位于不同的子网RAC 群集安装过程包括四个主要阶段。 配置共享磁盘和 UNIX 预安装任务。 运行 OUI 安装 Oracle Enterprise Edition 和 RAC 软件。 创建和配置数据库。

8、管理 RAC 实例阶段一:配置共享磁盘和 UNIX 预安装任务在运行 Oracle Universal Installer 的节点上, 创建一个 ASCII 文件来标识裸卷对象, DBCA 在安装和创建数据库中,需要这些裸卷对象存在。使用如下格式命名裸卷对象:database_object=raw_device_file_path 须通过设置下面的环境变量来指定 Oracle 使用此文件来决定裸设备卷,其中 filename 就是 上面创建的 ASCII 文件:DBCA_RAW_CONFIG=filename; export DBCA_RAW_CONFIG在 UNIX 预安装时,可以运行 No

9、te:189256.1 里提供的 installPrep.sh 脚本,处理很多的 UNIX 环境问题。然后用 root 用户执行下面的工作:在集群所有节点上添加 Oracle 用户和 dba 组,同时建一个 oinstall 组,作为软件属主 的 primary 组,使用 oinstall 是可选的,但推荐使用。查看 /etc/groups 文件典型的条目看 起来如下:dba:101:oracle oinstall:102:root,oracle在每个节点上创建一个挂载点目录,作为 Oracle 软件目录的最上层,使得在每个节点 上的挂载点名称是唯一的,并和第一个节点相同。 oracle 账号

10、对此挂载点有读,写和执 行权限。从运行 Oracle Universal Installer 的节点上,建立用户信任,通过添加条目到 oracle 账 号的 .rhosts 或 /etc/hosts.equiv 文件里。用 oracle 账号检测信任关系。建立系统环境变量:设置至少有 20Mb 空间的临时目录 TMPDIR ,并且 OUI 有写权限。验证存在 /opt/SUNWcluster/bin/lkmgr 文件,被 OUI 使用以指明此安装在一个群集上 执行。阶段二:使用 OUI 安装 RAC使用 Oracle Universal Installer 来安装 Oracle 企业版和 Re

11、al Application Clusters 软件, 在光盘加载点, 或从磁盘安装时, 从 Disk1 位置, 执行 rootpre.sh 脚本,# /rootpre.sh以 oracle 用户登录,并运行 runInstaller 。$ /runInstaller 根据提示选择需要安装的产品等, 当最后选择了 Install 之后, OUI 将安装 Oracle RAC 软件到本地节点,然后拷贝软件到前面选择的其它节点,这将花费一些时间,在安装过 程中, OUI 不会显示信息,表明组件正被安装到其它节点 I/O 活动可能是唯一表明过 程正在继续。阶段三:使用 ODCA 创建一个 RAC 数

12、据库用 DBCA 命令创建一个数据库, DBCA 使用优化的结构来创建数据库,这意味DBCA创建数据库文件,包括默认的服务器参数文件,使用标准文件命名和文件位置,DBCA的主要步骤为:验证是否为每个表空间正确配置了共享磁盘(针对非群集文件系统)创建数据库配置 Oracle 网络服务 启动数据库实例和监听DBCA 可以作为安装过程的一部分自动启动,也可以通过从 $ORACLE_HOME/bin 目录 执行 dbca 命令来手动运行。在此过程中需要选择需要配置 rac 的节点,确定 GlobalDatabase Name 和 Oracle System Identifier (SID)。SID 被

13、用于唯一标识一个实例, 在 RAC 环境里,指定的 SID 被作用实例号的一个前缀,例如: MYDB, 将用 MYDB1, MYDB2 作为实例1和实例2。在dbca的交互过程中可以确定数据库选项( Database Options), 设定数据库初始化参数,完成数据库存储设定,在数据库存储设定时可以直接导入在阶 段一编辑的,由环境变量 DBCA_RAW_CONFIG 指定配置文件。在确认所有建库的选项 正确之后即可点击确定开始创建数据库了。阶段四:管理 RAC 实例可以使用 SRVCTL 来管理 RAC 数据库环境, 在使用 SRVCTL 之前需要启动 Global Services Dae

14、mon (GSD) 进程。 首次创建 RAC 集群后, 需要初始化 clusterwide SRVM 配 置。首先,创建或编辑 /var/opt/oracle/srvConfig.loc 文件,并添加 srvconfig_loc=path_name 条目,其中 path_name 是一个小的群集共享的裸卷,需要在配置磁盘阵列时提前创建, 例如:$ vi /var/opt/oracle/srvConfig.loc srvconfig_loc=/dev/rrac_srvconfig_100m 然后,执行如下命令来初始化此裸卷,此时需要停止 gsd 进程。$ srvconfig -init第一次使用

15、 SRVCTL 工具来创建配置时, 在所有节点上启动 Global Services Daemon (GSD) ,使得 SRVCTL 能够访问的群集信息,然后执行 srvctl 添加命令,使得 Real Application Clusters 知道哪些实例属于群集,语法如下:$ gsdctl startSuccessfully started the daemon on the local node.$ srvctl add database -d db_name -o oracle_home -m domain_name -s spfile然后为每个实例输入命令: $ srvctl add

16、 instance -d db_name -i sid -n node完成上述配置后就可以在日常工作中使用 svrctl 命令来管理 RAC 集群了。结束语: oracle 的高可用性除了完成 RAC 集群的配置外,还包含很多其它方面的因素,例 如网络因素,人外因素造成的数据错误,数据备份等。就oracle本身来说,在实现rac集群后应该继续完成 rman 的配置,配合可靠的离线备份系统进一步提高数据库的容错能力。参考手册Note: 201019.1 - AIX: Quick Start Guide - Note: 77346.1 - Overview of HACMP Classic and / or HACMP/ESNote:137288.1 - Database Creation in Oracle9i RACNote:183408.1 - Raw Devices and Cluster Filesystems With Real Application ClustersRAC/IBM AIX certificatio n matrixOracle9i Real Applicati on Clusters

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论