(1)前序:
    MySQL数据库软件都是安装在Linux服务器上的,然后启动MySQL进程,就是启动了一个MySQL数据库,MySQL运行过程中,他需要使用CPU,内存,磁盘和网卡这些硬件,但是不能直接使用,都是通过调用操作系统提供的接口,依托于操作系统使用和运行的,然后Linux操作系统负责操作底层的硬件。

    (2)RAID存储架构
    很多数据库部署在机器的时候,存储都是搭建的RAID存储架构,说白了 RAID就是一个磁盘冗余阵列,那它具体什么意思?
    假设我们的服务器里的磁盘就一块,万一磁盘的容量不够怎么办? 此时需要添加几块磁盘到服务器里,现在机器很多磁盘,怎么管理呢?怎样在多块磁盘上存放数据呢?
    所以针对这个问题,在存储层面管理机器里多块磁盘出现在一种技术,RAID这个技术,大致可以理解为 用来管理机器里的多块磁盘的一种磁盘阵列技术。有了这种技术,你在往磁盘里读写数据的时候,他会告诉你应该在哪块磁盘上读写数据。
    有了这个技术,可以在一台服务器加多块磁盘,扩大我们磁盘的存储空间,除此之外,RAID技术还有一个重要作用,它还可以实现 数据冗余机制。

    (3)数据冗余机制
    就是你写入一批数据在RAID的一块磁盘上,然后这块磁盘坏了,无法读取了,那岂不是要丢失数据了?所以有的RAID磁盘冗余阵列技术里,是可以把你写入的同样一份数据,在两块磁盘上都写入,这样让两块磁盘上的数据都一样,作为冗余备份。当一块磁盘坏的时候,可以从另一块磁盘读取冗余数据出来,这一切都是RAID技术自动帮你管理的,不需要你操心。

    (4)总结
    RAID技术实际上就是管理多块磁盘上的一种磁盘阵列技术,有软件层面的,也有硬件层面的,比如有RAID卡这种设备。具体来说,RAID还可以分成不同的技术方案,比如RAID 0,RAID 1 RAID 2,等等,一直到 RAID 10 很多种不同的多磁盘管理方案。
    70471300_1583231437.jpg