[FAQ] よくある質問事項について (Azure SQL Database)

 

高原 伸城

Support Escalation Engineer

 

皆さん、こんにちは。 BI Data Platform サポートチームの 高原 です。

今回は、Azure SQL Database でよくある質問事項について紹介します。

 

Q1)  アプリケーション から Azure SQL Database への接続が数十秒間行えない現象が発生したが、データセンター側で何らかの問題が発生していたのか知りたい。

A1) 長期間(数分間)、継続的にアプリケーション から Azure SQL Database への接続が行えない状況が発生していない限り、データセンター側の問題ではありません。 Azure SQL Database では 高可用性を維持するため、定期的に リコンフィグレーション (Reconfiguration) を行っており、リコンフィグレーションの間、数十秒間、一時的に アプリケーション から Azure SQL Database への接続が行えない状況が発生する可能性があります。 詳細は、以下の公開情報を参照。

[SQL Database] Reconfiguration (リコンフィグレーション) は悪ではない。

 

Q2)  Azure SQL Database を使用したシステムを構築するうえで、何か考慮すべき内容があれば知りたい。

A2) Azure SQL Database では、高可用性を維持するため、定期的に リコンフィグレーション (Reconfiguration) が実行されたり、また、ネットワークの問題により アプリケーション から Azure SQL Database へ確立されている接続が遮断される可能性があるため、アプリケーション側でリトライロジックを実装することを推奨しています。詳細は、以下の公開情報を参照。 [SQL Database] アプリケーション作成における推奨事項について (Microsoft Azure SQL Database) SQL Database アプリケーションの開発の概要

Q3)  アプリケーション から Azure SQL Database への接続が、接続タイムアウトで失敗する現象を改善する方法を知りたい。

A3) Azure SQL Database へ接続するアプリケーション側で接続タイムアウト値を延ばすことにより、接続タイムアウトが発生する現象を軽減させることができます。詳細は、以下の公開情報を参照。 [SQL Database] 接続タイムアウトの発生を改善したい

Q4)  Azure SQL Database の DTU が 100 % 近い値を推移し、クエリがコマンドタイムアウトで失敗する現象を改善する方法について知りたい。

A4) アプリケーション側でコマンドタイムアウト値を延ばす、インデックスの統計情報を更新する、強制的に実行プランをリコンパイルする、もしくは、使用しているデータベースの DTU (価格レベル) を変更するなどの方法が一般的に有効です。詳細は、以下の公開情報を参照。 Microsoft Azure SQL Database パフォーマンス チューニング (第1回) [Azure SQL Database] DTU使用率が100%になった時にやるべき事 Azure SQL Databaseの適切な価格レベル(DTU)を選択する指標について

Q5)  Azure SQL Database サーバー名 (******.database.windows.net) に紐づく ゲートウェイ IP アドレス は変更される可能性があるか、また、固定化する方法は存在するか知りたい。

A5) ゲートウェイ IP アドレス は変更される可能性がありますが、頻繁に変更されることはありません。また、仮に変更されたとしても、管理者宛にメールで通知が行われます。残念ながら ゲートウェイ IP アドレスを固定化することは出来ません。なお、現在 ゲートウェイ として使用されている IP アドレス、および、データセンターで使用される IP アドレスの範囲については公開されています。詳細は、以下の公開情報を参照。 Azure SQL Database ゲートウェイ IP アドレス Microsoft Azure Datacenter IP Ranges

 

Q6) アプリケーションからAzure SQL Database への確立された接続すべてを強制的にクローズさせる方法があれば知りたい。

A6) データベースの DTU (価格レベル) が変更されるタイミングで、対象となっているデータベースに接続しているセッションがすべてクローズされます。 そのため、アプリケーションが接続しているデータベースの DTU (価格レベル) を変更することで、アプリケーションから確立されている接続をすべて強制的にクローズさせることが可能です。

 

Q7) キャッシュされたクエリの実行プランを削除する方法について知りたい。

A7) "ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE" コマンドを実行することで、特定のデータベース上のキャッシュされたクエリの実行プラン (プロシージャ キャッシュ) を削除することが可能です。 ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)

 

Q8) Azure SQL Database の既定の時刻は 協定世界時間 (UTC) となっているが、日本時間 (UTC + 9時間) に変更する方法が存在するか知りたい。

A8) Azure SQL Database の既定の時刻を日本時間に変更することは出来ません。 DATEADD 関数を使用することで、表示を日本時間に変換することは可能です。

[コマンド例]  select dateadd(hour, 9, getdate()) as 'DateTime' DATEADD (Transact-SQL)

 

Q9) 誤って削除したデータベースを復旧する方法が存在するか知りたい。

A9) 可能です。詳細は以下の公開情報を参照。 データベースの自動バックアップを使用した Azure SQL Database の復旧

+ 削除されたデータベースの復元

 

Q10) プレビュー (Preview) 機能についてもサポートをお願いすることが出来るか知りたい。

A10) 英語 (English) のみの対応となりますが、お問い合わせを起票することは可能です。 Azure Preview (プレビュー) 機能 のサポートについて

 

Q11) Azure 仮想マシン上に配置したアプリケーション から Azure SQL Database に対する通信をインターネット回線にでることなく、データセンター内のみの通信に制限することが可能となるか知りたい。

A11) Virtual Network サービス エンドポイントを使用することにより、Azure 仮想マシン上に配置したアプリケーション から Azure SQL Database に対する通信をデータセンター内のみに限定することが可能となります。 仮想ネットワーク サービス エンドポイント

 

※ 本Blogの内容は、 2018年5月 現在の内容となっております。