Tools and Documents for fault analysis in SQL Server-based environments.
Azure Arc Enabled SQL Managed Instance の高可用性構成 (包含可用性グループ)
Azure Hybrid and Multicloud Digital Event で Azure Arc Enabled SQL Managed Instance (MI) の一般提供開始 (General Availability : GA) が、 2021/7/30 と発表がありました。
Arc に関連するサービスとしては、
- Azure Arc Enabled Windows / Linux
- Azure Arc Enabled Kubernetes
- Azure Stack HCI
- AKS on Azure Stack HCI
が既に GA しており、今回 MI が GA となったことで、Arc 上で動作させることができる SQL Server ベースの RDBMS についても SLA がある状態で利用することができるようになりました。
AKS on Azure Stack HCI と組み合わせることで、Windows 環境をホスト OS として使用した Kubernetes を構築することもできますので、Windows ベースで MI を使用することもできます。(と言っても、Hyper-V 上のゲスト OS として Linux を動かして Kubernetes を構築していますので、実際には Linux 上で構築されているのですが)
料金についても、Azure Arc pricing はまだ更新されていないようですが、イベント内で発表がありました。
今回 GA として提供されるのは、汎用目的 (General Purpose : GP) となりますが、vCore 単位の課金となるようですね。
7 月に GA となりますが、現在、プレビューとして公開されているすべての機能が GA となるわけではないようで、いくつかの機能については、段階的に GA となるようです。
Azure Arc Enabled SQL Managed Instance では、現時点のロードマップでは、7 月に Preview / 10 月に GA となる、AlwaysOn 可用性グループで、高可用性構成をとることができるのですが、今まであまり真面目に調べていませんでしたので、今回 GA するということで、関連情報のキャッチアップを含め調べてみました。
今回発表のあった内容は Bring cloud experiences to data workloads anywhere with Azure SQL enabled by Azure Arc から確認できます。
Windows 11 で必須になるかもしれない TPM についてのメモ
Windows 11 で TPM 2.0 (Trusted Platform Module) が必須になる (初期公開の Insider Preview では CPU / TPM の最小要件が緩和されていますが、一般手開始されたタイミングでどうなるかは現時点では不明です) のではという話があり、TPM についての話題が一瞬ですが上がる機会が多くなってきました。
ということで TPM についてのメモを。
手元に Thinkpad T440s (20AQ0094JP) がありましたのでこちらを例にして。
この Thinkpad は、2014年6月3日 に発売され、2020年7月3日 に保守が終了しており、7 年前のラップトップとなりますので機種として古めです。
SQL Database でリージョンで利用可能なエディションを取得する
SQL Database には、DTU / vCore でいくつかのエディション (Standard / Premium / GP / BC 等) が提供されていますが、リージョンのよってはまだ使用できないエディションがあります。
DC シリーズや M シリーズが、現時点では一部のリージョンのみでしか展開ができないものとなります。
自分が使用したいリージョンで展開されているエディション / 使用したいエディションが展開されているリージョンについて、調べる方法について軽くまとめておきたいと思います。
Next Version Windows (Windows 11 / Windows Server 2022) のドキュメント
今朝、イベントでアナウンスがあり Windows 11 についての発表がありました。
数か月前に、Windows Server 2022 についての発表もあったかと思いますので、これらの OS の公式ドキュメントと Windows 11 のアナウンスのリンクを残しておこうかと。(週末見るようとも言います)
Windows 11
- Windows 11 overview
- Windows Processor Requirements
- Windows 11 Supported AMD Processors
- Windows 11 Supported Intel Processors
- Windows 11 Supported Qualcomm Processors
- Download minimum hardware requirements
- 新しい Windows 11 OS へのアップグレード
アナウンスやブログ
- Preparing for Insider Preview Builds of Windows 11
- Update on Windows 11 minimum system requirements
- Announcing the first Insider Preview for Windows 11
- Introducing Windows 11
- Introducing Windows 11
- What Windows 11 Means for Developers
- Now accepting Windows 11, version 21H2 submissions
- Building a new, open Microsoft Store on Windows 11
Windows Server 2022
アナウンスやブログ
SQL Database のクエリストアヒント (プレビュー) について
Query Store Hints Preview でアナウンスがありましたが、SQL Database でクエリストアヒントがプレビュー機能として使用できるようになりました。
今まで、クエリストアを使用した実行プランの補正としては、プランの強制という機能があり、同一のクエリで複数の実行プランがある場合、特定のプランを使用するようにプランを強制することができました。
この機能を実行プランの補正に使うことができたのですが、プランの強制は「強制したい実行プランの情報がクエリストアに格納されている」必要があり、使用したい実行プランの情報がクエリストア上に格納されている必要がありました。
今回使用できるようになった「クエリストアヒント」については、クエリストアに格納されている実行プランのクエリについて「クエリヒントを適用することができる」機能となっており、「強制したいプランがクエリストアに存在していない」状態でも、プランの補正を柔軟に実施することができます。
類似の機能としては「プランガイド」を使用して、クエリヒントをアタッチすることができましたが、クエリストアヒントはプランガイドより容易にクエリヒントを適用することが可能です。(プランガイド、設定するのに少し手間がかかるんですよね…。)
公式のドキュメントは次の内容を確認してください。
日本語版の SQL Server の文字コードの基本
日本語版の SQL Server をインストールした環境の文字コード / 文字コードに関連するドキュメントについてまとめておきたいと思います。
今回はインストールタイプ (Box) の SQL Server を日本語版でインストールした環境をベースに考えていますが、これは、SQL Server のデータベースエンジンをベースとしている環境で共通の考え方になります。
過去のバージョンの情報にはなりますが、次の情報も参考になります。
クエリストアのサイズベースクリーンアップの基本動作について
SQL Server のクエリストアには「サイズベースクリーンアップ」という機能があります。
これについては、クエリ ストアを使用する際のベスト プラクティス に次のように記載が行われています。
重要
[最大サイズ (MB)] の制限は、厳密には適用されません。 ストレージ サイズは、クエリ ストアでディスクにデータが書き込まれる場合にのみ確認されます。 この間隔は、 [データのフラッシュ間隔 (分)] オプションによって設定されます。 クエリ ストアでストレージ サイズの確認の合間に最大サイズの制限を超えた場合は、読み取り専用モードに移行します。 [サイズ ベースのクリーン アップモード] が有効になっている場合は、最大サイズの制限を適用するクリーンアップ メカニズムもトリガーされます。
クエリストアの設定には最大サイズを指定する必要があり、この最大サイズに達した場合に、サイズベースのクリーンアップを行うことができます。(デフォルトはサイズベースクリーンアップが有効)
この動作について調べる必要があったので、確認した内容をまとめておきたいと思います。
SQL Database で CDC がプレビューで使用できるようになったので検証してみました
Introducing Change Data Capture for Azure SQL Databases (Public Preview) でアナウンスがありましたが、S3 以上の SQL Database ではプレビュー機能として CDC (Change Data Capture : 変更データキャプチャ) が使用できるようになりました。
CDC について結構忘れていたので、この機会にまとめておきたいと思います。
SQL Server 2012 の Backup to URL を現在の Azure BLOB ストレージに実施する際の注意点
SQL Server 2012 SP1 CU2 から、Backup to URL という機能がサポートされ、SQL Server のバックアップを Azure BLOB ストレージ上に直接取得することができるようになりました。
SQL Server 2012 / 2014 での実装では、ページ BLOB に対しての取得であり、制限事項 に記載されているようにストライピングでの取得ができないため、バックアップファイルの最大サイズは 1TB までとなります。
SQL Server 2012 ではバックアップの取得は次のようなクエリとなります。
CREATE CREDENTIAL azurestorage WITH IDENTITY = '<ストレージアカウント名>' , SECRET = '<アクセスキー>' ; BACKUP DATABASE AdventureWorks2012 TO URL = 'https://xxxxx.blob.core.windows.net/backup/adventureworks2012.bak' WITH CREDENTIAL='azurestorage',STATS=10
今回、Windows Server 2008 + SQL Server 2012 SP4 の環境を使用していたのですが、デフォルトの状態では、次のエラーが発生して、バックアップを取得できませんでした。
メッセージ 3271、レベル 16、状態 1、行 4 A nonrecoverable I/O error occurred on file "https://xxxxxx.blob.core.windows.net/backup/adventureworks2012.bak:" Backup to URL received an exception from the remote endpoint. Exception Message: リモート サーバーがエラーを返しました: (400) 要求が不適切です. メッセージ 3013、レベル 16、状態 1、行 4 BACKUP DATABASE is terminating abnormally.