--- title: "Enable and configure FILESTREAM | Microsoft Docs" ms.custom: "" ms.date: "08/23/2017" ms.prod: sql ms.reviewer: "" ms.technology: filestream ms.topic: conceptual helpviewer_keywords: - "FILESTREAM [SQL Server], enabling" ms.assetid: 78737e19-c65b-48d9-8fa9-aa6f1e1bce73 author: MikeRayMSFT ms.author: mikeray --- # Enable and configure FILESTREAM [!INCLUDE[appliesto-ss-xxxx-xxxx-xxx-md](../../includes/appliesto-ss-xxxx-xxxx-xxx-md.md)] Before you can start to use FILESTREAM, you must enable FILESTREAM on the instance of the [!INCLUDE[ssDEnoversion](../../includes/ssdenoversion-md.md)]. This topic describes how to enable FILESTREAM by using SQL Server Configuration Manager. ## Enabling FILESTREAM #### To enable and change FILESTREAM settings 1. On the **Start** menu, point to **All Programs**, point to [!INCLUDE[ssCurrent](../../includes/sscurrent-md.md)], point to **Configuration Tools**, and then click **SQL Server Configuration Manager**. 2. In the list of services, right-click **SQL Server Services**, and then click **Open**. 3. In the **SQL Server Configuration Manager** snap-in, locate the instance of [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)] on which you want to enable FILESTREAM. 4. Right-click the instance, and then click **Properties**. 5. In the **SQL Server Properties** dialog box, click the **FILESTREAM** tab. 6. Select the **Enable FILESTREAM for Transact-SQL access** check box. 7. If you want to read and write FILESTREAM data from Windows, click **Enable FILESTREAM for file I/O streaming access**. Enter the name of the Windows share in the **Windows Share Name** box. 8. If remote clients must access the FILESTREAM data that is stored on this share, select **Allow remote clients to have streaming access to FILESTREAM data**. 9. Click **Apply**. 10. In [!INCLUDE[ssManStudioFull](../../includes/ssmanstudiofull-md.md)], click **New Query** to display the Query Editor. 11. In Query Editor, enter the following [!INCLUDE[tsql](../../includes/tsql-md.md)] code: ```sql EXEC sp_configure filestream_access_level, 2 RECONFIGURE ``` 12. Click **Execute**. 13. Restart the [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)] service. ## Best practices ### Physical configuration and maintenance When you set up FILESTREAM storage volumes, consider the following guidelines: - Turn off short file names on FILESTREAM computer systems. Short file names take significantly longer to create. To disable short file names, use the Windows **fsutil** utility. - Regularly defragment FILESTREAM computer systems. - Use 64-KB NTFS clusters. Compressed volumes must be set to 4-KB NTFS clusters. - Disable indexing on FILESTREAM volumes and set **disablelastaccess**. To set **disablelastaccess**, use the Windows **fsutil** utility. - Disable antivirus scanning of FILESTREAM volumes when it is not necessary. If antivirus scanning is necessary, avoid setting policies that will automatically delete offending files. - Set up and tune the RAID level for fault tolerance and the performance that is required by an application. |||||| |-|-|-|-|-| |RAID level|Write performance|Read performance|Fault tolerance|Remarks| |RAID 5|Normal|Normal|Excellent|Performance is better than one disk or JBOD; and less than RAID 0 or RAID 5 with striping.| |RAID 0|Excellent|Excellent|None|| |RAID 5 + striping|Excellent|Excellent|Excellent|Most expensive option.| |   |   |   |   |   | ### Physical database design When you design a FILESTREAM database, consider the following guidelines: - FILESTREAM columns must be accompanied by a corresponding **uniqueidentifier**ROWGUID column. These kinds of tables must also be accompanied by a unique index. Typically this index is not a clustered index. If the databases business logic requires a clustered index, you have to make sure that the values stored in the index are not random. Random values will cause the index to be reordered every time that a row is added or removed from the table. - For performance reasons, FILESTREAM filegroups and containers should reside on volumes other than the operating system, [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)] database, [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)] log, tempdb, or paging file. - Space management and policies are not directly supported by FILESTREAM. However, you can manage space and apply policies indirectly by assigning each FILESTREAM filegroup to a separate volume and using the volume's management features.