この記事では、Azure 仮想マシン (VM) 上の新規および既存の SQL Server に対して自動修正を有効にする方法について説明します。 自動修正では、SQL Server を実行している Azure 仮想マシンのメンテナンス期間が設定されます。 自動更新は、このメンテナンス期間中にのみインストールできます。 これにより、SQL Server では、システムの更新とこれに関連する再起動が、データベースに最適な時間帯に実行されるようになります。
Important
- 自動修正機能は、2027 年 9 月 17 日に廃止される予定です。 サービスの中断を回避するには、この日付より前に Azure Update Manager に移行します。 新しい環境では自動修正を避けます。 既存の環境の場合は、Azure VM 上の SQL Server の修正プログラム適用機能の今後の機能強化を引き続き受け取るために、できるだけ早く Azure Update Manager に移行してください 。
- 自動修正では、 重要 または 重大 としてマークされた Windows および SQL Server の更新プログラムのみがインストールされます。 サービス パックや、 重要 または 重大としてマークされていない累積的な更新プログラムなど、その他の SQL Server 更新プログラムは、手動でインストールする必要があります。 累積的な更新プログラムを自動的にインストールするには、統合された Azure Update Manager エクスペリエンスを代わりに使用してください。
Prerequisites
自動修正を使うには、次の前提条件が必要です。
- 自動修正は、SQL Server IaaS Agent 拡張機能に依存します。 現在の SQL 仮想マシン ギャラリー イメージでは、既定でこの拡張機能が追加されます。 詳しくは、SQL Server IaaS Agent 拡張機能に関する記事をご覧ください。
- PowerShell を使って自動修正を構成する場合は、最新の Azure PowerShell コマンドをインストールします。
自動修正は、Windows Server 2012 の SQL Server 2012 以降でサポートされています。
さらに、次の情報を考慮してください。
- また、Update Manager や VM ゲストの自動修正など、Azure VM の自動パッチ適用を有効にする方法はいくつかあります。 重複するツールによって更新が失敗する可能性があります。VM を自動的に更新するオプションは 1 つだけ選択してください。
- 自動修正機能を使用せずに 拡張セキュリティ更新プログラム (ESU) を 受け取る場合は、組み込みの Windows Update チャネルを使用できます。
- Always On 可用性グループに参加する異なる可用性ゾーン内の SQL Server VM の場合は、異なる可用性ゾーンの可用性レプリカに同時に修正プログラムが適用されないように、自動修正スケジュールを構成します。
Settings
自動修正で構成できるオプションを次の表に示します。 実際の構成手順は、Azure ポータルと Azure Windows PowerShell コマンドのどちらを使用するかによって異なります。
| Setting | 指定できる値 | Description |
|---|---|---|
| 自動修正 | 有効/無効 (現在の状態: 無効) | Azure 仮想マシンの自動修正を有効または無効にします。 |
| メンテナンス スケジュール | 毎日、月曜日、火曜日、水曜日、木曜日、金曜日、土曜日、日曜日 | 仮想マシンの Windows、SQL Server、および Microsoft の更新プログラムをダウンロードしてインストールするスケジュール。 |
| メンテナンスの開始時間 | 0-24 | 仮想マシンを更新するローカルの開始時刻。 |
| メンテナンス時間 | 30-180 | 更新プログラムのダウンロードとインストールを完了するのに許可されている時間 (分単位) |
| パッチ カテゴリ | Important | ダウンロードしてインストールする Windows 更新プログラムのカテゴリ。 |
Azure portal で構成する
Azure ポータルを使用して、プロビジョニング中または既存の VM 用に、自動修正を構成することができます。
新しい VM
Resource Manager デプロイ モデルで新しい SQL Server 仮想マシンを作成するときに、Azure portal を使用して、自動修正を構成します。
[SQL Server の設定] タブで、[自動修正] の [構成の変更] を選びます。 次の Azure Portal のスクリーンショットは、[SQL 自動修正]ウィンドウを示しています。
詳細については、「Azure ポータルでの SQL Server 仮想マシンのプロビジョニング」をご覧ください。
既存の VM
既存の SQL Server 仮想マシンの場合、[SQL 仮想マシン リソース] を開き、 [設定] の [更新] を選択します。
ポータルで SQL Server VM に対して Azure Update Manager エクスペリエンスを有効にしたことがない場合は、[有効にする] を選択して、既存の SQL Server VM の自動修正を有効にします。
以前に Azure Update Manager を使用したことがある場合は、SQL 仮想マシン リソースの [設定] の [更新] ページに移動し、[新しいエクスペリエンスを残す] を選択して自動修正エクスペリエンスに戻る必要があります。
自動修正を有効にし、修正プログラムの設定を構成したら、[更新] ページの下部にある [OK] ボタンを選択して変更を保存します。
自動修正を初めて有効にすると、バックグラウンドで SQL Server IaaS Agent が構成されます。 この間、自動修正が構成されていることは、Azure ポータルに示されない可能性があります。 エージェントがインストールされ、構成されるまで数分待ちます。 その後、Azure ポータルに新しい設定が反映されます。
PowerShell での構成
SQL VM をプロビジョニングしたら、PowerShell を使用して自動修正を構成します。
次の例では、PowerShell を使用して、既存の SQL Server VM で自動修正を構成しています。 New-AzVMSqlServerAutoPatchingConfig コマンドは、自動更新の新しいメンテナンス期間を構成します。
Update-AzSqlVM -ResourceGroupName 'resourcegroupname' -Name 'vmname' `
-AutoPatchingSettingDayOfWeek Thursday `
-AutoPatchingSettingMaintenanceWindowDuration 120 `
-AutoPatchingSettingMaintenanceWindowStartingHour 11 `
-AutoPatchingSettingEnable
この例に基づいて、対象の Azure VM への実際の影響を次の表に示します。
| Parameter | Effect |
|---|---|
| AutoPatchingSettingDayOfWeek | 毎週木曜日に修正プログラムがインストールされます。 |
| AutoPatchingSettingMaintenanceWindowDuration | 修正プログラムを 120 分以内にインストールする必要があります。 開始時刻に基づき、修正プログラムのインストールは午後 1 時までに完了する必要があります。 |
| AutoPatchingSettingMaintenanceWindowStartingHour | 午前 11 時に更新が開始されます。 |
| AutoPatchingSettingEnable | 自動修正を有効にする |
SQL Server IaaS エージェントのインストールと構成には数分かかる場合があります。
自動修正を無効にするには、-AutoPatchingSettingEnable で $false の値を指定して次のスクリプトを実行します。
Update-AzSqlVM -ResourceGroupName 'resourcegroupname' -Name 'vmname' -AutoPatchingSettingEnable:$false
自動修正で適用される更新プログラムを理解する
自動修正によって適用される更新プログラムを理解するには、 更新ガイド を確認し、 重大度 フィルターを適用して重大および重要な更新プログラムを特定します。
Considerations
自動修正に関する次の情報を検討してください。
- 自動修正プログラムは、SQL Server VM の Always On 可用性グループの構成を認識しません。 そのため、予期しないフェールオーバーを回避するために、可用性グループ レプリカの修正プログラムの適用スケジュールを作成するときは注意してください。
- SQL Server VM が可用性セットに含まれており、Always On 可用性グループを構成している場合は、修正プログラムが同時に適用されると両方のノードが再起動される可能性があるため、修正プログラム適用スケジュールはノードごとに異なる日/時刻に設定することが重要です。
- 仮想マシンは、定義済みのメンテナンス期間中に再起動できます。 イベント ビューアーを使用して、自動修正プログラムの適用からメンテナンス期間中に VM が再起動されたことを確認できます。 ゲスト修正プログラムを適用 すると、メンテナンス期間外に VM を再起動できます。
-
The user data or log directory is invalidを示すエラー メッセージで更新が失敗した場合は、データベースの新しいデータ ファイルまたはログ ファイルの既定の場所が無効な場所を指している可能性があります。 この問題を解決するには、 無効なディレクトリ エラーを確認してください。
自動修正プログラムから Azure Update Manager に移行する
Azure Update Manager は、お使いのすべての仮想マシンおよびSQL Server インスタンス向け更新を大規模に管理・制御するのに役立つ統合サービスです。 自動修正とは異なり、Azure Update Manager は SQL Server 用の累積的な更新をインストールできます。 SQL Server VM の更新プログラムを管理するには、自動修正サービスを 1 つだけ使用することをお勧めします。
現在自動修正プログラムを使用している場合は、 Azure Update Manager に移行できます。