セッション管理では、テナントのセッションの表示、セッション統計の集計、デッドロックの検出サービスを提供します。
背景
アプリケーションとデータベースの接続はセッションと呼ばれます。セッションタブで、全セッション数、アクティブセッション、**アイドルセッション数**を確認できます。
テナントのセッション
OceanBase Cloudコンソールにログインします。
左側のナビゲーションペインで、**インスタンス**をクリックします。
インスタンスリストで対象のインスタンスを見つけ、インスタンス名をクリックしてインスタンスのダッシュボードに入ります。
左側のナビゲーションペインで、**テナント**をクリックします。
テナント管理リストで対象のテナント名をクリックして、テナントのダッシュボードに入ります。
左側のナビゲーションペインで、**診断**をクリックします。
**診断ページの下部で、セッション管理**タブを選択します。
検索ボックスにSQLを入力してセッションを検索できます。
**アクティブなセッションのみを表示**を選択し、セッションリストでアクティブなセッション情報を確認します。
**SQL IDでセッションを集計**を選択すると、同じSQL IDを持つセッションが集約されて表示されます。
説明
SQL IDで集計することで、異なるSQL IDのトラフィックと消費量を比較し、システムリソースの消費状況を確認できます。
- テナントのセッションには、以下の情報が含まれます:
セッション情報 |
説明 |
|---|---|
| セッションID | 現在のセッションのIDです。セッションの一意の識別子です。 |
| SQL | セッションが現在実行しているSQLの具体的な内容です。 |
| ユーザー | セッションのログインに使用したデータベースユーザー名です。 |
| 発信元 | セッションを開始したアドレスです。 |
| 宛先 | セッションを受信したアドレスです。 |
| データベース名 | 現在のセッションがアクセスしているデータベース名です。 |
| コマンド | セッションが現在実行しているコマンドタイプです。 |
| 実行時間(s) | セッションが現在実行しているSQLにかかった時間です。**実行日時**でセッションをソートできます。 |
| ステータス | 現在のセッションのステータスを表示します。CLOSED(閉じた)と ACTIVE(アクティブ)の2種類があります。 |
- 特定のセッションをクリックし、操作列の セッションを閉じる をクリックすると、対応するセッションを削除できます。複数のセッションを選択し、セッションをバッチで閉じる を選択します。
セッション統計
セッション統計タブでは、ユーザー、アクセス元、データベースの各観点から、現在のテナントのセッション活動数とセッション総数を確認またはエクスポートできます。
右上の 10秒間のSQL分析 をクリックすると、テナント内の10秒間のSQL実行状況を統計できます。SQLタイプ、ユーザー、ソース、データベース のカテゴリで確認できます。
デッドロック検出
OceanBaseデータベースは、マルチバージョン2フェーズロックを使用して、その並行制御モデルの正しさを維持しています。ロックメカニズムは、正しいデータの並行性と一貫性を保証する上で重要な要素です。
ロックメカニズムの実装によりデッドロックが発生することがあります。デッドロックとは、リソースに対する循環依存関係を指します。例えば、トランザクションAとトランザクションBが同時にリソース1とリソース2を取得しようとする場合、トランザクションAがリソース1を先に取得してからリソース2を取得しようとし、トランザクションBがリソース2を先に取得してからリソース1を取得しようとするとします。このとき、どちらのトランザクションも既に取得したリソースを放棄する意思がない場合、どのトランザクションも正常に終了できません。
説明
OceanBaseデータベース3.2以降のバージョンは、デッドロック検出機能をサポートしています。
操作手順
デッドロック検出を初めて使用する場合、デッドロック検出を有効にする をクリックします。デッドロック検出機能が有効になると、OceanBaseデータベースはデッドロックイベントをリアルタイムで検出し、処理します。これにより、パフォーマンスの約2%が消費されます。テナントの状況に応じて、有効にするかどうかを選択してください。
デッドロック検出が有効になると、システムはそのテナント内にデッドロックが存在するかどうかを診断し始め、デッドロックの詳細 ページに診断結果を返します。過去7日間の検出結果は保持されます。
右上の デッドロック検査を無効にする および リフレッシュ をクリックすると、デッドロック検出の詳細を無効にしたり、更新したりできます。