《Oracle 11G R2 RAC安装手册》由会员分享,可在线阅读,更多相关《Oracle 11G R2 RAC安装手册(50页珍藏版)》请在金锄头文库上搜索。
1、Oracle 11G R2 RAC安装手册一、 基础知识1. RAC是什么RAC,全称real application clusters,译为“实时应用集群”,是Oracle新版数据库中采用的一项新技术,是高可用性的一种,也是Oracle数据库支持网格计算环境的核心技术。2. RAC的优缺点l 优点Oracle RAC支持Oracle9i、10g、11g版本,可以支持24 x 7 有效的数据库应用系统,在低成本服务器上构建高可用性数据库系统,并且自由部署应用,无需修改代码。在Oracle RAC环境下,Oracle集成提供了集群软件和存储管理软件,为用户降低了应用成本。当应用规模需要扩充时,用
2、户可以按需扩展系统,以保证系统的性能。(1) 多节点负载均衡; (2) 提供高可用:故障容错和无缝切换功能,将硬件和软件错误造成的影响最小化; (3) 通过并行执行技术提高事务响应时间-通常用于数据分析系统; (4) 通过横向扩展提高每秒交易数和连接数-通常对于联机事务系统; (5) 节约硬件成本,可以用多个廉价PC服务器代替昂贵的小型机或大型机,同时节约相应维护成本; (6) 可扩展性好,可以方便添加删除节点,扩展硬件资源。l 缺点(1) 相对单机,管理更复杂,要求更高; (2) 可能会增加软件成本3. Oracle RAC原理在一个应用环境当中,所有的服务器使用和管理同一个数据库,目的是为
3、了分散每一台服务器的工作量,硬件上至少需要两台以上的服务器,而且还需要一个共享存储设备。同时所有服务器上的OS都应该是同一类OS,根据负载均衡的配置策略,当一个客户端发送请求到某一台服务的listener后,这台服务器根据我们的负载均衡策略,会把请求发送给本机的RAC组件处理也可能会发送给另外一台服务器的RAC组件处理,处理完请求后,RAC会通过集群软件来访问共享存储设备.逻辑结构上看:l 每一个参加集群的节点有一个独立的instance,这些instance访问同一个数据库。l 每一个节点的linstance都有自己的SGA。l 每一个节点的linstance都有自己的background
4、process。l 每一个节点的linstance都有自己的redo logs。l 每一个节点的instance都有自己的undo表空间。l 所有节点都共享一份datafiles和controlfiles。三类Resource:l VIP - 虚拟IP地址(Virtual IP) l OCR - Oracle Cluster Registry(集群注册文件),记录每个节点的相关信息l Voting Disk,仲裁机制用于仲裁多个节点向共享节点同时写的行为,这样 做是为了避免发生冲突。二、 RAC环境设计1. 服务器配置操作系统主机名内存网卡Redhat Enterprise Linux 5.4
5、rac12Geth0(Public)eth1(Prive)Redhat Enterprise Linux 5.4rac22Geth0(Public)eth1(Prive)2. 用户组规划GroupNameGroupID说明HOSToinstall501Oracle清单和软件所有者rac1,rac2asmadmin504Oracle自动存储管理组rac1,rac2asmdba506ASM数据库管理员组rac1,rac2asmopen507ASM操作员组rac1,rac2dba502数据库管理员rac1,rac23. 用户规划UserIDUserNameGroup说明HOST口令501gridoi
6、nstalldbaasmadminasmdbaasmoperOracle Cluster用户rac1rac2grid123502oracleoinstalldbaasmdbaOracle数据库管理员rac1rac2oracle1234. IP规划主机名公用IP私有IP虚拟IPrac1172.16.1.21110.10.10.211172.16.1.111rac2172.16.1.21210.10.10.212172.16.1.112ScanIP172.16.1.1005. 存储规划存储组件Block DeviceASMlib NameSizeOCR/dev/sdbOCR_VOL11G/dev/
7、sdcOCR_VOL21G/dev/sddOCR_VOL31G数据文件/dev/sdeDATA_VOL110G文件备份/dev/sdfBACK_VOL15G三、 Oracle RAC搭建1. 配置共享存储(ASM依赖)l 方法一:vmware workstation 9虚拟共享存储(1) 在VM安装目录VMware Workstation下执行命令:#vmware-vdiskmanager.exe -c -s 1GB -a lsilogic -t 2 D:racDiskdb01.vmdk#vmware-vdiskmanager.exe -c -s 1GB -a lsilogic -t 2 D:
8、racDiskdb02.vmdk#vmware-vdiskmanager.exe -c -s 1GB -a lsilogic -t 2 D:racDiskdb03.vmdk#vmware-vdiskmanager.exe -c -s 10GB -a lsilogic -t 2 D:racDiskdb04.vmdk#vmware-vdiskmanager.exe -c -s 5GB -a lsilogic -t 2 D:racDiskdb05.vmdk(2) 修改rac1和rac2下的.vmx文件,在最后一行添加如下内容:diskLib.dataCacheMaxSize=0 diskLib.da
9、taCacheMaxReadAheadSize=0diskLib.dataCacheMinReadAheadSize=0diskLib.dataCachePageSize=4096diskLib.maxUnsyncedWrites = 0disk.locking = FALSEscsi1.sharedBus = virtual scsi1.present = TRUEscsi1.virtualDev = lsilogicscsi1:0.mode = independent-persistentscsi1:0.deviceType = diskscsi1:0.present = TRUEscsi
10、1:0.fileName = D:racDiskdb01.vmdkscsi1:1.mode = independent-persistentscsi1:1.deviceType = diskscsi1:1.present = TRUEscsi1:1.fileName = D:racDiskdb02.vmdk scsi1:2.mode = independent-persistentscsi1:2.deviceType = diskscsi1:2.present = TRUEscsi1:2.fileName = D:racDiskdb03.vmdk scsi1:3.mode = independ
11、ent-persistentscsi1:3.deviceType = diskscsi1:3.present = TRUEscsi1:3.fileName = D:racDiskdb04.vmdkscsi1:4.mode = independent-persistentscsi1:4.deviceType = diskscsi1:4.present = TRUEscsi1:4.fileName = D:racDiskdb05.vmdk(3) 重新打开虚拟机,并启动。(4) 磁盘分区,在rac1执行#fdisk /dev/sdbDevice contains neither a valid DO
12、S partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content wont be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)Command (m
13、 for help): pDisk /dev/sdb: 1048 MB, 1048576000 bytes 64 heads, 32 sectors/track, 1000 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Device Boot Start End Blocks Id System Command (m for help): nCommand action e extended p primary partition (1-4)pPartition number (1-4): 1First cylinder (
14、1-1000, default 1):Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-1000, default 1000): Using default value 1000 Command (m for help): wThe partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.#fdisk /dev/sdc 重复上面操作#fdisk /dev/sdd 重复上面操作#fdisk /dev/sde 重复上面操作#fdisk /dev/sdf 重复上面操作l 方法二:Linux mount挂载(待解决)2. 安装依赖包#yum install -y expect* iscsi* binutils* compat-libstdc+* expat* elfutils-libelf* gcc* glibc* ksh* libgcc*#yum install -y pdksh* libgomp* compat-db* libXp* libaio* cpp*