MySql数据库服务器使用的RAID存储架构介绍

实际上MySQL数据库就是个软件,它其实就是用编程语言写的一套数据库管理软件而已,底层就是磁盘来存储数据,基于内存来提升数据读写性能,然后设计了复杂的数据模型,帮助我们高效的存储和管理数据。所以MySQL数据库软件都是安装在一台linux服务器上的,然后启动MySQL的进程,就是启动了一个MySQL数据库。

MySQL运行过程中,它需要使用CPU、内存、磁盘和网卡这些硬件,但是不能直接使用,都是通过调用操作系统提供的接口,依托于操作系统来使用和运行的,然后linux操作系统负责操作底层的硬件。如下图所示:
在这里插入图片描述
一般来说,很多数据库部署在机器上的时候,存储都是搭建的RAID存储架构,其实这个RAID很多人以为非常的深奥,确实这个概念比较难以理解,而且说深了其实里面的技术含量很高,但是如果简单说一下,也是每个人都能理解的。说白了,RAID就是一个磁盘冗余阵列,什么意思呢?

假设服务器里的磁盘就一块,那万一 一块磁盘的容量不够怎么办?此时是不是就可以再搞几块磁盘出来放在服务器里?

现在多搞了几块磁盘,机器里有很多块磁盘了,不好管理啊,怎么在多块磁盘上存放数据呢?

所以就是针对这个问题,在存储层面往往会在机器里搞多块磁盘,然后引入RAID这个技术,大致理解为用来管理机器里的多块磁盘的一种磁盘阵列技术!

有了它以后,你在往磁盘里读写数据的时候,它会告诉你应该在哪块磁盘上读写数据,如下图:
在这里插入图片描述
有了RAID这种多磁盘阵列技术之后,是不是就可以在一台服务器里加多块磁盘,扩大磁盘存储空间了?

当往磁盘里写数据的时候,通过RAID技术可以帮助我们选择一块磁盘写入,在读取数据的时候,我们也知道从哪块磁盘去读取。除此之外,RAID技术很重要的一个作用,就是它还可以实现数据冗余机制。

所谓的数据冗余机制,就是如果你现在写入了一批数据在RAID中的一块磁盘上,然后这块磁盘现在坏了,无法读取了,那么岂不是你就丢失了一波数据?如下图所示:
在这里插入图片描述
所以其实有的RAID磁盘冗余阵列技术里,是可以把你写入的同样一份数据,在两块磁盘上都写入的,这样可以让两块磁盘上的数据一样,作为冗余备份,然后当你一块磁盘坏掉的时候,可以从另外一块磁盘读取冗余数据出来,这一切都是RAID技术自动帮你管理的,不需要你操心,如下图:在这里插入图片描述
所以RAID技术实际上就是管理多块磁盘的一种磁盘阵列技术,它有软件层面的东西,也有硬件层买的东西,比如有RAID卡这种硬件设备。具体来说,RAID还可以分成不同的技术方案,比如RAID 0、RAID 1、RAID 0+1、RAID2,等等,一直到RAID 10,很多种不同的多磁盘管理技术方案。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值