Troubleshooting Guide: Error 3196 – “RESTORE master WITH SNAPSHOT is not supported”
Why This Error Happens
SQL Server 2025 explicitly blocks snapshot-based restores against the master database because the system catalog and configuration metadata stored in master cannot be safely reconstructed from a database snapshot (VSS or SQL Server snapshot backup). This limitation exists because master must be restored in a specific offline, single-user recovery sequence that snapshot technology does not support. The error typically surfaces when a DBA or automated backup tool (e.g., SAN-level snapshot software or WITH SNAPSHOT syntax) attempts to apply the same restore strategy used for user databases to the master system database.
Step-by-Step Resolution Guide
Step 1: Confirm the Backup Type Being Used
- Check whether your backup solution (SAN snapshot, VSS writer, or native SQL Server backup) tagged the
masterbackup as a snapshot type. - Run the following to inspect backup history:
SELECT type, is_snapshot, database_name
FROM msdb.dbo.backupset
WHERE database_name = 'master';
- If
is_snapshot = 1, this confirms the backup is incompatible withmasterrestores.
Step 2: Take a Traditional Full Backup of master
- Since snapshot restores are unsupported, you must maintain a conventional full backup of
mastertaken via native T-SQL or SSMS (not through VSS/snapshot providers). - Example command:
BACKUP DATABASE master
TO DISK = 'C:\SQLBackups\master_full.bak'
WITH INIT, CHECKSUM;
- Schedule this as a SQL Agent Job separate from your snapshot-based user database backup jobs.
Step 3: Stop the SQL Server Instance and Restore via Single-User Mode
- Open Command Prompt (Administrator) on Windows Server 2025 / Windows 11.
- Stop the SQL Server service:
net stop MSSQLSERVER
- Start the instance in single-user mode, pointing to the correct binary path:
"C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\Binn\sqlservr.exe" -m -s "MSSQLSERVER"
- In a new SQLCMD session, restore the traditional (non-snapshot) backup:
RESTORE DATABASE master
FROM DISK = 'C:\SQLBackups\master_full.bak'
WITH REPLACE;
Step 4: Restart SQL Server Normally
- Close the single-user SQLCMD session once the restore completes successfully.
- Restart the SQL Server service in normal mode:
net start MSSQLSERVER
- Confirm the instance comes online and system databases are accessible via SSMS or
sqlcmd -S . -Q "SELECT name, state_desc FROM sys.databases".
Alternative or Verification Steps
- Verification: After restart, run
DBCC CHECKDB('master')and confirmstate_descformastershowsONLINEwith no corruption errors. - Alternative: If no traditional backup exists, rebuild system databases using
setup.exe /ACTION=REBUILDDATABASEfrom the SQL Server 2025 installation media, then reapply server-level configurations (logins, linked servers) manually from documentation.