专栏首页从ORACLE起航,领略精彩的IT技术。记录一则AIX使用裸设备安装OracleRAC的问题

记录一则AIX使用裸设备安装OracleRAC的问题

需求背景:在AIX6.1上安装Oracle 10g RAC,一线工程师反馈节点2运行root脚本无法成功,跟进排查发现实际上底层存储磁盘的准备工作就存在问题。 客户要求底层存储选用裸设备方式,所以必须要配合HACMP创建并发卷组来实现。 其实我们标准化最佳实践是建议选用ASM的,一来不需要再关注条带化,二来可以完全不需要HACMP(虽然10g版本的ocr和votedisk必须在裸设备上,但是由于ocr和votedisk特殊性,不必使用并发卷组,即不用使用HACMP)日后运维诊断问题时也更加清晰。

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

  • 1.AIX如何查看磁盘大小
  • 2.AIX查看磁盘可用性
  • 3.AIX查看pv/vg/lv
  • 4.AIX创建lv
  • 5.AIX查看vg里的lv信息
  • 6.是否需要清除pvid
  • 7.AIX扫描新磁盘
  • 8.AIX修改磁盘reserve_policy
  • 9.AIX查询/清除key
  • 10.在其他节点导入已创建的vg
  • 11.HACMP 停止/启动
  • 12.安装Oracle使用的盘全路径
  • 13.Oracle目录和CRS目录,注意不能互相包含
  • 14.数据盘裸设备创建举例

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且要求使用裸设备的客户和项目。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • OCP考点实战演练

    本系列宗旨:真正掌握OCP考试中所考察的技能,坚决不做Paper OCP! 实验环境:RHEL 6.4 + Oracle 11.2.0.4 OCP考点实战演...

    Alfred Zhao
  • Oracle巡检脚本:ORAWatcher.sh

    Alfred Zhao
  • 记录一则ASM实例阻塞,rbal进程异常的案例

    Alfred Zhao
  • python 字符串常用操作

    字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。

    py3study
  • 2016年大数据和分析市场的21个趋势预测

    导读:随着社交媒体、移动化和云计算的发展,数据分析及相关的技术已经作为一款具有颠覆性的技术在这个数字时代占有了一席之地了。在过去的2015年中,我们已经看到对...

    灯塔大数据
  • Linux 中不用再 ↑ ↓ 了

    Linux 下,如果要执行一条或多条之前输过的指令,要怎么处理?很多人会想到使用上下箭头去翻查历史输入的命令。这当然是可以了,除了这种方法,本文再介绍另外 5 ...

    LieBrother
  • 【犀牛鸟论道】揭秘腾讯云网络优化型实例N1:450w PPS网络转发性能如何实现?

    云计算正在经历全新的变革,在强大的计算力之上,业务场景正在驱动技术的创新与变革。9月25日,腾讯云正式发布第三代云服务器(CVM)矩阵,最新的计算、存储、网络和...

    腾讯高校合作
  • 高性能线程间消息传递库Disruptor概述

    Disruptor是一个高性能的线程间消息传递库。它源于LMAX对并发性 、性能和非阻塞算法的研究,如今构成了其Exchange基础架构的核心部分。

    黄泽杰
  • hadoop常见问题解答

    我是攻城师
  • 【数据通天塔来了】谷歌、Facebook、微软、推特四巨头联手,打通全球数据壁垒!

    【新智元导读】今天,谷歌、Facebook、微软和Twitter四大互联网巨头联手宣布了一个“数据传输大计”,旨在号召不同平台间数据的无障碍传输。可移植性和互操...

    新智元

扫码关注云+社区

领取腾讯云代金券