KB4492604 - 修正: SQL Server 2016 および 2017 で同期されたすべてのレプリカで、フォワーダーとセカンダリ レプリカ間の手動フェールオーバーが失敗する

適用先
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

現象

Microsoft SQL Server 2016 および 2017 の分散型 Always On 可用性グループ (AG) 内に多数のデータベースがあるとします。 フォワーダーとセカンダリ レプリカの間で 2 番目の AG に対して手動フェールオーバーを実行すると、すべてのレプリカが同期されていても失敗することがあります。 また、次のようなエラー メッセージが表示されます。

メッセージ 41104、レベル 16、状態 12、行 LineNumber

前のエラーが原因で可用性グループ リソースがオンラインにならなかったため、可用性グループのローカル レプリカへのフェールオーバーに失敗しました。

エラーを特定するには、SQL Server エラー ログ、Windows Server フェールオーバー クラスター ログ、およびシステム イベント ログをチェックできます。 Windows Server フェールオーバー クラスタリング (WSFC) クラスターのイベントとログを表示する方法の詳細については、Windows Server のドキュメントを参照してください。 エラー ログをチェックすると、次のようなエラー メッセージが表示されます。

SQL Server のこのインスタンス上の可用性グループ '<AGName>' の可用性レプリカをプライマリ レプリカにすることはできません。 1 つ以上のデータベースが同期していないか、可用性グループに参加していません。
      

状態

Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。

解決策

この問題は、SQL Server 用の次の累積的な更新プログラムで修正されています。

SQL Server の累積的な更新プログラムについて:

SQL Server 用の新しい累積的な更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正プログラムが含まれています。 SQL Server の最新の累積的な更新プログラムを確認してください。

参考資料

マイクロソフトでソフトウェア更新プログラムの説明に使用する用語集を参照してください。