3

SQL Azure で奇妙な問題が発生しました。これは、一部のユーザーがデータ入力を行っている状態で、完全に稼働する直前の小さなフェーズで発生しました。

「サーバー 'xxx' のデータベース 'dbname' は現在利用できません。後で接続を再試行してください。問題が解決しない場合は、カスタマー サポートに連絡してください。」

SQL Azure データベース Web サイト経由で接続しようとすると、「ファイアウォール チェックに失敗しました。リソース ID : 1。要求の最小保証は 0、最大制限は 180、データベースの現在の使用量は 0 です。ただし、サーバーは現在ビジー状態のため、このデータベースに対して 0 より大きいリクエストをサポートできません。」

Azure 管理 Web サイトのデータベース セクションを見ると、サイトは DB にアクセスできないと報告していましたが、残念ながら正確なエラー メッセージをキャプチャできませんでした。

奇妙なことに、私のユーザーの何人かは、DB にアクセスしてデータを表示および保存するシステム Web サイトにログインできました。しかし、最終的には接続も失われました。

約 1 時間後、データベースが復活し、再び完全にアクセスできるようになりました。

ここからのクエリを使用してサーバーのマスター db イベント テーブルを確認しましたが、いくつかの接続エラーがありましたが、興味深いものは何もありませんでした。スロットリングやデッドロックはなく、「接続の確立中にクライアントがタイムアウトした可能性があります。接続タイムアウトを増やしてみてください」といういくつかの接続の失敗。説明で

他に見るべきアイデアはありますか?

このため、ビジネス ユーザーの自信は大幅に低下しました。

4

1 に答える 1

2

あなたの説明は、次の理由で通常発生します。

1) SQL 接続の制限に達しています。これが頻繁に見られないと仮定すると、原因である可能性は低いです。ただし、接続プールに制限を設けることを確認する価値があります。

2)隣人が非常にうるさいため、ノードが再調整されます。

3) ハードウェア障害と Microsoft がデータベースを別のノードでオンラインに戻す。これには時間がかかる場合があります。

通常、これは、Microsoft がスロットを調整したり、ボックスに問題が発生したりして、全員を回復しなければならなかったときに見られます。共有システムを使用しているため、そのノード内の他のすべての人も回復しているため、時間がかかる場合があることに注意する必要があります。

懸念があり、ビジネスの解決策を得る必要がある場合の最善の策は、MS でサポート チケットを開き、これを見た時間とエラー メッセージを提供することです。彼らは調査を行い、通常、理由を示す非常に優れたバックエンド テレメトリを持っています。これにより、ビジネスに解決策を与えることができ、その後、将来の計画と不測の事態について電話をかけることができます. SQL Azure は共有システムであり、一時的なエラーが発生する可能性があることに注意する必要があります。設計にフェールオーバーを追加する必要がある場合があります。

于 2013-05-10T23:58:13.737 に答える