Posted On June 11, 2019

Microsoft SQL Server Storage Capacity Planning

kimconnect 0 comments
blog.KimConnect.com >> Database >> Microsoft SQL Server Storage Capacity Planning

This would be a recommended mounted volumes for most environment:

  1. 80GB RAID10 C:\ Operating System
  2. 50GB RAID10 D:\ SQL Application (BIN) & System Databases
  3. *100GB RAID10 E:\ User Defined Databases (including related Indexes)
  4. 50GB RAID10 L:\ Transaction Logs
  5. 100GB RAID6 G:\ Backups, Batch Processing, Full Text Catalogs
  6. 50GB RAID6 T:\ TempDB

Reasonings:

  • *User Defined Databases may require more than 100GB; thus, DBA would need to adhere to the build-requirements. Fortunately, volumes can be expanded on-the-fly using scripts or GUI.
  • Each volume would be expandable to support growth
  • User Defined databases should be on a separate volume from the System Databases to simplify backups and restores of those non-system files
  • Although some sources recommended that H:\ be used as the Backup volume, it should be avoided as many environments would map this as the “Home” folder for users
  • RAID10 were known for fast READ I/O with fairly performant WRITE I/O
  • RAID6 READ&WRITE I/O would be slower, yet this would be an effective use of available raw disks capacity while allowing 2 simultaneous disk failures to minimize risks of data loss.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

MS SQL: Admin_Report_Notification

/* Admin_Report_Notification */DECLARE @tab char(1) SET @tab = CHAR(9)EXEC msdb.dbo.sp_send_dbmail@profile_name = 'Report DBMail Profile',@recipients =…

Latin1_General_CI_AI vs SQL_Latin1_General_CP1_CI_AS

The SQL_Latin1_General_CP1_CI_AS collation is a SQL collation and the rules around sorting data for unicode…

SQL: Using PowerShell to Check if a Table, View, or Stored Procedure Exists

#Usage # set variables $sqlServer='sql-server04' $databaseName="Test_Database" $objectType='view' $objectName='[dbo].[Test_View]' $saCred=get-credential # Call function checkDatabaseObject $sqlServer $databaseName…