DBCC CheckDB fails with error "The database could not be checked as a database snapshot could not be created and the database or table could not be locked"

DBCC CheckDB may with fail with error

Error

Msg 5030, Level 16, State 12, Line 1 The database could not be exclusively locked to perform the operation.
Msg 7926, Level 16, State 1, Line 1
Check statement aborted. The database could not be checked as a database snapshot could not be created and the database or table could not be locked. See Books Online for details of when this behavior is expected and what workarounds exist. Also see previous errors for more details.

Possible Causes Snapshot Creation Failure Reason

1. Database is having read only file group.

                Check if the database is having read only file groups.

2. No Parse file support by the file system.

                A. Parse file is not supported in FAT32 check the file system of the datafiles. If you use FAT32 use DBCC CheckDB with Tablock Option 

                B. To get the volume information of file system in which we have the datafiles we use !GetVolumeInformation API.

                This API would fail if SQLServer startup account do not have full permission on Volume in which the data file is located.
Grant full permission for the startup account of SQLServer on the root volume of all the datafies.

3. No alternate stream support.

 

Regards

Karthick P.K