How to fix Error 3077 on Windows Server 2025 / Windows 11

Troubleshooting Guide: Error 3077 – File Snapshot Not Found

Why This Error Happens

Error 3077 occurs when SQL Server’s database snapshot engine attempts to locate a sparse file (snapshot) that has been referenced in a transaction or recovery operation but is missing from the expected file path. This typically happens due to the sparse file being manually deleted, moved outside of SQL Server’s control, or corrupted due to an unexpected disk failure or improper shutdown. It can also occur if the underlying volume does not support sparse files (such as FAT32) or if NTFS permissions prevent SQL Server’s service account from accessing the snapshot directory.

Step-by-Step Resolution Guide

Step 1: Verify the Snapshot File’s Physical Existence

  • Open File Explorer or PowerShell and navigate to the directory referenced in the error message (e.g., C:\SQLData\Snapshots\).
  • Run Get-ChildItem -Path "C:\SQLData\Snapshots\" -Filter "*.ss" to confirm whether the .ss sparse file physically exists.
  • If the file is missing, check the Windows Recycle Bin or Volume Shadow Copy history for accidental deletion.

Step 2: Check NTFS Permissions and Service Account Access

  • Right-click the snapshot folder, select Properties > Security, and confirm the SQL Server service account (e.g., NT Service\MSSQLSERVER) has Read, Write, and Modify permissions.
  • Run the following in an elevated Command Prompt to reset inherited permissions if needed:
  icacls "C:\SQLData\Snapshots" /reset /T
  • Restart the SQL Server service via services.msc after applying permission changes.

Step 3: Drop and Recreate the Orphaned Database Snapshot

  • Connect to the instance using SQL Server Management Studio (SSMS) or sqlcmd.
  • Run the following to remove the broken snapshot reference:
  DROP DATABASE [YourSnapshotName];
  • Recreate the snapshot using a valid, accessible path:
  CREATE DATABASE [YourSnapshotName_New] ON
  ( NAME = YourDB_Data, FILENAME = 'D:\SQLSnapshots\YourDB_data.ss' )
  AS SNAPSHOT OF [YourDB];

Step 4: Validate the Underlying Volume and Disk Health

  • Ensure the target volume is formatted as NTFS, since sparse files are unsupported on ReFS or FAT32 in older configurations.
  • Run chkdsk D: /f to repair any underlying file system corruption on the volume hosting the snapshot files.
  • Reboot the server if the volume is locked or in use during the check.

Alternative or Verification Steps

  • Query sys.databases and sys.master_files to confirm the snapshot’s file path matches an active, existing file on disk.
  • If the snapshot cannot be recovered, restore the source database from a verified full backup and recreate the snapshot entirely rather than attempting repair.