需求背景:在AIX6.1上安装Oracle 10g RAC,一线工程师反馈节点2运行root脚本无法成功,跟进排查发现实际上底层存储磁盘的准备工作就存在问题。

客户要求底层存储选用裸设备方式,所以必须要配合HACMP创建并发卷组来实现。

其实我们标准化最佳实践是建议选用ASM的,一来不需要再关注条带化,二来可以完全不需要HACMP(虽然10g版本的ocr和votedisk必须在裸设备上,但是由于ocr和votedisk特殊性,不必使用并发卷组,即不用使用HACMP)日后运维诊断问题时也更加清晰。

说明:本文侧重点并不是描述如何定位解决问题,只是偏重于总结平日作为DBA较少接触用到的命令。

本次技术支持用到的知识点汇总:

1.AIX如何查看磁盘大小

--bootinfo -s hdisk 返回磁盘大小,单位是MB
bootinfo -s hdisk7
getconf DISK_SIZE /dev/hdisk7

2.AIX查看磁盘可用性

lsdev -Cc disk

3.AIX查看pv/vg/lv

--查看pv
lspv
--查看vg
lsvg
--查看vg下有哪些lv
lsvg -l ocr1
--查看指定lv的详细信息
lslv lvocr1

检查lspv看到的pv对应的vg状态,是否为concurrent,即并发卷组(concurrent volume groups)。

需要特别注意如果并发卷组是人为在两边启动的,状态都为active,只有通过hacmp自动拉起的并发卷组才会显示为concurrent。

4.AIX创建lv

10gRAC建议创建5个vg(Add a scanable volume group):

ocr1, ocr2, vote1, vote2, vote3

--smit创建vg举例:
volume group name:ocr1
physical Partition size in megabytes:256
physical volume names:hdisk7
create vg concurrent capable? enhanced concurrent

划5个lv:其中2个ocr,3个votedisk:

lvocr1
lvocr2
lvvote1
lvvote2
lvvote3 --smit mklv举例创建lvocr1:
Logical volume name:lvocr1
VOLUME GROUP name:ocr1
Number of LOGICAL Partitions:4
Physical VOLUME names:hdisk7
Logical volume type:raw

5.AIX查看vg里的lv信息

#lsvg -l rootvg 查看rootvg里的LV
lsvg -l ocr1

6.是否需要清除pvid

如果是采用ASM,必须清除;如果是选用裸设备,要配合使用并发卷组,不需要。

--清除pvid的命令:
varyoffvg ocr1
chdev -l hdisk7 -a pv=clear

7.AIX扫描新磁盘

cfgmgr -v

8.AIX修改磁盘reserve_policy

chdev -l hdisk7  -a reserve_policy=no_reserve
chdev -l hdisk8 -a reserve_policy=no_reserve

9.AIX查询/清除key

如果某个盘查询key有值,说明盘被锁:

--查询key
/usr/DynamicLinkManager/bin/dlmpr -k --清除key
/usr/DynamicLinkManager/bin/dlmpr -c hdisk7
/usr/DynamicLinkManager/bin/dlmpr -c hdisk8

10.在其他节点导入已创建的vg

--importvg on other nodes
importvg -y ocr1 hdisk8
varyonvg ocr1 importvg -y ocr2 hdisk8
varyonvg ocr2 --smit配置资源组属性举例:
smit hacmp -> Extended Configuration -> HACMP Extended Resource Group Configuration -> Change/Show Resources and Attributes for a Resource Group.

11.HACMP 停止/启动

--HACMP 停止/启动
smit clstop
smit clstart

12.安装Oracle使用的盘全路径

/dev/rlvocr1
/dev/rlvocr2
/dev/rlvvote1
/dev/rlvvote2
/dev/rlvvote3

13.Oracle目录和CRS目录,注意不能互相包含

ORACLE_HOME=/oracle/db
ORA_CRS_HOME=/oracle/crs

14.数据盘裸设备创建举例

mklv -y ora_system_01 -u oracle -G dba -t raw -T O -w n -r -n -s 4M datavg 30 hdisk21 hdisk22 hdisk23 hdisk24 hdisk25
mklv -y ora_sysaux_02 -u oracle -G dba -t raw -T O -w n -r -n -s 4M datavg 30 hdisk25 hdisk21 hdisk22 hdisk23 hdisk24 --用于快速随机排列组合磁盘的条带化顺序(专家支持提供的shell脚本):
#hdisk21-hdisk25,随机排列组合:
n=21
s=""
while [ $n -lt 26 ] ; do
s=$s" hdisk$n"
((n=n+1))
done
#echo $s
n=1
while [ $n -lt 6 ] ; do
((n=n+1))
((j=n%5+21))
echo hdisk$j `echo $s|sed -e "s/hdisk$j//" `
done --结果示例如下:
hdisk23 hdisk21 hdisk22 hdisk24 hdisk25
hdisk24 hdisk21 hdisk22 hdisk23 hdisk25
hdisk25 hdisk21 hdisk22 hdisk23 hdisk24
hdisk21 hdisk22 hdisk23 hdisk24 hdisk25
hdisk22 hdisk21 hdisk23 hdisk24 hdisk25

注意:这里前提假设PP=1G,30个PP就是30G。磁盘的顺序不同,条带化分布不同。同时需要注意,如果某文件只需要2G大小,实际只需要2块盘,如果依然写5块盘,则至少要占用5G空间(因为PP最小分配单位目前分配的是1G,5块盘就是5G)。

写在后面:

如果能按照最佳实践选用ASM就不用关心上述这些条带化和空间问题了。

因为乙方工作特殊性,接触的客户环境差异过大,所以在这个Oracle最新版本已经出到19c的时代,也还存有新装10gRAC且要求使用裸设备的客户和项目。

记录一则AIX使用裸设备安装OracleRAC的问题的更多相关文章

  1. AIX用裸设备给表空间添加数据文件

    近期在对生产数据库表空间进行扩容,目的是春节期间保证表空间的使用率,不会出现紧急告警信息. 1.查看表空间使用率的SQL语句 col tablespace_name for a16 col SUM_S ...

  2. aix上使用裸设备安装oracle10g数据库

    一.检查系统信息 [root@aix222 /]# oslevel -r 5300-08 [root@aix222 /]# prtconf | grep -i mem Memory Size: 190 ...

  3. AIX 系统补丁格式

    AIX 系统版本标准格式: 5300-06-11-0918 VR00-TL-SP-YYWW     5300-06-11-0918              ^-------- YYWW(2009年第 ...

  4. OGG常见问题处理

    1403: ORA-01403: No data found 在运行PL/SQL块.存储过程.函数.触发器等,假设须要进行操作的记录没有查询到.则会返回1403的错误 Goldengate中的1403 ...

  5. GoldenGate 异常处理预案

    异常处理一般步骤 如果GoldenGate复制出现异常,可以通过以下步骤尝试解决问题: 1)        通过ggsci>view report命令查找ERROR字样,确定错误原因并根据其信息 ...

  6. AIX 第6章 指令记录

    AIX 存储管理 物理卷的概念和管理 卷组的概念和管理 逻辑卷的基本概念和管理 文件系统在逻辑卷上构建 日志文件系统的管理 镜像提高数据可用性 应用系统所需的存储切换 换页空间的功能和管理     在 ...

  7. AIX 第5章 指令记录

    AIX引导过程 AIX不同引导模式 AIX的关闭 AIX的计划任务 AIX服务的管理 AIX的常用日志 POST=Power On Self Test   rc.boot 的三次调用 /etc/ini ...

  8. AIX 第3章 指令记录

    [ssdb01.shz.hn|oracle|/home/oracle]$oslevel -rq  --查看系统已安装的维护级别 Known Recommended Maintenance Levels ...

  9. 使用介质设备安装 AIX 以通过 HMC 安装分区

    使用介质设备安装 AIX 以通过 HMC 安装分区 原文:https://www.ibm.com/support/knowledgecenter/zh/ssw_aix_72/com.ibm.aix.h ...

随机推荐

  1. Spring Cloud中Hystrix、Ribbon及Feign的熔断关系是什么?

    导读 今天和大家聊一聊在Spring Cloud微服务框架实践中,比较核心但是又很容易把人搞得稀里糊涂的一个问题,那就是在Spring Cloud中Hystrix.Ribbon以及Feign它们三者之 ...

  2. Excel催化剂开源第50波-Excel与PowerBIDeskTop互通互联之第四篇

    答应过的全盘分享,也必承诺到底,此篇PowerBI功能分享的最后一篇,讲述如何导出数据模型的元数据,笔者定义其为模型的数据字典. 此篇对应功能实现出自:第6波-导出PowerbiDesktop模型数据 ...

  3. 个人永久性免费-Excel催化剂功能第19波-Excel与Sqlserver零门槛交互-查询篇

    对频繁使用Excel的高级应用的尝试用户来说,绕不过的一个问题Excel的性能问题,对于几万条数据还说得过去,上了10万行的数据量,随便一个函数公式的运算都是一个不小的负荷,有些上进一点的用户会往Ac ...

  4. [AOP拦截 ]SpringBoot+Quartz Aop拦截Job类中的方法

    ​ 最近在工作使用boot+quartz整合,开发定时调度平台,遇到需要对Quartz的Job进行异常后将异常记录到日志表的操作,第一反应就想到了使用Spring的AOP,利用AfterThrowin ...

  5. JAVA面试题 线程的生命周期包括哪几个阶段?

    面试官:您知道线程的生命周期包括哪几个阶段? 应聘者: 线程的生命周期包含5个阶段,包括:新建.就绪.运行.阻塞.销毁. 新建:就是刚使用new方法,new出来的线程: 就绪:就是调用的线程的star ...

  6. C#后台HttpWebRequest模拟跨域Ajax请求,注册Windows服务到服务器上

    项目需求,暂且叫A.B公司吧.我们公司需要从A公司哪里读取机器上的数据,放到我们数据库中.然后再将数据库中存的数据,提供一个接口,B公司来调用,大概这个意思. 好了,言归正传.这个是之前做好的界面,用 ...

  7. CF175C Geometry Horse(贪心)

    CF175C 贪心,注意有不少细节,很容易死循环TLE 贪心是显而易见的,每次枚举价值最小的物品,进行销毁操作 朴素的枚举每一件物品复杂度为\(O(\sum k_i)\),明显超时 我们注意到朴素的+ ...

  8. 如何在Windows上使用Python进行开发

    本文由葡萄城技术团队于原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 一直以来C#都是微软在编程语言方面最为显著的Tag,但时至今日Python ...

  9. CentOS7源码安装Nginx

    系统平台:腾讯云服务器 CentOS 7.3 64位 一.安装编译工具及库文件 [root@VM_0_5_centos ~]# yum install -y make zlib zlib-devel ...

  10. 【Android】java.lang.StackOverflowError: stack size 8MB

    最近遇到的问题,报了两个错误,如下: java.lang.StackOverflowError: stack size 8MB android.os.TransactionTooLargeExcept ...