暗号化を有効にした後にイベント ID 33565 と SQL Server が起動しない
適用対象: SQL Server
現象
Microsoft SQL Server 構成マネージャー では、サーバー側の証明書をプロビジョニングし、暗号化を有効にします。 Service Control Manager を使用して SQL Server サービスを開始すると、サービスは開始せず、次のエラー メッセージが表示されます。
Windows がローカル コンピューターで SQL Server (MSSQLSERVER) を起動できませんでした。 詳細については、システム イベント ログを確認してください。
Microsoft 以外のサービスの場合は、サービス ベンダーに問い合わせて、サービス固有のエラー コード -2146885628を参照してください。
解決方法
アプリケーション イベント ログを確認し、次のような 2 つのイベント エントリが表示されることを確認します。
Log Name: Application Source: MSSQLSERVER Date: <Datetime> Event ID: 26010 Task Category: Server Level: Information Keywords: Classic User: N/A Computer: <Server name> Description: The server could not load the certificate it needs to initiate an SSL connection. It returned the following error: 0x8009030d. Check certificates to make sure they are valid. Log Name: Application Source: MSSQLSERVER Date: <Datetime> Event ID: 33565 Task Category: Server Level: Error Keywords: Classic User: N/A Computer: <Server name> Description: Found the certificate [Cert Hash(sha1) "<Cert Hash number>"] in the local computer store but the SQL Server service account does not have access to it.
イベント 26010 と 33565 の両方が表示される場合は、次の手順に従います。
Note
- 2 つのイベントは、SQL Server サービス アカウントに Configuration Manager でプロビジョニングされた証明書に対するアクセス許可がないことを示します。 この問題を解決するには、サービス アカウントに必要なアクセス許可を割り当てる必要があります。
- イベント 26010 と 33565 の両方が表示されない場合は、この記事で対処されていない別の問題が発生している可能性があります。
Start>Run を選択し、「mmc」と入力し、MMC コンソールで Certificate スナップインを開きます。
Console メニューの [スナップインの追加と削除]選択。
Add>Certificates を選択し、もう一度 Add を選択します。
Note
現在のユーザー、サービス、またはコンピューター アカウントのスナップインを開くよう求められます。
コンピューター アカウントを選択します。
[ローカル コンピューター] を選択し、[完了] を選択します。
[スタンドアロン スナップインの追加] ダイアログ ボックスで、[閉じる] を選択します。
[スナップインの追加と削除] ダイアログ ボックスで [OK] を選択します。
Note
インストールされている証明書は、個人用コンテナーの [証明書] フォルダーにあります。
証明書を右クリックし、[すべてのタスク >管理秘密キーを選択し、SQL Server サービス アカウントへの完全なアクセス許可を付与します。