RAID (redundant array of independent disks) is a disk system that contains multiple disk drives, called an array, to provide greater performance, reliability, storage capacity, and lower cost. Fault-tolerant arrays are categorized in six RAID levels: 0 through 5. Each level uses a different algorithm to implement fault tolerance.

Although RAID is not a part of SQL Server, implementing RAID can directly affect the way SQL Server performs. RAID levels 0, 1, and 5 are typically used with SQL Server.


RAID is available only on Microsoft Windows 2000 and later versions.

A hardware disk array improves I/O performance because I/O functions, such as striping and mirroring, are handled efficiently in firmware. Conversely, an operating system–based RAID offers lower cost, but consumes processor cycles. When cost is an issue and redundancy and high performance are required, RAID-5 volumes are a good solution.

Data striping (RAID 0) is the RAID configuration with the best performance, but if one disk fails, all the data on the stripe set becomes inaccessible. A common installation technique for relational database management systems is to configure the database on a RAID 0 drive and then put the transaction log on a mirrored drive (RAID 1). You can obtain the best disk I/O performance for the database and maintain data recoverability through a mirrored transaction log, assuming you perform regular database backups.

If data must be quickly recoverable, consider mirroring the transaction log and putting the database on a RAID 5 disk. RAID 5 provides redundancy of all data on the array. This allows for a single disk to fail and be replaced most of the time without system down time. RAID 5 offers lower performance, compared to RAID 0 or RAID 1, but greater reliability and faster recovery.