SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Archive for 1月, 2024

Appliation Gateway / Front Door で使用できる WAF の CRS について調査する際の情報

leave a comment

Azure の Application Gateway / Front Door で使用できる Web Application Firewall (WAF) で使用できる Core Rule Set (CRS / マネージドルール) について確認する必要があり、調査する際に参考にした情報をまとめておきたいと思います。

基本的な内容については Azure テクニカルサポートチームから発信されている Application Gateway で利用できる WAF について を確認するとよいかと思います。

 

Read the rest of this entry »

Written by Masayuki.Ozawa

1月 30th, 2024 at 9:43 am

Posted in Azure

Tagged with

次期 Server OS の名称が Windows Server 2025 となったので関連情報を確認しておく

leave a comment

Introducing Windows Server 2025! でアナウンスがありましたが、Insider Preview として公開されていた Windows Server v.Next の正式名称が Windows Server 2025 となったので関連する情報を確認しておきたいと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

1月 29th, 2024 at 10:44 pm

ストアドプロシージャコンパイル時の同時実行性の低下について

leave a comment

SQL Server のストアドプロシージャでは次のようなタイミングでコンパイル / リコンパイルが発生します。

  1. 初回実行時
  2. 実行プランがキャッシュアウトされた後の初回実行
  3. 統計情報が更新された後の実行

上記のケースの中で「1.」「2.」については発生すると複数のセッションで同時実行性の低下につながるケースがあります。

どのような情報が出力されていると、「1.」「2.」のケースで同時実行性が低下している可能性があるのかをまとめておきたいと思います。

今回はストアドプロシージャを対象としており、アドホッククエリやパラメーター化クエリについてはこの動作とは異なってきます。

Read the rest of this entry »

Written by Masayuki.Ozawa

1月 29th, 2024 at 12:45 am

Posted in SQL Server

Tagged with

Windows Server で KB5034439 の適用がエラーとなった場合の対応

leave a comment

KB5034439 が Windows Server 2022 向けに提供されましたが、私の環境ではエラー (0x80070643: ERROR_INSTALL_FAILURE) となるものがありました。

本 KB の修正については、CVE 2024-20666 が元になる情報となっており、Windows Server OS については Windows Server 2022 が対象となります。

これらの環境のデフォルトの設定では回復パーティションの空き領域が 250MB 未満となるため、エラーが発生するようです。

KB5034439 でエラーが発生した際に実施が必要な作業としては KB 内のリンクに記載がされており、回復パーティションのサイズ変更が必要となります。

 

手元ですぐに確認できる環境が KB5034439 だったため、本投稿では Windows Server 2022 ベースの環境で確認をしていますが、前述のとおり CVE-2024-20666 の対応のため、クライアント OS となる Windows 10 21H2, 22H2 / Windows 11 21H2 も対象となっています。

これらのクライアント OS でも回復パーティションのサイズによっては、KB の適用時にエラーが発生する可能性があるようです。

 

エラーが発生した場合、回復パーティションのサイズ変更 / 再作成が必要となるため、KB5028997: WinRE 更新プログラムをインストールするためにパーティションのサイズを手動で変更する手順 に記載されている に記載されている回復パーティションのサイズ変更の手順を実施する必要があります。

 

現状、適用対象外となる Windows RE が無効な環境でも KB を対象として認識してしまい、これは既知の不具合となっているので、本 KB の適用について、最終的に必要となる対応がどのようになるのかは少し静観となりそうです。

 

Read the rest of this entry »

Written by Masayuki.Ozawa

1月 10th, 2024 at 8:50 pm

Posted in Windows Server

Tagged with

SQL Server 2022 以降で別名を設定する方法

leave a comment

SQL Server では別名を作成する機能があり、リンクサーバーで別のサーバーに接続を行う場合などにサーバー名のエイリアスを作成して使用することができます。

SQL Server 2019 までは、SQL Server 構成マネージャーで設定を行うことができました。

image

SQL Server 2022 の構成マネージャーでも同様の UI が提供されているのですが、新しい別名を作成することはできなくなっています。(新規に別名を作成しようとしても、サーバー名の入力等ができなくなっています)

SQL Server 2022 以降でも別名を使用することはできますが、作成方法が変わっていますので、本投稿で触れておきたいと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

1月 10th, 2024 at 2:47 pm

Posted in SQL Server

Tagged with

ログ配布の復元時に「ユーザーデータベースを切断する」を有効にしても、排他アクセスが取れなくなるケースがあることの原因について

leave a comment

SQL Server の ログ配布 のリストア時の設定として「バックアップの復元時にデータベースのユーザーを切断する」(disconnect_users=1) という設定があります。

image

この設定は、ログ配布でリストアをしているデータベースに対して「スタンバイ モード」を使用してリストアを行い読み取りが可能なデータベースに対して使用することができるオプションとなります。

読み取りが可能な状態でログ配布を使用している場合、ログをリストアする際にログ配布のプロセス (logship.exe) がデータベースを排他的に利用できない場合、リストアを行うことができないため上記のオプションを設定することでリストアの直前に既存の接続を切断することで、ログ配布が排他的にデータベースを設定することができます。

しかし、この設定を有効にしていてログ配布のプロセスが排他的にデータベースを利用することができず、「エラー: データベースは使用中なので、排他アクセスを獲得できませんでした。RESTORE LOG が異常終了しています。(.Net SqlClient Data Provider)」というエラーが発生するケースがあります。

本投稿では「バックアップの復元時にデータベースのユーザーを切断する」を有効にしていても、リストア時の上述の排他エラーが出る理由についてまとめておきたいと思います。

本事象は「スタンバイモード」を使用する場合に発生するものとなり、「復旧モード無し」にしている場合は、リストア状態のデータベースにアクセスすることはできないため、スタンバイモードを利用していない場合には発生しないはずです。

Read the rest of this entry »

Written by Masayuki.Ozawa

1月 8th, 2024 at 11:41 pm

Posted in SQL Server

Tagged with