SE の雑記

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

Author Archive

Windows Server 2016 以降の Windows Update ログの確認

leave a comment

Windows 10 ならびに Winodws Server 2016 /2019 の Windows Update のログを確認するときのメモを。

以前 直近の Windows Update の実行状態をスクリプトで取得する というブログを書きましたが、上記の OS では、Update Session Orchestration (USO) のログを見ることで新たな洞察を得られることもありますので、情報を追加しておきたいと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 27th, 2020 at 11:45 pm

Posted in Windows Server

Tagged with

sys.dm_exec_requests を活用したクエリの実行状況の取得

leave a comment

SQL Server 2016 以降では、クエリ情報の取得はクエリストアを使用して取得を行うことができるようになり、SQL Server / Azure SQL Database では、この機能 (または、クエリストアを活用した機能) により、クエリ実行情報を取得することが一般的な方法となってきているのではないでしょうか。

SQL Server 2016 より前のバージョンでは、次のような DMV を使用して情報の取得が行われるケースが多かったかと思います。

SQL Server 2016 以降の環境で、クエリストアが有効になっている環境でも、これらの DMV を活用した方が、クエリの実行状態を細かに分析することができるケースがあります。

本投稿では sys.dm_exec_requests を使用したクエリの実行状況の取得について見ていきたいと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 26th, 2020 at 10:28 pm

Posted in SQL Server

Tagged with

Windows Server 2016 以降の WSFC の検疫状態について

leave a comment

久しぶりに Windows で AlwaysOn 可用性グループを組んでいて WSFC のノードを検疫状態にしてしまったので覚書を。

Windows Server 2016 / 2019 の WSFC の新機能については フェールオーバー クラスタリングの新機能 で解説が行われています。

Windows Server 2016 では 仮想マシンの回復性 として、「異常なノードの検疫」という機能が追加されています。

異常なノードの検疫: 異常なノードは検疫され、クラスターへの参加は許可されなくなりました。 これにより、フラッピングノードが他のノードやクラスター全体に悪影響を及ぼすのを防ぐことができます。

この機能により、異常なノードについてはノードのステータスが「検疫」となり、一定時間、クラスターへの参加が許可されない状態となります。

image

詳細については Virtual Machine Compute Resiliency in Windows Server 2016 で解説が行われています。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 22nd, 2020 at 10:47 pm

Posted in Windows Server,WSFC

Tagged with ,

sys.sysprocesses を使用しないで「AWAITING COMMAND」となっている接続の情報を取得する

leave a comment

SQL Server の処理の実行状況を取得するためのシステムテーブルとして sys.sysprocesses というシステムビューが存在しています。

このシステムテーブルは下位互換のビューとして含まれているため、このテーブルを利用しているクエリについては、対応した DMV への移行が推奨されています。

image

sysprocesses については、3 種類の DMV を使用することになるのですが、各 DMV から単純にデータをとるだけでは、sysprocesses で「AWAITING COMMAND」となっているセッションを取得することはできません。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 22nd, 2020 at 9:38 pm

Posted in SQL Server

Tagged with

Azure Automation で PowerShell Runbook を作成する際の覚書 (2020/4 版)

leave a comment

Azure 上で、PowerShell を実行する場合、Function App を使用して書いてしまうことが多いのですが、実行時間やスケジュール設定の GUI 視認性 (cron 形式ではないスケジューリングの設定) などで、Azure Automation の PowerShell Runbook を使用してスクリプトを実行するケースもあるかと思います。

どうやって使ったかというのを忘れることがしばしばあるので、この機会にまとめておこうかと。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 15th, 2020 at 11:23 pm

Teams のメモ

leave a comment

当面、リモートワークをする機会が多くなり、Teams を使用する機会が増えてきました。

私が使っているテナントでも Team は利用できるのですが、設定の変更はあまり実施していませんでしたので、この機会にいろいろと見ていきたいと思いメモを。

使いながらのんびり更新していこうと思います。

Teams は無料版もあり、Microsoft Teams と無料版の Microsoft Teams の相違点 で違いが公開されているようですね。

Teams ではなく Skype で実施できる範囲 (Teams ライブ イベントと Skype 会議ブロードキャスト 参照) があるのであれば、それでも良いかと思います。

Skype については https://www.skype.com/ja/free-conference-call/ から、ワンタイムの会議が行うことができる Meet Now というような機能を使うこともできますので。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 13th, 2020 at 9:56 am

Posted in Teams

Tagged with

拡張イベントでコマンドタイムアウトが発生したクエリを取得する

leave a comment

クエリストアによる、クエリタイムアウトしたクエリの取得 では、クエリストアの機能を使用して、コマンドタイムアウト (クエリタイムアウト) が発生したクエリの浄法を取得しました。

クエリストアが使用できない環境では拡張イベントを使用しても取得することができますので、書いておこうかと。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 13th, 2020 at 12:04 am

Posted in SQL Server

Tagged with

SQL Server の Batch / Statement / RPC はどのような情報なのか?

leave a comment

SQL Serve のクエリ情報を取得する際には、次のイベントカテゴリの情報を使用することがあるのではないでしょうか?

これらのイベントカテゴリの情報には、Batch / Statement / RPC / SP というようなイベントがあり、クエリの情報を取得する場合には、これらの情報を拡張イベントや SQL トレース (SQL Server Profiler / サーバーサイドトレース を使用して取得を行いますが、これらのイベントカテゴリは、どのようなクエリを実行した際に、どの部分の情報を取得することができる野でしょうか?

本投稿では、これらのイベントカテゴリで取得されている情報の基本的な考え方をまとめてみたいと思います。

イベントの考え方に関しては、拡張イベントと SQL Server Profiler で同様の考え方となりますが、蘇rぞれの機能によってイベントの名称が異なっています。

使用する機能に応じたイベントの対応については SQL トレースのイベント クラスと等価な拡張イベントを確認する のドキュメントで確認できますので、こちらを参照してください。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 12th, 2020 at 7:27 pm

Posted in SQL Server

Tagged with

Data Migration Assistant (DMA) で拡張イベントをインプット情報として活用する

leave a comment

SQL Server のバージョンアップや、クラウド移行 (SQL Database / Managed Instance への移行) を実施する際のアセスメントと移行を行うためのツールとして Data Migration Assistant (DMA) というツールが公開されています。

このツールでは、Data Migration Assistant を使用した SQL Server 移行評価の実行評価するデータベースと拡張イベントトレースの追加 に記載されているように、拡張イベント (xEvent) をインプットとして、アドホッククエリのシンタックスエラーのチェックを行うことができるようになります。

この、拡張イベントを入力としたアドホッククエリのチェックですが、4/7 時点のドキュメントに書いている内容を実施しても拡張イベントを使用した処理が行われていないように見えました。

先週 MicrosoftR Data Migration Assistant v5.1 の公開が行われたようで、本日この内容を確認していたところ、次の記載がありました。
(最新バージョンを使用すると SQL Server 2019 を移行元として使用することもできるようになっています)

sql_batch_completed event for application / xevent trace assessments

拡張イベントを入力として使用する場合、「sql_batch_completed」をイベントとして取得しないといけないようです。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 7th, 2020 at 11:39 pm

Posted in SQL Server

Tagged with

SQL Server エージェントで Transact-SQL を実行する際に使用されるログインについて

leave a comment

「sysadmin」ロールのログインで SQL Server エージェントのジョブを設定していると、あまり意識しない点だったのでまとめておこうかと。

ドキュメントとしては Give Others Ownership of a Job となります。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 4th, 2020 at 6:46 pm

Posted in SQL Server

Tagged with