Troubleshooting Guide: SQL Server Error 8554 – “IIDFromString failed for %hs”
Why This Error Happens
Error 8554 typically occurs when SQL Server attempts to parse a COM Interface ID (IID) string but fails due to corruption in the Windows Registry’s COM class registration entries. This is commonly triggered by an incomplete or damaged installation of SQL Server components (such as OLE Automation or Distributed Transaction Coordinator libraries) on Windows Server 2025 or Windows 11. It can also surface after a Windows Update or security patch alters registry permissions, preventing SQL Server’s service account from reading the required CLSID/IID keys under HKEY_CLASSES_ROOT.
Step-by-Step Resolution Guide
Step 1: Verify and Repair COM Registry Entries
- Open the Registry Editor (
regedit.exe) and navigate toHKEY_CLASSES_ROOT\Interface. - Search for the specific IID string referenced in the error message (found in the SQL Server error log) to confirm whether the key is missing or malformed.
- If corrupted, do not manually edit this hive; instead, proceed to re-register the associated DLL in Step 2.
Step 2: Re-register the Required OLE Automation DLLs
- Open an elevated Command Prompt (Run as Administrator).
- Navigate to the SQL Server binary directory, typically
C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\Binn\. - Run the command:
regsvr32 /u oleaut32.dllfollowed byregsvr32 oleaut32.dllto unregister and re-register the library. - Repeat this process for
msado15.dllif the error relates to ActiveX Data Objects connectivity.
Step 3: Validate Service Account Permissions
- Open
Component Services(dcomcnfg.exe) and navigate to Component Services > Computers > My Computer > DCOM Config. - Locate the specific component tied to the failing IID and right-click to select Properties.
- Under the Security tab, ensure the SQL Server service account (e.g.,
NT Service\MSSQLSERVER) has Local Launch and Local Activation permissions enabled. - Restart the SQL Server service via
services.mscto apply the permission changes.
Step 4: Run a System File Check (SFC) and DISM Repair
- If registry corruption is widespread across the OS, open PowerShell as Administrator.
- Execute
DISM /Online /Cleanup-Image /RestoreHealthto repair the Windows Component Store. - Follow this with
sfc /scannowto fix any corrupted system files that might be causing the registry parsing failure.
Alternative or Verification Steps
- Verification: Restart the SQL Server (MSSQLSERVER) service and check the SQL Server Error Log (via SSMS or
ERRORLOGfile) to confirm that Error 8554 no longer appears during startup or query execution. - Alternative: If the error persists, perform a repair installation of the SQL Server instance via the SQL Server Installation Center (
setup.exe> Maintenance > Repair) to force the reconstruction of all associated COM interfaces.