共用方式為


啟用加密之後,不會啟動事件標識碼 33566 和 SQL Server

適用于:SQL Server

徵狀

在 Microsoft SQL Server 組態管理員 中,您會布建伺服器端憑證並啟用加密。 不過,SQL Server 服務不會啟動,而且您會收到下列錯誤訊息:

Windows 無法在本機計算機上啟動 SQL Server (MSSQLSERVER) 。 如需詳細資訊,請檢閱系統事件記錄檔。
如果這是非 Microsoft 服務,請連絡服務廠商,並參閱服務特定錯誤碼 13。

解決方案

  1. 檢查應用程式記錄檔,並確認您看到兩個類似下列的事件專案:

    Log Name:      Application  
    Source:        MSSQLSERVER  
    Date:          <Datetime>
    Event ID:      33556  
    Task Category: Server  
    Level:         Error  
    Keywords:      Classic  
    User:          N/A  
    Computer:      <Server name> 
    Description:  
    Invalid character in the thumbprint [Cert Hash(sha1) " \<Cert Hash number"].
    Please provide a certificate with a valid thumbprint.
    

    注意事項

    此錯誤通常表示憑證不是透過 Configuration Manager 布建。 其布建方式是手動將指紋值複製到下列登錄機碼:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQLServer\SuperSocketNetLib\Certificate

    如果將無效字元複製到登錄值中,就會發生此錯誤。

  2. 若要解決此問題,請使用下列其中一個方法。

    方法 1:使用 SQL Server 組態管理員 布建憑證

    1. 從下列登錄子機碼手動移除指紋值:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQLServer\SuperSocketNetLib\Certificate

    2. 使用 Configuration Manager 重新布建憑證。

    3. 重新啟動 SQL Server 服務。

    方法 2:修正指紋值中的無效字元

    1. 取 [開始>執行],輸入 mmc,然後在 MMC 控制台中開啟 [ 憑證嵌入 式管理單元]。

    2. 以滑鼠右鍵按下憑證,並將 [指紋] 值複製到文字檔中。 請確定指紋值前後沒有任何空格存在。

    3. 從下列登錄子機碼手動移除 指紋 值:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQLServer\SuperSocketNetLib\Certificate

    4. 手動貼上新值,或重新輸入您從文本檔取得的值。

    5. 重新啟動 SQL Server 服務。