SQL Server のアップグレードが失敗し、エラー 17182 が返される
この記事は、Microsoft SQL Server 用の累積的な更新プログラム (CU) または Service Pack (SP) をインストールするときに発生するエラー 17182 のトラブルシューティングに役立ちます。 このエラーは、データベース アップグレード スクリプトが実行されるときに発生します。
現象
SQL Server に CU または SP を適用すると、セットアップ プログラムによって次のエラーが報告されます。
データベース エンジンの復旧ハンドルの待機に失敗しました。 考えられる原因については、SQL Server エラー ログを確認してください
SQL Server エラー ログを確認すると、次のようなエラーが表示されます。
2019-04-27 00:49:59.53 spid13s Unable to initialize SSL encryption because a valid certificate could not be found, and it is not possible to create a self-signed certificate.
2019-04-27 00:49:59.53 spid13s Error: 17182, Severity: 16, State: 1.
2019-04-27 00:49:59.53 spid13s TDSSNIClient initialization failed with error 0x80090331, status code 0x80. Reason: Unable to initialize SSL support. The client and server cannot communicate, because they do not possess a common algorithm.
2019-04-27 00:49:59.53 spid13s Error: 17182, Severity: 16, State: 1.
2019-04-27 00:49:59.53 spid13s TDSSNIClient initialization failed with error 0x80090331, status code 0x1. Reason: Initialization failed with an infrastructure error. Check for previous errors. The client and server cannot communicate, because they do not possess a common algorithm.
2019-04-27 00:49:59.53 spid13s Error: 17826, Severity: 18, State: 3.
2019-04-27 00:49:59.53 spid13s Could not start the network library because of an internal error in the network library. To determine the cause, review the errors immediately preceding this one in the error log.
2019-04-27 00:49:59.53 spid13s Error: 17120, Severity: 16, State: 1.
2019-04-27 00:49:59.53 spid13s SQL Server could not spawn FRunCommunicationsManager thread. Check the SQL Server error log and the Windows event logs for information about possible related problems.
原因
この問題は、サーバーで TLS 1.0 が無効になっており、TLS 1.2 のサポートを有効にする修正プログラムが含まれていない Microsoft SQL Server 2012 または 2014 のビルドをインストールしようとすると発生します。 この問題の詳細については、「 KB3135769 - 修正: TLS 1.2 が有効になっているサーバーに SQL Server 2012 または SQL Server 2014 をインストールするときのエラー (microsoft.com)を参照してください。
解決方法
17182 エラーを解決するには、次の手順に従います。
次のいずれかの方法を使用して、クライアント コンピューターとサーバー コンピューターの両方で TLS 1.0 または TLS 1.1 を一時的に有効にするようにシステム管理者に依頼します。
- 現在の TLS 設定を検証して変更するための IIS Crypto (Schannel セクション)
- Schannel 固有のレジストリ キーごとのレジストリ エディター
詳細については、「TLS 1.2 のアップグレード ワークフロー」と「TLS 1.2 へのアップグレード後の SSL エラー」を参照してください。
SQL Server サービスを再起動します。
SQL Server 2012 または 2014 セットアップ プログラムを実行し、SQL Server バージョンを TLS 1.2 をサポートするビルドに更新します。 TLS 1.2 のサポートを追加する更新プログラムの詳細については、「 KB KB3052404 - 修正: トランスポート層セキュリティ プロトコル バージョン 1.2 を使用して、SQL Server 2014 または SQL Server 2012 (microsoft.com)を実行しているサーバーに接続することはできません。
TLS 1.0 または TLS 1.1 を無効にします。
SQL Server サービスを再起動します。