环境:HP RX8640两台上面跑oracle RAC,上有三个VG,由于RAC的原因三个VG均为共享的VG(VGDATA01-03)
要求:客户要求在这个三个VG中为两台机器划出90个LV
大概步骤:
1、停应用、停ORACLE数据库
2、停双机 cmhaltcl -f -v
此时发现双机不能正常停止,后来再次确认才发现数据库没有真正停下,报设备忙。浪费较多时间。
*以后在做操作的时候,应该自己确认一下有没有关闭,相信自己的眼镜比相信客户的说的要好
3、关闭数据库后再次停止数据库,双机正确停止
4、vgchange -a n vgdata01
vgchange -a n vgdata02
vgchange -a n vgdata03
*反激活VG的原因是需要把三个VG从cluster模式里面拿出来,不反激活的话该操作不能进行
vgchange -c n vgdata01
vgchange -c n vgdata02 将VG从cluster模式里面拿出来
vgchange -c n vgdata03
5、再次激活VG以便开始划分LV
vgchange -a y vgdata01
vgchange -a y vgdata02
vhchange -a y vgdata03
6、划分LV
lvcreate -L 4096 -n fmis0080 /dev/vgdata01
.....建立90个LV在三个VG里面,过程略。。。
*如果是不把vg从cluster模式里面拿出来也不能进行LV划分的操作
7、vgexport -p -s -m /tmp/vgdata01.map /dev/vgdata01
vgexport -p -s -m /tmp/vgdata02.map /dev/vgdata02
vgexport -p -s -m /tmp/vgdata03.map /dev/vgdata03
*将VG的相关信息导出到文件中
8、scp /tmp/vgdata01.map node2:/tmp
scp /tmp/vgdata02.map node2:/tmp
scp /tmp/vgdata03.map node2:/tmp
*拷贝到另一个节点,为导入做准备
9、在另一个节点做
vgexport vgdata01
vgexport vgdata02
vgexport vgdata03
*删除相应的VG
9.1
mkdir /dev/vgdata01
mkdir /dev/vgdata02 建立VG文件夹
mkdir /dev/vgdata03
9.2
mknod /dev/vgdata01/group c 64 0x20000
mknod /dev/vgdata02/group c 64 0x30000 建立group设备文件
mknod /dev/vgdata03/group c 64 0x40000
*注意命令末尾的主要一定要和主节点对应。在主节点上使用ls -l /dev/vgdata01/group去确认
9.3
vgimport -v -s -m /tmp/vgdata01.map /dev/vgdata01
vgimport -v -s -m /tmp/vgdata02.map /dev/vgdata02 导入相应VG
vgimport -v -s -m /tmp/vgdata03.map /dev/vgdata03
9.4
chmod 777 /dev/vgdata01 /dev/vgdata02 /dev/vgdata03
chmod 660 /dev/vgdata01/r*
chmod 660 /dev/vgdata02/r*
chmod 660 /dev/vgdata03/r* 修改相关权限
chown oracle:dba /dev/vgdata01/r*
chown oracle:dba /dev/vgdata02/r*
chown oracle:dba /dev/vgdata03/r*
*导入时发现错误,字符设备文件和主节点不一致。原因是由于主节点不知道为什么多了很多的链接文件,导致很多的链接文件导入时同样被认为是块设备,由此生成了一些和主节点不一致的文件。经反复确认,这些链接文件是无效的,后来修改了map文件,删除了这些有链接文件的导入条目,故障解决。
10、回到主节点操作
此时尝试启动cluster,不成功。
再尝试将VG改回cluster模式再启动MC/SG也不成功,总是提示和配置模式冲突,手动激活VG也无效。最终确认是少了一个参数S(大写),这个参数是改变VG到共享模式,一直纳闷为什么开始都没有改动过这个参数,这里却需要增加这个参数。命令如下:
vgchange -c y -S y vgdata01
vgchange -c y -S y vgdata02 修改VG到cluster模式和共享模式
vgchange -c y -S y vgdata03
*此时vgdisplay 查看VG的状态已正常
11、再次启动cluster
cmruncl -v
*cluster启动成功
此时操作完毕,启动数据库和应用正常。
总结:
1、永远不要低估你所做的操作难度,这次原本以为简单的操作也出现这么多的问题。因为往往出现的问题都是你想象不到的。
2、开始做的时候,一定要和客户确认有没有做备份。因为只要有数据不丢你都可以从头再来
3、仔细查看日志文件,不要漏过任何信息。因为出现问题时,这里有是你走出迷宫的钥匙
4、任何操作都要自己去确认,要相信自己的眼睛多过相信的客户的话。
与这次操作相关的一些日志文件位置
/var/adm/syslog/syslog.log
/etc/cmcluster/.....
/etc/cmcluster/rac1/....log
阅读(1218) | 评论(1) | 转发(0) |