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

Microsoft SQL Server 2025 Troubleshooting Guide: Error 3202

Why This Error Happens

Error 3202 (“Write on ‘%ls’ failed: %ls”) typically occurs when SQL Server cannot write data to a backup device, database file, or log file due to insufficient disk space, a full backup target, or restricted NTFS permissions on the file path. This can also surface when the storage volume is offline, disconnected, or when antivirus/backup software is locking the target file. In virtualized or cloud-hosted Windows Server 2025 environments, this error is frequently tied to a detached VHD/VHDX disk or a network share (UNC path) becoming unreachable mid-write.

Step-by-Step Resolution Guide

Step 1: Verify Disk Space and Storage Availability

  • Open File Explorer or run Get-PSDrive -PSProvider FileSystem in PowerShell to confirm the target drive isn’t full.
  • If using a UNC path for backups, confirm connectivity with Test-Path \\ServerName\ShareName from the SQL Server host.
  • Check Windows Server 2025 Storage Spaces or Disk Management (diskmgmt.msc) to ensure the volume is online and not in a “Reserved” or “Offline” state.

Step 2: Validate NTFS and Service Account Permissions

  • Open Services.msc, locate the SQL Server service, and note the account running it (e.g., NT Service\MSSQLSERVER).
  • Right-click the target folder (e.g., C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\DATA), go to Properties > Security, and ensure the service account has Full Control.
  • Use icacls "C:\SQLData" /grant "NT SERVICE\MSSQLSERVER":(OI)(CI)F to reapply permissions if they were reset.

Step 3: Check for File Locks or Antivirus Interference

  • Confirm no backup software, antivirus, or Windows Defender real-time scan is actively locking .bak, .mdf, .ldf, or .trn files.
  • Add SQL Server directories to the Windows Defender exclusion list:
  • Add-MpPreference -ExclusionPath "C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\DATA"
  • Use Resource Monitor (resmon.exe) to check the “CPU” tab for handles locking the specific file path.

Step 4: Inspect the Windows Event Viewer and SQL Error Log

  • Open Event Viewer > Windows Logs > System to check for disk-related hardware errors (Event ID 7, 51, or 153) occurring at the same timestamp as Error 3202.
  • Cross-reference with the SQL Server Error Log via SSMS (Management > SQL Server Logs) to identify if the issue correlates with a specific backup job or tempdb growth event.
  • If a hardware I/O error is present, run chkdsk C: /f /r during a maintenance window to repair underlying disk corruption.

Step 5: Reconfigure the Backup/Write Target

  • If writing to a network share, switch to a local SSD/NVMe drive temporarily to isolate network latency as the root cause.
  • Update the backup script or maintenance plan to point to the verified working path:
  • BACKUP DATABASE [YourDB] TO DISK = 'D:\SQLBackups\YourDB.bak'

Alternative or Verification Steps

  • Verify the fix by manually running the failed backup or write operation again (e.g., BACKUP DATABASE [YourDB] TO DISK = N'D:\Backup\Test.bak') and confirming it completes without Error 3202.
  • Alternative solution: If the error persists on a specific volume, migrate the database files to a new drive using ALTER DATABASE ... MODIFY FILE and verify the storage controller drivers are updated via Windows Update or Device Manager.