1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,Oracle 11g RAC,介绍,什么是,Oracle RAC,集群,?,Oracle Real Application Server,,真正应用集群,简称,Oracle RAC,,是,Oracle,的并行集群,位于不同服务器系统的,Oracle,实例同时访问同一个,Oracle,数据库,节点之间通过私有网络进行通信,所有的控制文件、联机日志和数据文件存放在共享的设备上,能够被集群中的所有节点同时读写。,RAC,的优点主要在于高可用性和负载均衡,一台机器当机不影响应用访问数据库,了解体系结构,公用网络,节点 1,共享存储,重
2、做日志所有实例,数据库和控制文件,OCR,和,voting,磁盘,(,oracle_home),操作系统,CRS,集群互联,数据库实例 1,ASM,实例 1,节点,2,操作系统,CRS,数据库实例,2,ASM,实例,2,节点,3,操作系统,CRS,数据库实例,3,ASM,实例,3,集群互联,.,Oracle Clusterware,介绍,Oracle Clusterware,是一个集群软件,使用它做集群的所有操作系统必须相同。,使用,Oracle Clusterware,将多个装有相同操作系统的服务器捆绑到一起,当对这些集群的服务器进行访问时,就像访问一台服务器一样。,Oracle Clust
3、erware,要求两个集群组件:,(,1,),voting disk,(表决磁盘),:用于记录集群节点的信息。,RAC,用它来确定哪些实例是集群实例。当网络发生故障时,还要用它存储的信息进行健康检查(例如检查成员服务器是否可用)和仲裁。表决磁盘必须存放在共享磁盘上。,(,2,),Oracle Cluster Registry,(,OCR,,集群注册),,用于记录集群配置信息。集群注册也必须存放在共享磁盘上。,grid,用户主要是管理集群资源和,ASM,磁盘,Oracle ASM,Automatic Storage Management(ASM)是Oracle数据库10g中一个非常出色的新特性,
4、它以平台无关的方式提供了文件系统、逻辑卷管理器以及软件RAID等服务。ASM可以条带化和镜像磁盘,从而实现了在数据库被加载的情况下添加或移除磁盘以及自动平衡 I/O 以删除“热点”。,ASM的优点,1.ASM是跨平台的,主流硬件平台都可以使用,管理方式一致。,2.数据均匀分布在磁盘组里所有的磁盘上,实现了文件级别的条带化,提高了读取和写入的数据的性能。,3.提供了多重冗余级别,保证数据安全。,4.能支持在线磁盘更换。添加或删除磁盘后,自动重新分布数据,因此也不存在碎片的问题,ASM磁盘组,ASM存储管理除了ASM实例之外,最大的组成部分就是ASM磁盘组。一个ASM磁盘组由过多个ASM磁盘组成。
5、一个磁盘组内可以存放多个数据文件,一个数据文件仅仅只能位于一个磁盘组内,不能跨磁盘组。多个数据库可以共享相同的或多个磁盘组。,ASM磁盘,ASM磁盘中可以包含多个文件,多个文件也可以打散放在多个磁盘上,因此磁盘和文件是多对多的关系。,ASM,存储的概念,grid,用户的,ASM,实例,可以看下,grid,的,oracle,进程,实例名是,ASM+X,ps-ef|grep ora_,查看,Oracle,进程,登陆,grid,的,asm,实例,gridnode1$sqlplus/as sysasm,asm,实例也是一种,Oracle,实例,但是没有数据文件和控制文件,状态是处于启动状态,show
6、parameter spfile;查看下,ASM,实例的参数文件位置,asm,实例也无法直接关闭,ASM,实例的参数,create pfile=/home/grid/li.spfile from spfile;,gridnode1$cat li.spfile,+ASM1._oracle_base=/u01/app/grid/crs#ORACLE_BASE set from in memory value,+ASM2._oracle_base=/u01/app/grid/crs#ORACLE_BASE set from in memory value,+ASM2.asm_diskgroups=R
7、ACDATA#Manual Mount,+ASM1.asm_diskgroups=RACDATA#Manual Mount,*.asm_diskstring=/dev/oracleasm/disks/VOL*,*.diagnostic_dest=/u01/app/grid/crs,*.instance_type=asm,*.large_pool_size=12M,*.remote_login_passwordfile=EXCLUSIVE,grid,用户登陆,asm,查看,命令,asmcmd,,和文件系统有点类似,,ls,cd,pwd,等命令都可以用,Linux,下,asmlib,管理,ASM,
8、磁盘,ASM,是,oracle,推荐的管理物理磁盘的方式,linux,一般用,asmlib,组件来管理,ASM,磁盘,1,,创建一个,asm,磁盘,/etc/init.d/oracleasm createdisk VOL1/dev/sdd1,这个盘的完整路径是:,/dev/oracleasm/disks/VOL1,VOL1,是磁盘别名,/dev/sdd1是物理磁盘,2,,查看当前的,asm,磁盘,/etc/init.d/oracleasm listdisks,可以看到现在有四个,asm,磁盘可用,3,,查看当前系统的,ASM,磁盘,select STATE,path,TOTAL_MB,FREE
9、MB,FAILGROUP,STATE,FAILGROUP_type from v$asm_disk;,可以看到,asm,磁盘的路径,容量和使用空间,ASM diskgroup,1,,,ASM,磁盘组成,ASM diskgroup,,用来存放,oracle,文件,2,,创建一个,diskgroup,create diskgroup DATA external redundancy disk/dev/oracleasm/disks/VOL1 name VOL1,/dev/oracleasm/disks/VOL2 name VOL2;,3,,查看,ASM diskgroup,的组成,select
10、a.name,b.name,b.TOTAL_MB,b.FREE_MB from v$asm_disk a,v$asm_diskgroup b where a.GROUP_NUMBER=b.GROUP_NUMBER;,1,Oracle rac,的表空间文件路径,,+RACDATA,是磁盘组名称,2,,,Oracle rac,给表空间增加,alter TABLESPACE users add datafile+RACDATA SIZE 10M AUTOEXTEND off,;,11g RAC,的,IP,设置,10.10.17.211 node1,public ip,10.10.17.212 nod
11、e2,public ip,10.10.17.213 node1-vip 虚,IP,10.10.17.214 node2-vip,虚,IP,192,.,168,.,1,.,191,node1-priv 内网通讯,IP,192,.,168,.,1,.,192,node2-priv 内网通讯,IP,10.10.17.215 cluster_scan_vip,scan IP,本质就是,IP,的别名,内网端口是,RAC,各节点内部进行通讯的,外端网卡是,RAC,为外部提供服务的,应用程序通过,scan ip,来访问数据库,11g rac,客户端的配置,客户端只要通过,SCAN IP,来访问数据库就可以,
12、客户端配置CNP=,(DESCRIPTION=,(ADDRESS=(PROTOCOL=TCP)(HOST=,scan-vip,)(PORT=1521),(CONNECT_DATA=,(SERVER=DEDICATED),(SERVICE_NAME=cnp),(failover_mode=,(type=select),(method=basic),(retries=180),(DELAY=15),),),),10g rac,客户端配置,RACDB=,(DESCRIPTION=,(FAILOVER=on),(LOAD_BALANCE=yes),(ADDRESS_LIST=,(ADDRESS=(PR
13、OTOCOL=TCP)(,HOST=node1-vip,)(PORT=1521),(ADDRESS=(PROTOCOL=TCP)(,HOST=node2-vip,)(PORT=1521),),(CONNECT_DAT,A,=,Oracle rac,高可用性,过程完全自动,不用人工干预,比如客户端通过,scan ip,连接到节点,1,1,,节点,1,突然当机,2,,,scan ip,切换到节点,2,3,客户端连接也会从节点,1,自动切换到节点,2,RAC,提供的好处,多节点负载均衡,;,提供高可用:故障容错和无缝切换功能,将硬件和软件错误造成的影响最小化。,RAC,提供的好处,通过并行执行技术提高事务响应时间,-,通常用于数据分析系统,;,通过横向扩展提高每秒交易数和连接数,;-,通常对于联机事务系统,;,可扩展性好,可以方便添加删除节点,扩展硬件资源,集群资源启动,/,停止,root,用户,cd,/u01/app/11.2.0/grid/bin,./crsctl start cluster-all,./crsctl,stop,cluster-all,查看集群状态,crsctl status resource-t,






