Troubleshooting Guide: SQL Server Error 10344 – Trusted Assemblies Internal Table Access Failure
Why This Error Happens
This error occurs when the SQL Server Database Engine cannot read or write to the internal system table that tracks CLR trusted assemblies, typically due to corruption in the system catalog or the mssqlsystemresource database. It can also be triggered by insufficient permissions on the SQL Server service account when accessing internal metadata, or by a corrupted master database following an improper shutdown or failed upgrade. In some cases, a mismatch between the SQL Server binary version and the resource database version (common after a partial patch to SQL Server 2025) causes the internal table lookup to fail with an HRESULT error.
Step-by-Step Resolution Guide
Step 1: Verify SQL Server Service Account Permissions
- Open Services.msc on Windows Server 2025 / Windows 11 and locate the SQL Server (MSSQLSERVER) service.
- Confirm the service account has full control over the SQL Server data directory, typically located at
C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\DATA. - Right-click the folder, go to Properties > Security, and ensure the SQL Server service account (e.g.,
NT Service\MSSQLSERVER) has Read/Write/Modify permissions. - Restart the SQL Server service after applying permission changes.
Step 2: Check for Resource Database Corruption
- Run the following query in SQL Server Management Studio (SSMS) to validate the resource database version:
SELECT SERVERPROPERTY('ResourceVersion') AS ResourceVersion, SERVERPROPERTY('ProductVersion') AS ProductVersion;- If the versions do not match, this confirms a mismatched or corrupted
mssqlsystemresource.mdffile. - Replace the resource database files by copying a clean
mssqlsystemresource.mdfand.ldffrom the SQL Server 2025 installation media into the Binn\Templates folder, then restart the instance in single-user mode to apply.
Step 3: Run DBCC CHECKDB on System Databases
- Open a new query window in SSMS and execute:
DBCC CHECKDB ('master') WITH NO_INFOMSGS, ALL_ERRORMSGS;- Review the output for allocation or consistency errors related to system tables.
- If corruption is confirmed, restore the
masterdatabase from a verified backup taken prior to the error occurring.
Step 4: Rebuild or Repair the System Databases
- If no clean backup is available, rebuild system databases using the setup media:
Setup.exe /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS=<YourAdminAccount> /SAPWD=<StrongPassword>- This resets the
master,model, andmsdbdatabases, which also restores the Trusted Assemblies internal table structure. - Reapply any custom configurations, logins, and trusted assembly entries (via
sys.sp_add_trusted_assembly) after the rebuild.
Step 5: Apply the Latest Cumulative Update
- Download and install the latest Cumulative Update (CU) for SQL Server 2025 from the Microsoft Update Catalog.
- This ensures any known internal table access bugs related to CLR integration are patched.
- Reboot the Windows Server 2025 / Windows 11 host after installation to finalize the update.
Alternative or Verification Steps
- To verify the fix, run
SELECT * FROM sys.trusted_assemblies;in SSMS — if the query returns results (or an empty set) without throwing Error 10344, the internal table is accessible again. - As an alternative, if the issue persists after rebuilding system databases, perform a full uninstall and clean reinstall of the SQL Server 2025 instance, restoring user databases only from backup to avoid carrying over the corrupted system catalog.