asm 兼容性、asm 主要参数管理
一
ASM instance 与 Database instance 的版本兼容性说明
1. Oracle 11gR2 的ASM 支持11g和10g的数据库实例。但是在Oracle Clusterware 和Oracle ASM 之间,
Clusterware 的版本必须大于等于ASM 的版本。
2. 如果要使用Oracle 11.2 的数据库实例,那么ASM 实例的版本必须是11.2的。
即,ASM instance具有向下的兼容性,但向上就必须版本一致。
可以通过V$ASM_CLIENT 查看软件版本和compatible 版本的信息:
col SOFTWARE_VERSION for a20
col COMPATIBLE_VERSION for a20
select a.name,b.software_version,b.compatible_version from v$asm_client b,v$asm_diskgroup a where a.group_number = b.group_number;
说明:
SOFTWARE_VERSION 列显示的数据库的版本或者是ASM disk group对应的ASM instance 版本。
COMPATIBLE_VERSION 也上面一样,只不过它对应的compatible 参数的值。
二
ASM 实例的初始化参数
当ASM instance 查找初始化文件的时候,搜索的顺序如下:
1. GPnP(Grid Plug and Play) profile 中指定的本地位置。
默认的保存位置是:
$GRID_HOME/gpnp/$HOSTNAME/profile/peer/profile.xml
$GRID_HOME/gpnp/profile/peer/profile.xml(全局备份)
2. 如果GPnP profile中没有指定初始化文件的位置,然后搜索ASM Instance Home目录。这里会包含2种文件,SPFILE 和 PFILE,默认路径是:$ORACLE_HOME/dbs/spfile+ASM.ora
GPnP profile文件保存的是集群的配置信息。这个XML 文件里记录了如下信息:
1.网络接口和IP地址(公网和私网)
2.ASM diskstring和spfile信息
注意:Oracle不支持手动修改profile.xml文件,直接对它的修改可能导致无法修复的问题,最终导致在所有节点重建Clusterware。
RAC环境千万不能执行 create spfile from pfile 。 (因为创建出来的文件默认位置在节点本地,且更新了gpnp profile,集群访问不到)
ASM 实例的自动内存管理机制
默认情况下,ASM 实例会启动自动内存管理,即使没有指定MEMORY_TARGET参数。 MEMORY_TARGET 参数的默认值在大部分情况下都合适。 这个也是ASM 内存管理这块唯一一个需要设置的参数。
Oracle 强烈建议对ASM 使用自动内存管理。
如果没有指定MEMORY_TARGET 参数,但指定了其他与内存相关的参数,Oracle 内部会自动根据这些参数计算出合适的值来赋给MEMORY_TARGET。
三
建议设置的 ASM 参数
1 ASM_DISKGROUPS
ASM_DISKGROUPS 参数指定ASM 实例在启动时需要挂载的disk group 列表。 在我们启动ASM 实例时指定NOMOUNT 选项或者我们执行ALTER DISKGROUP ALL MOUNT时,Oracle 会忽略ASM_DISKGROUPS参数的设置。
ASM_DISKGROUPS 参数是动态参数,如果我们使用SPFILE 来启动ASM 实例,那么我们就不需要设置ASM_DISKGROUPS参数,在我们成功创建或者MOUNT disk group之后,ASM 会自动把disk group 的信息添加到这个参数中。
同样,在我们drop 或者dismount disk group 的时候,ASM 也会自动的从这个参数中移除相关的信息。
查看当前值:
SQL> show parameter asm_diskgroups
手工的进行设置:
ALTER SYSTEM SET ASM_DISKGROUPS = DATA, FRA;
2 ASM_DISKSTRING
ASM_DISKSTRING 参数用来执行ASM 实例discover的路径,如果有多个路径,那么用逗号进行分割,并且在路径中可以使用通配符。 在discover的过程中,只要匹配任意一个路径的disk都会被识别到,同一个disk 只能被匹配一次。
ASM_DISKSTRING 参数中字符串的格式有ASM library 和操作系统决定。
查看我们系统当前的值:
SQL> show parameter asm_diskstring
这个值是我们在创建ASM 实例的时候指定的,如果不指定,我们都看不到我们创建的raw设备。
3 ASM_POWER_LIMIT
ASM_POWER_LIMIT 参数指定disk group rebalance的default power。
如果disk group 的compatible.asm属性大于11.2.0.2,那么该参数的值范围是0 到 1024.
如果 disk group的compatible.asm属性小于11.2.0.2,那么该参数值只能从0到11.
该参数设置的越高,rebalancing 操作就会进行的越快,但是带来的影响就是需要高IO ,也需要更多的rebalancing 进程来处理。
-- 查看compatible
col name for a20
col value for a20
select name,value from v$asm_attribute where name like '%asm%';
查看limit
SQL> show parameter limit
查看ASM rebalancing 操作:
SQL> select * from v$asm_operation;
将XXX 这个power改成3:
SQL> alter diskgroup xxx rebalance power 3;
Diskgroup altered.
速度查看:
SQL> select group_number, operation, state, power, est_minutes from v$asm_operation;
注意: rebalance 的进程是:asm_arb
asm 兼容性、asm 主要参数管理的更多相关文章
- ASM 磁盘、目录的管理
--======================== -- ASM 磁盘.目录的管理 --======================== ASM磁盘是ASM体系结构的重要组成部分,ASM磁盘由ASM ...
- OCM_第十六天课程:Section7 —》GI 及 ASM 安装配置 _安装 GRID 软件/创建和管理 ASM 磁盘组/创建和管理 ASM 实例
注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...
- 使用ASM获得JAVA类方法参数名
在Java1.8之后,可以通过反射API java.lang.reflect.Executable.getParameters来获取到方法参数的元信息,(在使用编译器时加上-parameters参数, ...
- 【TTS】传输表空间AIX asm -> linux asm
[TTS]传输表空间AIX asm -> linux asm 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌 ...
- 【TTS】传输表空间Linux asm -> AIX asm
[TTS]传输表空间Linux asm -> AIX asm 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌 ...
- ORACLE11g R2【RAC+ASM→RAC+ASM】
ORACLE11g R2[RAC+ASM→RAC+ASM] 本演示案例所用环境:RAC+ASM+OMF primary standby OS Hostname node1,node2 dgnode ...
- ORACLE10g R2【RAC+ASM→RAC+ASM】
ORACLE10g R2[RAC+ASM→RAC+ASM] 本演示案例所用环境:RAC+ASM+OMF primary standby OS Hostname node1,node2 dgnode ...
- SpringBoot2 参数管理实践,入参出参与校验
一.参数管理 在编程系统中,为了能写出良好的代码,会根据是各种设计模式.原则.约束等去规范代码,从而提高代码的可读性.复用性.可修改,实际上个人觉得,如果写出的代码很好,即别人修改也无法破坏原作者的思 ...
- Windows Storage Server 2008 R2 Standard(64位)之ASM(Automated Storage Manager)管理
一.服务器管理器之LUN管理 服务器管理器的LUN管理,右键可删除(注意别删了系统分区在的LUN) 二.ASM(Automated Storage Manager) view 高级信息,请不要修改相关 ...
随机推荐
- android开发系列之ContentObserver
在这篇博客里面我想要分享一下自己最近在项目里面遇到一个比较好的数据同步解决方案,首先让我们先来看看该方案的应用场景:我们在客户端本地利用数据库缓存了一些数据,当我们检测到数据库里面的数据发生变化的时候 ...
- GenericServlet 、Servlet和httpServler他们之间的关系
1.GenericServlet类是所有Servlet类的祖先类. 2.HttpServlet类继承了GenericServlet类. 3.Servlet有两个非常重要的的对象,可以说是java we ...
- java中BigDecimal的学习
干着java的活,但是看的都是一些偏底层的东西(或者我根本就没有看),有点荒废了java的学习. 最近一直在用到一个类是BigDecimal,但都是模棱两可地在那儿用,并没有深入研究这个类的细节,感觉 ...
- 下一代Apache Hadoop MapReduce框架的架构
背景 随着集群规模和负载增加,MapReduce JobTracker在内存消耗,线程模型和扩展性/可靠性/性能方面暴露出了缺点,为此需要对它进行大整修. 需求 当我们对Hadoop MapReduc ...
- InputFormat的认识
InputFormat 负责处理MR的输入部分. 有三个作用: 一.验证作业的输入是否规范. 二.把输入文件切分成InputSplit. 三.提供RecordReader 的实现类,把InputSpl ...
- centOS中修改语言环境
在终端中打开 键入 vim ~/.bashrc 在最后一行键入 export LANG="zh_CH.UTF-8"
- 向oracle中插入date时,持久层sql怎么写???
public class EmpDao { public void addEmp(Emp emp) throws SQLException { QueryRunner runner = new Que ...
- mnesia的脏写和事物写的测试
在之前的文章中,测试了脏读和事物读之间性能差别,下面测试下脏写和事物写之间的性能差别: 代码如下: -module(mnesia_text). -compile(export_all). -recor ...
- Hibernate的配置文件 Hibernate.cfg.xml与xxx.hbm.xml
1.hibernate.cfg.xml配置如下: (数据库连接配置) <?xml version="1.0" encoding="UTF-8"?>& ...
- 【python】使用python发送文本内容邮件
下面提供了一个使用python做的发送文本内容的邮件代码,能够在邮件内容中设置文字颜色,大小,换行等功能. #auther by zls #_*_coding:utf-8_*_ import sys ...