ITPub博客

首页 > 数据库 > Oracle > ASM笔记

ASM笔记

原创 Oracle 作者:sduzjw 时间:2015-01-08 14:13:41 0 删除 编辑
ALLOCATION UNIT的大小ORACLE建议使用4M,创建磁盘组时通过AU_SIZE参数指定,其大小可以是1,2,4,8,16,32,64M,该值越大,对于数据仓库一类的顺序读需求非常高的应用来说性能上会有很好的表现。还可以减少ORACLE SGA的使用,以及更快的打开数据库及读取文件。
同一个磁盘组中的文件既可以指定MIRROR也可以不指定MIRROR
ASM可以与其他文件系统共同使用
创建磁盘组的时候如果没有指定失败组,那么ASM自动的将每一个磁盘放在他自己的失败组中。NORMAL REDUNDANCY至少需要2个失败组,HIGH REDUNDANCY至少需要3个失败组。
在一个集群中,同一个磁盘在不同的节点上可能有不同的操作系统设备名字,但在所有的节点上同一个磁盘都有着相同的ASM磁盘名字。
ASM按比例在磁盘组中的每个磁盘上分布文件,这样可以确保所有的磁盘都有相同的容量以及所有的磁盘都能有相同的IO负载。ASM在磁盘组中的所有磁盘上进行负载均衡,因此不要使用不同的ORACLE ASM磁盘共享相同的物理磁盘的方式。
ASM磁盘被分配成很多个ALLOCATION UNIT,磁盘组中文件的EXTENT由若干个AU组成,ASM文件由若干个EXTENT组成。每个EXTENT存储在一个单独的磁盘上,为了适应正在增长中的大型文件的需求,ORACLE使用可变大小的EXTENT。EXTENT的变化规则:
一个文件中的前20000个EXTENT中使用的AU的大小是创建磁盘组时指定的AU大小;
文件中第20000到39999个EXTENTS,每个EXTENT的大小则变成4*AU
文件中第40000以上的EXTENTS,每个EXTENT的大小是16*AU
一个ASM文件只能保存在一个磁盘组中。DB使用ASM文件就跟DB使用任何文件系统中的文件是一样的。ASM只给数据库提供磁盘组的元数据信息:磁盘组可用空间,文件EXTENTS信息,磁盘组中有哪些磁盘,ASM并不承担繁重的数据库读写任务,DB是直接读写ASM中的文件,因此ASM不太可能成为IO性能的瓶颈。
可以为ASM文件指定一个用户友好的文件别名。也可以自己创建一个分层目录
ASM条带化的目的:在磁盘组中的全部磁盘上实现负载均衡,减少IO延迟。粗粒度的条带化可以实现磁盘组的负载均衡,而细粒度的条带化由于可以将负载更平均的进行分布,所以可以减小某些文件的延迟。细粒度条带时条带大小总是128K,而粗粒度条带时的条件大小则等于AU的大小(不是EXTENT的大小啊)
为了减少REBALANCING IO,最好同时添加多个磁盘。删除磁盘时要用ASM磁盘名字,而不是操作系统中的磁盘名字。当磁盘不可读写时,ASM自动删除相应的损坏磁盘。
ASM_DISKSTRING,POWER_LIMIT
ASM REBALANCE操作不是根据IO统计信息,而是根据磁盘组中磁盘的数量。REBALANCE操作在存储配置发生变更时自动进行,如:添加,删除,重新调整磁盘大小时
在更改了一个运行中的REBALANCE的POWER设置后可以手工重启这个REBALANCE操作。当运行REBALANCE操作的实例停止了,下次REBALANCE还可以自动重新启动。
块设备或裸设备已经不受OUI或DBCA的支持,但可以手工配置来给ORACLE使用,只是该方法不是建议方法了。
ASM磁盘组中的数据分布策略是以磁盘容量为基础的,因此需要确保磁盘组中的各个磁盘都有相同的容量以维持平衡的数据分布状态及性能。
选择一个硬件级别的RAID条带大小:2的平方,小于或接近AU的大小。
11.2版本的ASM可以支持11.2的数据库及以前老版本的数据库,包括10g。11.2版本的ASM支持10.1版本的数据库时,ASM的特性则是10.1
Only a few Oracle ASM-specific instance initialization parameters must be configured. The default values are usually sufficient。
可以通过以下方式管理ASM初始化参数:SQLPLUS,OEM,ASMCA,ASMCMD
ASMCMD命令SPCOPY,SPMOVE,SPBACKUP用来操作ASM的SPFILE.可以使用SQLPLUS的CREATE SPFILE来创建ASM的SPFILE。
创建ASM实例时使用ASMCA配置ASM实例参数,创建成功以后可以使用ALTER SYSTEM或者ALTER SESSION来修改ASM实例的参数。
ASM使用AMM自动内存管理功能,MEMORY_TARGET可以动态调整,增加到MEMORY_MAX_TARGET的值。设置MEMORY_TARGET=0会禁用AMM,设置SGA_TARGET=0也会禁用SGA的AMM功能。
ASM的MEMORY_TARGET的最小值是256M,如果手工设置的值小于该值,ORACLE会自动调整该值到256M。
ASM_DISKGROUPS参数设置ASM实例启动时自动挂载的多个磁盘组。如果ASM使用了SPFILE,那么当创建或挂载了磁盘组时系统自动设置该值,默认情况下该值是NULL。
ALTER DISKGROUP ...ALL MOUNT/DISMOUNT会忽略到ASM_DISKGROUPS参数
ASM_POWER_LIMIT参数值范围0~1024,默认值是1,如果设置为0则会禁用磁盘组的REBALANCING功能,设置的值越大,REBALANCING操作会完成的更快,但那很有可能造成
很大的IO并且会产生很多的REBALANCING进程。
ASM磁盘组的兼容性参数如果是大于等于11.2.0.2,那么ASM_POWER_LIMIT的值的范围就是0~1024,如果兼容性参数小于11.2.02那么ASM_POWER_LIMIT的范围是0~11,如果设置的值大于11,
那么也只能使用11.
ASM磁盘组中磁盘属主grid:asmadmin
ASM本身不提供多路径功能,但ASM可以与多路径技术共同协作。
通过设备ASM_DISKSTRING参数以确保ASM可以搜索到多路径虚拟磁盘。当I/O被发送到虚拟设备时,多路径驱动可以截获到IO并将IO传递给底层子路径以实现负载均衡。
要确保ASM只能搜索到一个多路径磁盘。
配置2个磁盘组,一个用于存储数据,另一个用于快速恢复区。
建议每一个磁盘组至少有4个大小和性能相同的LUN。确保一个磁盘组中的所有磁盘都有着相近的性能和可用性特点。如果有多种速度的存储配置,那么IO性能会被限制在速度最低的驱动器速度上。
ASM数据分布策略是基于磁盘容量的。确保磁盘组中的磁盘都有相同的容量。
当使用高端存储阵列时可以创建外部冗余磁盘组。端着存储阵列一般都提供了硬件RAID保护。当不使用硬件RAID时可以使用ORACLE ASM镜像冗余,或者需要使用操作系统级别的卷管理功能,例如不同存储设备之间的镜像。
可以使用ORACLE ASM镜像以实现物理位置分开的站点之间的镜像。
选择硬件RAID条件大小是小于或等于AU的大小的2的平方。
可以使用OEM或SQLPLUS来执行ASM实例的管理。
ASM安装在GI HOME中,与ORACLE数据库不在同一个安装目录中。管理ASM实例时必须在GI HOME下进行。
一个服务器上只可运行一个ASM实例。
为了确保兼容性,集群软件的版本必须高于或等于ORACLE ASM的版本。
10.1的数据库使用11.2的ASM,那么ASM只能提供支持10.1的特性。
OUI,DBCA不再支持块设备或裸设备,但可以手工配置使用块设备或裸设备。
很少需要配置ASM实例的参数,默认参数已经足够。
如果COMPATIBLE.ASM参数设置为11.2那么就可以将ASM的SPFILE放到磁盘组中。
ASM实例中可以动态的增加MEMORY_TARGET到MEMORY_MAX_TARGET。
ASM磁盘组中的所有磁盘必须被集群中的全部节点都能访问才行,要不然是不能使用这些磁盘的。每个节点上的磁盘的名字可以不一样,但集群中的全部节点必须能看到这些磁盘。
COMPATIBLE.ASM=11.2.0.2时ASM_POWER_LIMIT默认值是1,范围是0~1024.当设置为0时会禁用REBALANCE功能。该值越大,REBALANCE操作完成的会越快,但是会增加额外的IO负担并且会产生很多的REBALANCE进程。COMPATIBLE.ASM值小于11.2.0.2时该参数的值的范围是0~11.


ASM_PREFERRED_READ_FAILURE_GROUPS主要用于集群环境中指定哪个实例优先读取哪个失败组的数据。该参数在不同的实例中可有不同的设置。默认值是NULL。
PROCESSES参数在多个数据库实例使用同一个ASM实例时,可按以下公式进行设置:
PROCESSES=50+50*N
N为连接到ASM实例的数据库实例数量。

以NORMAL、IMMEDIATE、TRANSAVTIONAL模式关闭ASM时,如果有数据库正在使用ASM那么ASM会报告一个错误并且ASM会继续运行。
在一个集群软件的配置中,ASM实例的升级/降级是做为集群软件升级/降级的一部分。
使用SYSASM权限来管理ASM实例,如果使用SYSDBA权限来管理ASM实例,那么系统会报错。SYSDBA权限是数据库用来访问磁盘组的。
ORACLE也建议使用一个更少权限的用户,例如在安装过程中创建的有SYSDBA权限的ASMSNMP用户可以用于ASM实例的监控。
OEM也需要一个密码文件才能从远程连接到ASM。
如果没有使用ASMCA配置ASM实例,那必须手工创建密码文件并给SYS用户以SYSASM的授权。
使用GUI界面,OEM可以执行操作文件系统中的冷库和热库到ASM的迁移。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/280958/viewspace-1394602/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 彻底删除ORACLE 11G
请登录后发表评论 登录
全部评论

注册时间:2010-06-11

  • 博文量
    33
  • 访问量
    93109