Chinaunix首页 | 论坛 | 博客
  • 博客访问: 58995
  • 博文数量: 13
  • 博客积分: 1450
  • 博客等级: 上尉
  • 技术积分: 161
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-30 11:06
文章分类

全部博文(13)

文章存档

2013年(1)

2011年(6)

2010年(2)

2008年(4)

我的朋友

分类:

2010-05-08 23:26:36

环境: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  
阅读(1191) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-09-16 18:31:29

你说的对!