RAID5升级为RAID6需要借助逻辑卷的方法实现,逻辑卷中,可以通过pvmove实现数据动态移动功能。

具体步骤:

(一)创建RAID5:

mdadm-C/dev/md5-l5-n3/dev/sda{5..7}###创建raid5

pvcreate/dev/md5###做成物理卷

vgcreatevg01/dev/md5##创建卷组

lvcreate-l100%FREE-nlv01vg01##创建逻辑卷

mkfs.ext3/dev/vg02/lv02##格式化

mount/dev/vg02/lv02/oracle###挂载逻辑卷到目录中,然后拷贝数据到目录中,用来检测数据是否被破坏。

(二):将RAID5中的一块盘移除,用来创建RAID6

mdadm/dev/md5-f/dev/sda5-r/dev/sda5##将md5中的一块设备破快并且移除

mdadm-C/dev/md6-l6-n4/dev/sda5/dev/sda8missingmissing##形成新的RAID6.

pvcreate/dev/md6

vgextendvg01/dev/md6##将RAID6加入卷组

pvmove/dev/md5##关键部分用于释放md5raid5中的数据,这将会写入到同一个卷组vg02中的raid6队列中的磁盘中。这里一定要等到pvdisplay查看显示出/dev/md5所有的空间全部释放后,才能执行后续的操作。

(三):将RAID5中的块设备添加到md6中

vgreducevg02/dev/md5##移除物理卷

mdadm-S/dev/md5##停掉md5

mdadm--zero/dev/sda6##将超级块上的信息清除

mdadm--zero/dev/sda7

mdadm/dev/md6-a/dev/sda{6,7}##将RAID5S释放的块设备加入到RAID6中。

到此为止,就升级成功了,要看是否成功,可以查看挂载目录oracle中的数据是否有丢失,没有丢失则升级成功。

这里还可以使用iostat查看块设备的数据状态,在移除块设备和添加块设备的时候。