次の方法で共有


暗号化を有効にした後にイベント ID 33566 と SQL Server が起動しない

適用対象: SQL Server

現象

Microsoft SQL Server 構成マネージャー では、サーバー側の証明書をプロビジョニングし、暗号化を有効にします。 ただし、SQL Server サービスは起動せず、次のエラー メッセージが表示されます。

Windows がローカル コンピューターで SQL Server (MSSQLSERVER) を起動できませんでした。 詳細については、システム イベント ログを確認してください。
Microsoft 以外のサービスの場合は、サービス ベンダーに問い合わせて、サービス固有のエラー コード 13 を参照してください。

解決方法

  1. アプリケーション ログを確認し、次のような 2 つのイベント エントリが表示されることを確認します。

    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.
    

    Note

    通常、このエラーは、証明書が 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. Start>Run を選択し、「mmc」と入力し、MMC コンソールで Certificate スナップインを開きます。

    2. 証明書を右クリックし、 Thumbprint 値をテキスト ファイルにコピーします。 拇印の値の前後にスペースが存在しないことを確認します。

    3. 次のレジストリ サブキーから Thumbprint 値を手動で削除します。

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

    4. 新しい値を手動で貼り付けるか、テキスト ファイルから取得した値を再入力します。

    5. SQL Server サービスを再起動します。