SQL Server ではキャッシュされているクエリの情報を確認する際に、sys.dm_exec_query_stats を使用することが多いかと思います。
この DMV にどのようにクエリの情報がキャッシュされているかの基本について少しまとめてみたいと思います。
SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿
SQL Server ではキャッシュされているクエリの情報を確認する際に、sys.dm_exec_query_stats を使用することが多いかと思います。
この DMV にどのようにクエリの情報がキャッシュされているかの基本について少しまとめてみたいと思います。
No.1 からパスが来ていた、Automated Everything with SQL Server on IaaS VMs について少しまとめてみたいと思います。
「SQL Server も全部 No.1 のターンだ!!」っていう風にどうやって持っていくかが目下の課題です。
詳細については Automated Backup and Patching for SQL Server in Azure Virtual Machines が参考になります。
SQL Server 2008 以降では、「変更の追跡」の機能が使用できるようになりました。
データ変更の履歴を確認する機能としては、
を使用することができ、後者の変更の追跡については SQL Database の v12 Preview でも使用できるようになります。
今回の投稿では変更の追跡の機能について軽くまとめてみたいと思います。
変更の追跡については以下の情報を確認するとよいかと。
データ変更の追跡 (SQL Server)
変更の追跡について (SQL Server)
変更の追跡カタログ ビュー (Transact-SQL)
変更追跡関数 (Transact-SQL)
変更追跡関数を使用した変更の取得
SQL Server 2008 Column Change Tracking
Azure の仮想マシンでは SQL Server インストール済みの仮想マシンが提供されていますが、SQL Server は英語版のみが提供されています。
素の仮想マシンにライセンスを購入した SQL Server をインストールして使用する場合は、適切な言語の SQL Server をインストールすればよいですが、従量課金で SQL Server を使用する場合には、SQL Server インストール済みの仮想マシンを使用する必要があります。
SQL Server インストール済みの仮想マシンで日本語の SQL Server を使用する場合の作業内容をメモとして。
今回は SQL Server 2014 で実施していますが、他のバージョンでも同様の作業となります。
SQL Database ではデフォルトで使用することができますが、SQL Server では接続を暗号化するための証明書を使用することができます。
SQL Server への接続の暗号化
RDS for SQL Server でもサポートされていますね。
【AWS発表】Amazon RDS – SQL Server が SSL のサポートを開始
検証用に自己署名証明書を使用して接続を暗号化するための設定をまとめてみたいと思います。
自己署名証明書の作成には makecert を使用しており、使用方法については、以下が参考になります。
【Azure for ITPRO】自己署名証明書を作成する
付録 B: Windows Azure Service Management API の使用
SSL に使用する証明書の構成
Makecert.exe (証明書作成ツール)
暗号化した接続については以下の技術情報が参考になります。
SQL Server fails to start with error 17182 “TDSSNIClient initialization failed with error 0xd, status code 0x38” when server is configured to use SSL
When using SSL, SQL Failover Cluster Instance fails to start with error 17182
TDSSNIClient initialization failed with error 0xd, status code 0x36.
Read the rest of this entry »
去年の PASS Summit で Query Store という機能についての情報が公開されました。
都内で働くSEの技術的なひとりごと さんのブログで、PASS Summit で SQL Server の将来機能追加される機能でいけてるものがあったので少しみてみた でも触れられており、この機能は今後注目されていくかと思います。
詳細については以下を参照していただくとよろしいかと思います。
SQL Server Query Store
Newest SQL Server Feature ? “Query Store”
PASS Summit で Query Store – A New SQL Query Tuning Feature [DBA-407-M] というセッションが開催されおり、この情報をベースにして、この Query Store について情報を軽くまとめてみたいと思います。
これらの情報はセッションで発表されたものがベースとなっており、今後動作が変更される可能性がありますので、予めご了承ください。。
AlwaysOn 可用性グループで複数の NIC を使用して、複製のトラフィックについては特定のネットワークを利用したい場合の方法をまとめてみたいと思います。
基本的な設定方法についてはデータベースミラーリングも同等です。
WSFC (Windows Server Failover Clustering) を使用するためには、Active Directory が必要となるため、ドメインコントローラーの準備が必要となります。
検証環境などではドメインコントローラーを冗長構成にしていなくても、検証は可能ですが実運用環境では冗長化されたドメインコントローラーの利用が強く推奨されます。
詳細については DC 停止時の WSFC への影響について が参考になります。
また フェールオーバー クラスター ステップ バイ ステップ ガイド: Active Directory のアカウントの構成 も確認をしておくとよいかと。
Azure の仮想マシンでディスクのスループットを向上させる方法として、複数のデータディスクを使用して記憶域プールでディスクを構成する方法があるかと思います。
記憶域プールでは、あとからプールにディスクを足し、ディスクの容量を拡張することができますが、SQL Server のログファイルの用途で使用するディスクについて、性能を向上させるためにあとからディスクを足すのは効果的ではない可能性がありますので、その点についてまとめてみたいと思います。
Azure Load Balancer (ALB) と Internal Load Balancer (ILB) で同一のパブリックポートは使用できませんが、一つの環境に両方とも作成することができます。
この作成方法についてメモを。
ILB については一つしか作成できないようですので、注意しておいたほうがよさそうですね。
BadRequest: LoadBalancer already exists: AlwaysOnILB. Only one internal load balancer allowed per deployment.
ALB と ILB の両方を可用性グループのリスナーに使いたかったのですが、うまくいったりいかなかったりと挙動が安定しないので、これは別の機会に調査してみたいと思います。
# DNS の解決方法についても考慮が必要になってくるので。