设为首页 收藏本站
查看: 1331|回复: 0

[经验分享] Oracle技术之Linux 建立软raid

[复制链接]

尚未签到

发表于 2018-9-26 08:43:38 | 显示全部楼层 |阅读模式
  1、Raid定义
  RAID,全称Redundant Array of Inexpensive Disks,中文名为廉价磁盘冗余阵列。RAID可分为软RAID和硬RAID,软RAID是通过软件实现多块硬盘冗余的。而硬RAID是一般通过RAID卡来实现RAID的。前者配置简单,管理也比较灵活。对于中小企业来说不失为一最佳选择。硬RAID往往花费比较贵。不过,在性能方面具有一定优势。
  2、RAID分类
  RAID可分为以下几种,做个表格认识下:
  RAID 0 :存取速度最快 没有容错
  RAID 1 :完全容错 成本高,硬盘使用率低。
  RAID 3 :写入性能最好 没有多任务功能
  RAID 4 :具备多任务及容错功能 Parity 磁盘驱动器造成性能瓶颈
  RAID 5 :具备多任务及容错功能 写入时有overhead
  RAID 0+1 :速度快、完全容错 成本高
  3、Linux RAID 5 实验详解
  假设我有4块硬盘,(没有条件的朋友可以用虚拟机设置出4块硬盘出来)。分别为/dev/sda /dev/sdb /dev/sdc /dev/sdd。
  (1)首先做的就是分区了。
  [root@localhost /]# fdisk /dev/sda
  Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
  Building a new DOS disklabel. Changes will remain in memory only,
  until you decide to write them. After that, of course, the previous
  content won't be recoverable.
  Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
  Command (m for help): n #按n创建新分区
  Command action
  e extended
  p primary partition (1-4) #输入p 选择创建主分区
  p
  Partition number (1-4): 1 #输入 1 创建第一个主分区
  First cylinder (1-130, default 1): #直接回车,选择分区开始柱面这里就从 1 开始
  Using default value 1
  Last cylinder or +size or +sizeM or +sizeK (1-102, default 130):
  Using default value 130
  Command (m for help): w #然后输入w写盘

  The partition table has been>  Calling ioctl() to re-read partition table.
  Syncing disks.
  其它分区照这样做全部分出一个区出来。下面是总分区信息:
  [root@localhost /]# fdisk -l
  Disk /dev/sda: 1073 MB, 1073741824 bytes
  255 heads, 63 sectors/track, 130 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot Start End Blocks>  /dev/sda1 1 130 1044193+ 83 Linux
  Disk /dev/sdb: 1073 MB, 1073741824 bytes
  255 heads, 63 sectors/track, 130 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot Start End Blocks>  /dev/sdb1 1 130 1044193+ 83 Linux
  Disk /dev/sdc: 1073 MB, 1073741824 bytes
  255 heads, 63 sectors/track, 130 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot Start End Blocks>  /dev/sdc1 1 130 1044193+ 83 Linux
  Disk /dev/sdd: 1073 MB, 1073741824 bytes
  255 heads, 63 sectors/track, 130 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot Start End Blocks>  /dev/sdd1 1 130 1044193+ 83 Linux
  (2)下一步就是创建RAID了。
  [root@localhost ~]# mdadm --create /dev/md0 --level=5 --raid-devices=3 --spare-devices=1 /dev/sd[a-d]1 #意思是创建RAID设备名为md0, 级别为RAID 5
  mdadm: array /dev/md0 started. 使用3个设备建立RAID,空余一个做备用。
  OK,初步建立了RAID了,我们看下具体情况吧。
  [root@localhost ~]# mdadm --detail /dev/md0
  /dev/md0:
  Version : 00.90.01
  Creation Time : Fri Aug 3 13:53:34 2007
  Raid Level : raid5

  Array>
  Device>  Raid Devices : 3
  Total Devices : 4
  Preferred Minor : 0
  Persistence : Superblock is persistent
  Update Time : Fri Aug 3 13:54:02 2007
  State : clean
  Active Devices : 3
  Working Devices : 4
  Failed Devices : 0
  Spare Devices : 1
  Layout : left-symmetric

  Chunk>  Number Major Minor RaidDevice State
  0 8 1 0 active sync /dev/sda1
  1 8 17 1 active sync /dev/sdb1
  2 8 33 2 active sync /dev/sdc1
  3 8 49 -1 spare /dev/sdd1
  UUID : e62a8ca6:2033f8a1:f333e527:78b0278a
  Events : 0.2
  (3)让RAID开机启动。配置RIAD配置文件吧。默认名字为mdadm.conf,这个文件默认是不存在的,要自己建立。该配置文件存在的主要作用是系统启动的时候能够自动加载软RAID,同时也方便日后管理。
  说明下,mdadm.conf文件主要由以下部分组成:DEVICES选项制定组成RAID所有设备, ARRAY选项指定阵列的设备名、RAID级别、阵列中活动设备的数目以及设备的UUID号。
  [root@localhost ~]# mdadm --detail --scan > /etc/mdadm.conf
  [root@localhost ~]# cat /etc/mdadm.conf
  ARRAY /dev/md0 level=raid5 num-devices=3 UUID=e62a8ca6:2033f8a1:f333e527:78b0278a
  devices=/dev/sda1,/dev/sdb1,/dev/sdc1,/dev/sdd1
  #默认格式是不正确的,需要做以下方式的修改:
  [root@localhost ~]# vi /etc/mdadm.conf
  [root@localhost ~]# cat /etc/mdadm.conf
  devices /dev/sda1,/dev/sdb1,/dev/sdc1,/dev/sdd1
  ARRAY /dev/md0 level=raid5 num-devices=3 UUID=e62a8ca6:2033f8a1:f333e527:78b0278a
  (4)将/dev/md0创建文件系统,
  [root@localhost ~]# mkfs.ext3 /dev/md0
  mke2fs 1.35 (28-Feb-2004)
  Filesystem label=
  OS type: Linux

  Block>
  Fragment>  261120 inodes, 522048 blocks
  26102 blocks (5.00%) reserved for the super user
  First data block=0
  Maximum filesystem blocks=536870912
  16 block groups
  32768 blocks per group, 32768 fragments per group
  16320 inodes per group
  Superblock backups stored on blocks:
  32768, 98304, 163840, 229376, 294912
  Writing inode tables: done
  Creating journal (8192 blocks): done
  Writing superblocks and filesystem accounting information: done
  This filesystem will be automatically checked every 21 mounts or
  180 days, whichever comes first. Use tune2fs -c or -i to override.内容
  (5)挂载/dev/md0到系统中去,我们实验是否可用:
  [root@localhost ~]# cd /
  [root@localhost /]# mkdir mdadm
  [root@localhost /]# mount /dev/md0 /mdadm/
  [root@localhost /]# cd /mdadm/
  [root@localhost mdadm]# ls
  lost+found
  [root@localhost mdadm]# cp /etc/services .
  [root@localhost mdadm]# ls
  lost+found services
  (6)好了,如果其中某个硬盘坏了会怎么样呢?系统会自动停止这块硬盘的工作,然后让后备的那块硬盘顶上去工作。我们可以实验下。
  [root@localhost mdadm]# mdadm /dev/md0 --fail /dev/sdc1
  mdadm: set /dev/sdc1 faulty in /dev/md0
  [root@localhost mdadm]# cat /proc/mdstat
  Personalities : [raid5]
  md0 : active raid5 sdc1[3](F) sdd1[2] sdb1[1] sda1[0] # F标签以为此盘为fail.
  2088192 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
  unused devices:
  (7)如果我要移除一块坏的硬盘或添加一块硬盘呢?
  #删除一块硬盘
  [root@localhost mdadm]# mdadm /dev/md0 --remove /dev/sdc1
  mdadm: hot removed /dev/sdc1
  [root@localhost mdadm]# cat /proc/mdstat
  Personalities : [raid5]
  md0 : active raid5 sdd1[2] sdb1[1] sda1[0]
  2088192 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
  unused devices:
  #增加一块硬盘
  [root@localhost mdadm]# mdadm /dev/md0 --add /dev/sdc1
  mdadm: hot added /dev/sdc1
  [root@localhost mdadm]# cat /proc/mdstat
  Personalities : [raid5]
  md0 : active raid5 sdc1[3] sdd1[2] sdb1[1] sda1[0]
  2088192 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
  unused devices:
  oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-602159-1-1.html 上篇帖子: 有关Oracle角色管理 下篇帖子: 安装oracle database11gr2
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表