假设您要在数据库中使用 10 个磁盘。利用 ASM,您不需要在 OS 端创建任何东西,该特性将把一组物理磁盘集合成一个逻辑实体(称为磁盘组)。
磁盘组类似于一个分段(和可选镜像)文件系统,但具有重要的差异:它不是一个用于存储用户文件的通用文件系统,并且它不进行缓冲。由于后面的原因,磁盘组提供了直接作为原始设备来访问这个空间,并仍提供文件系统的便利性和灵活性的好处。
ASM它提供了以平台无关的文件系统、逻辑卷管理以及软RAID服务。ASM可以支持条带化和磁盘镜像,从而实现了在数据库被加载的情况下添加或移除磁盘以及自动平衡I/O以删除“热点”。它还支持直接和异步的I/O并使用Oracle9i中引入的Oracle数据管理器API(简化的I/O系统调用接口)。
扩展资料:
ASM使用独特的镜像算法:不镜像磁盘,而是镜像盘区。作为结果,为了在产生故障时提供连续的保护,只需要磁盘组中的空间容量,而不需要预备一个热备(hot spare)磁盘。
不建议用户创建不同尺寸的故障组,因为这将会导致在分配辅助盘区时产生问题。ASM将文件的主盘区分配给磁盘组中的一个磁盘时,它会将该盘区的镜像副本分配给磁盘组中的另一个磁盘。给定磁盘上的主盘区将在磁盘组中的某个伙伴磁盘上具有各自的镜像盘区。
ASM确保主盘区和其镜像副本不会驻留在相同的故障组中。磁盘组的冗余可以有如下的形式:双向镜像文件(至少需要两个故障组)的普通冗余(默认冗余)和使用三向镜像(至少需要3个故障组)提供较高保护程度的高冗余。
参考资料:
自动存储管理(ASM,Automatic Storage Management)
ASM 是 Oracle 数据库 10g 中一个非常出色的新特性,它以平台无关的方式提供了文件系统、逻辑卷管理器以及软件 RAID(磁盘阵列) 等服务。ASM 可以条带化和镜像磁盘,从而实现了在数据库被加载的情况下添加或移除磁盘以及自动平衡 I/O 以删除“热点”。它还支持直接和异步的 I/O 并使用 Oracle9i 中引入的 Oracle 数据管理器 API(简化的 I/O 系统调用接口)。
利用UDEV服务解决RAC ASM存储设备名
在<Why ASMLIB and why not>我们介绍了使用ASMLIB作为一种专门为Oracle Automatic Storage Management特性设计的内核支持库(kernel support library)的优缺点,同时建议使用成熟的UDEV方案来替代ASMLIB。
这里我们就给出配置UDEV的具体步骤,还是比较简单的:
1确认在所有RAC节点上已经安装了必要的UDEV包
[root@rh2 ~]# rpm -qa|grep udev
udev-095-1421el5
2通过scsi_id获取设备的块设备的唯一标识名,假设系统上已有LUN sdc-sdp
for i in c d e f g h i j k l m n o p ;
do
echo "sd$i" "`scsi_id -g -u -s /block/sd$i` ";
done
sdc 1IET_00010001
sdd 1IET_00010002
sde 1IET_00010003
sdf 1IET_00010004
sdg 1IET_00010005
sdh 1IET_00010006
sdi 1IET_00010007
sdj 1IET_00010008
sdk 1IET_00010009
sdl 1IET_0001000a
sdm 1IET_0001000b
sdn 1IET_0001000c
sdo 1IET_0001000d
sdp 1IET_0001000e
以上列出于块设备名对应的唯一标识名
3创建必要的UDEV配置文件,
首先切换到配置文件目录
[root@rh2 ~]# cd /etc/udev/rulesd
定义必要的规则配置文件
[root@rh2 rulesd]# touch 99-oracle-asmdevicesrules
[root@rh2 rulesd]# cat 99-oracle-asmdevicesrules
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010001", NAME="ocr1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010002", NAME="ocr2", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010003", NAME="asm-disk1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010004", NAME="asm-disk2", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010005", NAME="asm-disk3", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010006", NAME="asm-disk4", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010007", NAME="asm-disk5", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010008", NAME="asm-disk6", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_00010009", NAME="asm-disk7", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_0001000a", NAME="asm-disk8", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_0001000b", NAME="asm-disk9", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_0001000c", NAME="asm-disk10", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_0001000d", NAME="asm-disk11", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1IET_0001000e", NAME="asm-disk12", OWNER="grid", GROUP="asmadmin", MODE="0660"
Result 为/sbin/scsi_id -g -u -s %p的输出--Match the returned string of the last PROGRAM call This key may be
used in any following rule after a PROGRAM call
按顺序填入刚才获取的唯一标识名即可
OWNER为安装Grid Infrastructure的用户,在11gr2中一般为grid,GROUP为asmadmin
MODE采用0660即可
NAME为UDEV映射后的设备名,
建议为OCR和VOTE DISK创建独立的DISKGROUP,为了容易区分将该DISKGROUP专用的设备命名为ocr1ocrn的形式
其余磁盘可以根据其实际用途或磁盘组名来命名
4将该规则文件拷贝到其他节点上
[root@rh2 rulesd]# scp 99-oracle-asmdevicesrules Other_node:/etc/udev/rulesd
5在所有节点上启动udev服务,或者重启服务器即可
[root@rh2 rulesd]# /sbin/udevcontrol reload_rules
[root@rh2 rulesd]# /sbin/start_udev
Starting udev: [ OK ]
6检查设备是否到位
[root@rh2 rulesd]# cd /dev
[root@rh2 dev]# ls -l ocr
brw-rw---- 1 grid asmadmin 8, 32 Jul 10 17:31 ocr1
brw-rw---- 1 grid asmadmin 8, 48 Jul 10 17:31 ocr2
[root@rh2 dev]# ls -l asm-disk
brw-rw---- 1 grid asmadmin 8, 64 Jul 10 17:31 asm-disk1
brw-rw---- 1 grid asmadmin 8, 208 Jul 10 17:31 asm-disk10
brw-rw---- 1 grid asmadmin 8, 224 Jul 10 17:31 asm-disk11
brw-rw---- 1 grid asmadmin 8, 240 Jul 10 17:31 asm-disk12
brw-rw---- 1 grid asmadmin 8, 80 Jul 10 17:31 asm-disk2
brw-rw---- 1 grid asmadmin 8, 96 Jul 10 17:31 asm-disk3
brw-rw---- 1 grid asmadmin 8, 112 Jul 10 17:31 asm-disk4
brw-rw---- 1 grid asmadmin 8, 128 Jul 10 17:31 asm-disk5
brw-rw---- 1 grid asmadmin 8, 144 Jul 10 17:31 asm-disk6
brw-rw---- 1 grid asmadmin 8, 160 Jul 10 17:31 asm-disk7
brw-rw---- 1 grid asmadmin 8, 176 Jul 10 17:31 asm-disk8
brw-rw---- 1 grid asmadmin 8, 192 Jul 10 17:31 asm-disk9
ORACLE g中ASMCMD使用及ASM文件XML DB访问
引言
自动存储管理(ASM) 是Oracle 数据库 g 的新功能 它为数据库管理员提供了一个简单的存储管理界面 并且该界面在所有服务器和存储平台上都是一致的 作为专门为 Oracle 数据库文件创建的整合的文件系统和卷管理器 ASM 提供了异步 I/O 的性能以及文件系统的易管理性 它简化了数据库的管理 使管理员可以将可用的存储划分为磁盘组(disk groups) 只需管理少量的磁盘组而不再需要直接管理大量的oracle数据库文件 ASM可自动管理磁盘组内数据库文件的放置 优化了性能和资源利用率
ORACLE g中的高效存储技术ASM
自动存储管理直接在Oracle 内核提供了文件系统和卷管理器的垂直整合 从而带来了存储区域网系统提供的 虚拟化 类型的优点(易于管理 更高的可用性) 并专门用于Oracle 数据库文件 ASM 提供了配置数据库的快捷方法 以达到最佳性能和资源利用率 它通过Oracle 内核自动管理数据库文件和这些文件的放置 不再需要第三方文件系统和卷管理器来管理Oracle 文件 ASM 免去了耗时的手动I/O 性能与调整任务 大大节省了DBA 的时间
ASM的镜像(mirroring)与条带化(striping) ASM 将文件分成 MB 大小的区(extent) 并将所有文件的区平均分布到磁盘组的所有磁盘中 ASM 不使用数学函数跟踪每个区的放置 而使用指针记录区的位置 这样 ASM 就可以在磁盘组配置变化时移动某个文件的某些区 而不必按照公式并根据磁盘数来移动所有的区 对于需要低延迟的文件(例如日志文件) ASM 提供了细粒度( k) 分段 以便由多个磁盘并行分隔并处理较大的I/O ASM 在所有可用的资源中分布I/O 负载 在免除手动I/O 调节需要(通过分散数据库文件来避免热点)的同时优化性能 ASM的镜像比 *** 作系统的磁盘镜像更为灵活 因为ASM可基于文件设置冗余级别 也就是说在同一磁盘组中的两个文件可以一个是镜像的而另一个不做镜像 ASM镜像发生在区级
ASM的动态存储配置 ASM使得在线调整存储配置成为可能 即它帮助DBA 管理动态数据库环境 让DBA 能够在扩大或缩小数据库规模的情况下 无需关闭数据库以调整存储配置 而在往磁盘组中增加磁盘或从磁盘组中删除磁盘后 ASM将自动重新平衡――均衡地在磁盘组中的所有磁盘上重新分布文件数据
ASM 是一种能力 它通过实现手动存储器的自动化来节省DBA 的时间 使其能够以更高的效率管理更大 更多的数据库
通过ASMCMD工具管理ASM
在oracle数据库 g的第一个版本中 管理ASM只能通过SQL语句 g的第二个版本提供了一个管理ASM文件的新选择――命令行工具ASMCMD 它使我们可以更为方便地浏览和管理ASM磁盘组中的文件和目录 它可以列出磁盘组的内容 执行搜索 创建或删除目录及别名 显示空间利用率等等 下面将通过一个在AIX *** 作系统上的oracle g的应用实例来介绍ASMCMD命令行工具的使用方法以及ASM文件的FTP及>
自动存储管理 (ASM) 是 Oracle Database 的一个特性,它为数据库管理员提供了一个在所有服务器和存储平台上均一致的简单存储管理接口。作为专门为 Oracle 数据库文件创建的垂直集成文件系统和卷管理器,ASM 提供了直接异步 I/O 的性能以及文件系统的易管理性。ASM 提供了可节省 DBA 时间的功能,以及管理动态数据库环境的灵活性,并且提高了效率。ASM 的主要优点有:
简化和自动化了存储管理
提高了存储利用率和敏捷性
提供可预测的性能、可用性和可伸缩性
以上就是关于什么是asm全部的内容,包括:什么是asm、ASM是什么⊙∀⊙、非RAC数据库也应当用Oracle ASM作为存储吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)