ORACLE之ASM学习

  ASM(Automatic Storage Management)是Oracle10g R2中为了简化Oracle数据库的管理而推出来的一项新功能,这是Oracle自己提供的卷管理器,主要用于替代操作系统所提供的LVM,它不仅支持单实例,同时对RAC的支持也是非常好。

一、ASM由来

ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出来的一项新功能,这是Oracle自己提供的卷管理器,主要用于替代操作系统所提供的LVM,它不仅支持单 实例,同时对RAC的支持也是非常好。ASM可以自动管理磁盘组并提供有效的数据冗余功能。使用ASM(自动存储管理)后,数据库管理员不再需要对 ORACLE中成千上万的数据文件进行管理和分类,从而简化了DBA的工作量,可以使得工作效率大大提高。

二、什么是ASM

ASM它提供了以平台无关的文件系统、逻辑卷管理以及软RAID服务。ASM可以支持条带化和磁盘镜像,从而实现了在数据库被加载的情况下添加或移除磁盘以及自动平衡I/O以删除“热点”。它还支持直接和异步的I/O并使用Oracle9i中引入的Oracle数据管理器 API(简化的I/O系统调用接口)。

ASM是做为单独的Oracle实例实施和部署,并且它只需要有参数文件,不需要其它的任何物理文件,就可以启动ASM实例,只有它在运行的时候,才能被其它数据访问。在Linux平台上,只有运行了OCSSD服务(Oracle安装程序默认安装)了才能和访问ASM。

三、使用ASM的好处

优点:

(1)将I/O平均分部到所有可用磁盘驱动器上以防止产生热点,并且最大化性能。在ASM中是DiskGroup概念与LVM卷组管理中VG的概念类似,也是将多块物理磁盘总成一个磁盘组,一个磁盘组中的数据是均匀分布在各个物理磁盘上的。手工添加和删除物理磁盘时,数据会自动均衡(ReBalance);

(2) 配置更简单,并且最大化推动数据库合并的存储资源利用;数据文件都存储在DiskGroup中(简称DG),管理相对简单。

(3) 内在的支持大文件,支持BIGFILE文件。

(4) 在增量增加或删除存储容量后执行自动联系重分配,即自动ReBalance;

(5) 维护数据的冗余副本以提高可用性;

(6) 支持10g、11g的数据存储及RAC的共享存储管理,相对来说11g的ASM更稳定,10g中有些BUG。

(7) 支持第三方的多路径软件;如powerpath(aix)、mutlipath(linux)

(8) 使用OMF(Oracle Managed Files)方式来管理文件。

缺点:

(1)   数据库中新增一个ASM实例,维护上需要对ASM进行管理,增加了维护成本;

(2)   ASM相对来说是个黑匣子,如果出问题,恢复起来也是个难点。

四、ASM冗余方式

  ASM使用独特的镜像算法:不镜像磁盘,而是镜像盘区。作为结果,为了在产生故障时提供连续的保护,只需要磁盘组中的空间容量,而不需要预备一个热备(hot spare)磁盘。不建议用户创建不同尺寸的故障组,因为这将会导致在分配辅助盘区时产生问题。ASM将文件的主盘区分配给磁盘组中的一个磁盘时,它会将该盘区的镜像副本分配给磁盘组中的另一个磁盘。给定磁盘上的主盘区将在磁盘组中的某个伙伴磁盘上具有各自的镜像盘区。ASM确保主盘区和其镜像副本不会驻留在相同的故障组中。磁盘组的冗余可以有如下的形式:双向镜像文件(至少需要两个故障组)的普通冗余(默认冗余)和使用三向镜像(至少需要3个故障组)提供较高保护程度的高冗余。一旦创建磁盘组,就不可以改变它的冗余级别。为了改变磁盘组的冗余,必须创建具有适当冗余的另一个磁盘组,然后必须使用RMAN还原或DBMS_FILE_TRANSFER将数据文件移动到这个新创建的磁盘组。

三种不同的冗余方式如下:

  (1)外部冗余(external redundancy)--常用

  表示Oracle不帮你管理镜像,功能由外部存储系统实现,比如通过RAID技术;有效磁盘空间是所有磁盘设备空间的大小之和。

  (2)默认冗余(normal redundancy)

  表示Oracle提供2份镜像来保护数据,有效磁盘空间是所有磁盘设备大小之和的1/2 (使用最多)

  (3)高度冗余(high redundancy)

  表示Oracle提供3份镜像来保护数据,以提高性能和数据的安全,最少需要三块磁盘(三个failure group);有效磁盘空间是所有磁盘设备大小之和的1/3,虽然冗余级别高了,但是硬件的代价也最高。

五、ASM进程

ASM实例除了传统的DBWR,LGWR,CKPT,SMON,PMON等进程还包含如下四个新后台进程:

  (1) RBAL:负责协调磁盘组的重新平衡活动(负责磁盘组均衡)

  (2) ARB0-ARBn:在同一时刻可以存在许多此类进程,它们分别名为ARB0、ARB1,以此类推,执行实际的重新平衡分配单元移动进程。

  (3) GMON:用于ASM磁盘组监控

  (4) O0nn 01-10:这组进程建立到ASM实例的连接,某些长时间操作比如创建数据文件,RDBMS会通过这些进程向ASM发送信息

  ASMB与ASM 实例的前台进程连接,周期性的检查两个instance的健康状况。每个数据库实例同时只能与一个ASM实例连接,因此数据库只会有一个ASMB后台进程。如一个节点上有多个数据库实例,它们只能共享一个ASM实例。

  RBAL用来进行全局调用,以打开某个磁盘组内的磁盘。ASMB进程与该节点的CSS守护进程进行通信,并接收来自ASM实例的文件区间映射信息。ASMB还负责为ASM实例提供I/O统计数据

  CSS集群同步服务。要使用ASM,必须确保已经运行了CSS集群同步服务,CSS负责ASM实例和数据库实例之间的同步。

注意

  ASM实例必须要先于数据库实例启动,和数据库实例同步运行,迟于数据库实例关闭。ASM 实例和数据库实例的关系可以是1:1,也可以是1:n。如果是1:n,最好为ASM 安装单独的ASM_HOME。

六、ASM支持文件类型

  ASM支持datafile,logfiles,control files,archivelogs,RMAN backup sets等自动的数据库文件管理。

  一般来说,一个采用ASM单实例数据库由两个DG组成。一个是datadg,另外一个是fradg。Datadg主要是存放数据文件,而fradg(flash recovery area)存放archivelog文件,control文件和备份文件等。

七、ASM实例和数据库实例对应关系

八、Cluster ASM 架构

九、相关视图


视图名


X$基表名


描述


V$ASM_DISKGROUP


X$KFGRP


实施磁盘发现disk discovery和列出磁盘组


V$ASM_DISKGROUP_STAT


X$KFGRP_STAT


显示disk group状态


V$ASM_DISK


X$KFDSK, X$KFKID


实施磁盘发现disk discovery和列出磁盘以及这些磁盘的使用度量信息


V$ASM_DISK_STAT


X$KFDSK_STAT,X$KFKID


列出磁盘和其使用度量信息


V$ASM_FILE


X$KFFIL


列出ASM文件也包括了元数据信息


V$ASM_ALIAS


X$KFALS


列出了ASM的别名,文件和目录


V$ASM_TEMPLATE


X$KFTMTA


列出可用的模板和其属性


V$ASM_CLIENT


X$KFNCL


列出链接到ASM的DB实例


V$ASM_OPERATION


X$KFGMG


列出rebalancing重平衡操作


 


X$KFKLIB


可用的ASMLIB路径


 


X$KFDPARTNER


列出Disk-partners关系


 


X$KFFXP


所有ASM文件的extent map


 


X$KFDAT


所有ASM Disk的extent列表


 


X$KFBH


描述ASM cache


 


X$KFCCE


ASM block的链表


V$ASM_ATTRIBUTE(new in 11g)


X$KFENV(new in 11g)


Asm属性,该X$基表还显示一些隐藏属性


V$ASM_DISK_IOSTAT(new in 11g)


X$KFNSDSKIOST(new in 11g)


I/O统计信息


 


X$KFDFS(new in 11g)


 


 


X$KFDDD(new in 11g)


 


 


X$KFGBRB(new in 11g)


 


 


X$KFMDGRP(new in 11g)


 


 


X$KFCLLE(new in 11g)


 


 


X$KFVOL(new in 11g)


 


 


X$KFVOLSTAT(new in 11g)


 


 


X$KFVOFS(new in 11g)


 


 


X$KFVOFSV(new in 11g)


 

十、参考资料

http://www.jb51.net/article/43527.htm

  http://blog.csdn.net/tianlesoftware/article/details/5314541

  http://docs.oracle.com/cd/B28359_01/server.111/b31107/asmcon.htm#OSTMG036

ORACLE之ASM学习,布布扣,bubuko.com

时间: 2024-07-28 13:59:18

ORACLE之ASM学习的相关文章

Oracle ASM学习之(1)--ASM Instance管理

Oracle ASM学习之(1)--ASM Instance管理    About Oracle ASM Instances An Oracle ASM instance is built on the same technology as an Oracle Database instance. An Oracle ASM instance has a System Global Area (SGA) and background processes that are similar to t

Oracle之函数学习以及事务

Oracle之函数学习 1.字符函数是oracle中最常用的函数 lower(char):将字符串转化为小写的格式 upper(char):将字符串转化为大写的格式 length(char):返回字符串的长度 substr(char,m,n):取字符串的子串 将所有的员工的名字按小写的方式显示? SQL> select lower(ename),sal from emp; LOWER(ENAM        SAL ---------- ---------- smith            

深入了解 Oracle Flex ASM 及其优点

简介 Oracle Real Application Cluster (RAC) 是 Oracle 解决方案中的一个著名产品,用于保持业务数据的高可用性.Oracle RAC 允许在所有集群节点之间共享负载,采用 N-1 容错配置来应对节点故障,其中 N 是节点总数.Oracle RAC 一直在不断改进每个版本,此次也不例外.新的 12.1.0.1 版包含“Flex ASM”和“Flex 集群”两个属性,支持面向云计算的环境的各种苛刻需求. Oracle RAC 12c 引入了两个新概念: 中心

ORACLE之ASM概念

一.     ASM(自动存储管理)的来由: ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出来的一项新功能,这是Oracle自己提供的卷管理器,主要用于替代操作系统所提供的LVM,它不仅支持单实例,同时对RAC的支持也是非常好.ASM可以自动管理磁盘组并提供有效的数据冗余功能.使用ASM(自动存储管理)后,数据库管理员不再需要对ORACLE中成千上万的数据文件进行管理和分类,从而简化了DBA的工作量,可以使得工作效率大大提高. 二.     什么是ASM ASM它提供

【oracle】入门学习(一)

一直想学oracle但都没有下定决心.这次借了书,一定要学好oracle. 目前学习 <Oracle从入门到精通> 明日科技 的Oracle 11g 版本 关系型数据库的基本理论 数据模型:层次模型.网状模型.关系模型(最普及) 关系:由行和列交叉组成的二维表格,一行为一个元组,代表一个实体:一列为一个属性 关系的性质: ①属性值不可分解 ②没有重复的元组,即没有重复的行 ③理论上没有行序,有时候也可以有行序 ④超键:在一个关系中,唯一标示元组的属性或属性集 ⑤候选键:能唯一标示元组,且不含多

FAQ: Oracle Flex ASM 12c / 12.1 (Doc ID 1573137.1)

APPLIES TO: Oracle Database - Enterprise Edition - Version 12.1.0.1 to 12.1.0.2 [Release 12.1]Oracle Virtual Compute Appliance X4-2 Hardware - Version All Versions to All Versions [Release All Releases]Oracle Database - Enterprise Edition - Version 1

关于oracle 11g ASM使用时要注意的点

1. 配置最少2个data group (datagroup 存放数据文件: fra datagroup 作为闪回区方归档 ,备份等)主要考虑的是io 性能问题 2. oracle 官方文档建议每个dg 最少4块盘且大小,性能一样.否者io 将会受限于速度最慢的那个盘 3. 硬件raid 条带大小取2的幂,且要<= asm au size 4.支持存储: Disk Partition A disk partition can be the entire disk drive or a secti

rhel5.8安装oracle 10g ASM

1.所有的配置和文件系统一样 2.规划: 加了8块小盘,ASM为了实验使用asmlib驱动(rhel6不再支持asmlib驱动),裸设备的2种方法(rowdevice和udev) 三块盘使用asmlib,两块使用rowdevice,两块使用udev 2.分区 (1)查看 [[email protected] ~]# fdisk -lDisk /dev/sda: 16.1 GB, 16106127360 bytes255 heads, 63 sectors/track, 1958 cylinder

oracle grid 11g学习笔记-安装配置

目录说明: -安装准备 1.1 环境信息 1.2 需要安装依赖包 1.3 用户配置 1.4 存储安装配置 1.5 操作系统参数配置 1.6 环境变量配置 1.7 ssh信任配置 1.8 vnc配置 1.9 asm存储配置 -oracle软件安装 2.1 grid安装 2.2 oracle安装 2.3 asm磁盘划分 2.4 数据库实例安装 -安装问题 3.1 问题1 3.2 问题2 3.3 问题3 3.4 问题4 3.5 问题5 一 安装准备 当企业对于数据库要求比较高,或负载压力比较大的时候,