SQL Server 2017 の累積的な更新プログラム 3

適用対象: SQL Server 2017 on Windows (all editions)SQL Server 2017 on Linux (all editions)

Microsoft SQL Server 2017 の累積的な更新プログラム 3 (CU3) は、2018 年 1 月 3 日に SQL Server セキュリティ速報としてもリリースされています (ADV180002)。 詳細についてはKB 4058562 を参照してください。 つまり、同じ物理的なパッケージ (SQLServer2017-KB4052987-x64.exe) は、CU3 (KB 4052987) と セキュリティ速報 (KB 4058562) の両方で使用できました。

このため、そのセキュリティ速報リリースの一環として CU3 を既にインストール済みであるという場合が考えられます。 ADV180002 の後で CU3 をインストールしようとすると、次のメッセージが表示されることがあります。

このコンピューターで更新可能な SQL Server インスタンスまたは共有機能はありません
これは、CU3 が既にインストールされており、それ以上の作業が不要であることを示します。

この資料では、Microsoft SQL Server 2017 の累積的な更新プログラム パッケージ 3 (CU3) について説明します。 この更新プログラムには、SQL Server 2017 の初期リリース以降にリリースされた修正プログラムが含まれており、SQL Server と Analysis サービス コンポーネントを次のビルドに更新します。

コンポーネント ビルド バージョン ファイル バージョン
SQL Server 14.0.3015.40 2017.140.3015.40 
Analysis Services 14.0.202.1 2017.140.202.1

 

重要

クエリ ストア機能を使用していて、以前に累積的な更新プログラム 2 (CU2) (14.0.3008.27) をインストールした場合は、CU3 (14.0.3015.40) 以降をインストールしてから、即座に以下のスクリプトを実行して、CU2 のインストール中にクエリ ストアによって収集されたすべてのプランを削除する必要があります。

SET NOCOUNT ON;DROP TABLE IF EXISTS #tmpUserDBs;SELECT [database_id], 0 AS [IsDone]INTO #tmpUserDBsFROM master.sys.databasesWHERE [database_id] > 4 AND [state] = 0 -- must be ONLINE AND is_read_only = 0 -- cannot be READ_ONLY AND [database_id] NOT IN (SELECT dr.database_id FROM sys.dm_hadr_database_replica_states dr -- Except all local Always On secondary replicas  INNER JOIN sys.dm_hadr_availability_replica_states rs ON dr.group_id = rs.group_id  INNER JOIN sys.databases d ON dr.database_id = d.database_id  WHERE rs.role = 2 -- Is Secondary   AND dr.is_local = 1   AND rs.is_local = 1)DECLARE @userDB sysname;WHILE (SELECT COUNT([database_id]) FROM #tmpUserDBs WHERE [IsDone] = 0) > 0BEGIN SELECT TOP 1 @userDB = DB_NAME([database_id]) FROM #tmpUserDBs WHERE [IsDone] = 0 -- PRINT 'Working on database ' + @userDB EXEC ('USE [' + @userDB + '];DECLARE @clearPlan bigint, @clearQry bigint;IF EXISTS (SELECT [actual_state] FROM sys.database_query_store_options WHERE [actual_state] IN (1,2))BEGIN IF EXISTS (SELECT plan_id FROM sys.query_store_plan WHERE engine_version = ''14.0.3008.27'') BEGIN  DROP TABLE IF EXISTS #tmpclearPlans;  SELECT plan_id, query_id, 0 AS [IsDone]  INTO #tmpclearPlans  FROM sys.query_store_plan WHERE engine_version = ''14.0.3008.27''  WHILE (SELECT COUNT(plan_id) FROM #tmpclearPlans WHERE [IsDone] = 0) > 0  BEGIN   SELECT TOP 1 @clearPlan = plan_id, @clearQry = query_id FROM #tmpclearPlans WHERE [IsDone] = 0   EXECUTE sys.sp_query_store_unforce_plan @clearQry, @clearPlan;   EXECUTE sys.sp_query_store_remove_plan @clearPlan;   UPDATE #tmpclearPlans   SET [IsDone] = 1   WHERE plan_id = @clearPlan AND query_id = @clearQry  END;  PRINT ''- Cleared possibly affected plans in database [' + @userDB + ']'' END ELSE BEGIN  PRINT ''- No affected plans in database [' + @userDB + ']'' ENDENDELSEBEGIN PRINT ''- Query Store not enabled in database [' + @userDB + ']''END')  UPDATE #tmpUserDBs  SET [IsDone] = 1  WHERE [database_id] = DB_ID(@userDB)END

累積的な更新プログラム

累積的な更新プログラム (CU) は、現在 Microsoft ダウンロード センターで入手できます。

ダウンロード センターで入手できるのは、SQL Server 2017 用にリリースされた最新の CU だけです。

Linux の CU パッケージは、https://packages.microsoft.com/ で入手できます。

注意事項

  • 最新の各 CU には、インストール済みの SQL Server バージョン用として前回の CU に含められていた修正プログラムがすべて含まれます。
  • SQL Server CU は Service Pack と同じレベルに認証されるため、同じ信頼レベルでインストールする必要があります。
  • 予防措置として、CU のリリースごとに継続的にインストールすることをお勧めします。

    • 過去のデータは、リリース済みの CU で既に解決されている問題が多数のサポート ケースで扱われていることを物語っています。
    • CU には、修正プログラムの他に 付加的な機能 (サポータビリティ、管理性、信頼性の更新ファイルなど) が含まれることもあります。
  • CU を実稼働環境に展開する前に CU をテストすることをお勧めします。

Windows 用のこの CU パッケージの入手方法


次の更新プログラムは、Microsoft ダウンロード センターから入手できます。
 
このダウンロード ページが表示されない場合は、Microsoft カスタマー サービス サポートに問い合わせてこの累積的な更新プログラム パッケージを入手してください。

注: 今後 SQL Server 2017 用の累積的な更新プログラムがリリースされた場合は、その後のこの CU の検索とダウンロードは Microsoft Windows Update カタログで行うことができます。 しかし、入手できる最新の累積的な更新プログラムをインストールすることをお勧めします。

Linux 用のこの CU パッケージの入手方法


Linux を最新の CU に更新するには、まず、累積的な更新プログラム リポジトリを設定する必要があります。 次に、適切なプラットフォーム固有の更新コマンドを使用して SQL Server パッケージを更新します。

インストール手順および CU パッケージのダウンロードへの直接リンクについては、リリース ノートを参照してください。

累積更新プログラム パッケージに含まれている追加のホットフィックス


VSTS バグ番号 サポート技術情報番号 説明 修正領域 プラットフォーム
11061716 4041811 修正プログラム: SQL Server 2017 では増分統計の自動更新が遅れる SQL パフォーマンス すべて
11280500 4055735 修正プログラム: SQL Server の PERSISTED 計算列で SOUNDEX 関数を使用すると DBCC CHECKDB が整合性エラーを返す SQL エンジン Windows
11061767 4038419 SQL Server 2017 でリソース ガバナー ワークグループ REQUEST_MAX_CPU_TIME_SEC に CPU タイムアウト設定を追加する更新プログラム SQL パフォーマンス すべて
11061704 4041809 SQL Server 2017 の CREATE STATISTICS および UPDATE STATISTICS ステートメントにおける MAXDOP のサポートを追加する更新プログラム SQL パフォーマンス すべて
11061779 4041814 SQL Server 2017 の DMV イベントと拡張イベントにおける tempdb スピル診断を向上させる SQL パフォーマンス すべて
11061723 4041817 SQL Server 2017 でクエリ最適化中に使用される統計のリストを提供するために XML プラン表示を有効にする更新プログラム SQL パフォーマンス すべて
11061781 4046914 修正プログラム: SQL Server 2017 のプラン表示 XML に CXPACKET 待機タイプを追加する SQL パフォーマンス すべて
11230379 4056354 修正プログラム: SQL Server 2017 へのローリング アップグレードを行った後、ミラーリング セッションが同期を停止する 高可用性 Windows
11124264 4052127 修正プログラム: Windows を再起動した後、警告エンジンが完全なアプリケーション イベント ログを読み取り、古いイベントに関する警告を送信する 管理ツール Windows
11281561 4051356 修正プログラム: SQL Server 2016 および SQL Server 2017 でエラーが発生してメモリ内データベースの復元が失敗する メモリ内 OLTP すべて
11300802 4056922 修正プログラム: Linux 上の SQL Server 2017 で AlwaysOn 可用性グループを使用する場合の不要なフェールオーバー 高可用性 Linux
11272738 4056328 修正プログラム: 表モードで SSAS 2017 をインストールした後、パフォーマンスカウンターが表示されない Analysis Services Windows
11176915 4053293 SQL Server 2017 で PolyBase テクノロジを有効にする更新プログラム SQL エンジン Windows
11309598 4073393 修正プログラム: SQL Server 2017 サーバーで Centennial アプリケーションを起動すると、「システム呼び出しに渡されたデータ領域が小さすぎます」というエラーが表示される SQL エンジン Windows
11061737 4056154 SQL Server 2017 のプラン表示 XML ファイルにスカラー値のユーザー定義関数の実行統計情報を追加する更新プログラム SQL パフォーマンス すべて
11061785 4051361 SQL Server 2017 のクエリ実行プランにオプティマイザー行の目標情報が追加される更新プログラム SQL パフォーマンス すべて

この更新プログラムについての注記


ハイブリッド環境への展開

修正プログラムをハイブリッド環境 (AlwaysOn、レプリケーション、クラスター、ミラーリングなど) に展開するときには、修正プログラムを展開する前に次の記事を参照することをお勧めします。
 

累積的な更新プログラム パッケージの情報


必要条件

この累積的な更新プログラム パッケージを適用するには、SQL Server 2017 を実行している必要があります。

再起動に関する情報

この累積的な更新プログラム パッケージの適用後、コンピュータの再起動が必要な場合があります。

レジストリ情報

このパッケージに含まれている修正プログラムを使用するために、レジストリを変更する必要はありません。