データベース
 Computer >> コンピューター >  >> プログラミング >> データベース

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

Oracle®EnterpriseManager(OEM)12cおよび13cには、OEM Real-Time Automatic DatabaseDiagnostic Monitor(Real-Time ADDM)と呼ばれるサポートツールを含む多くのパフォーマンス分析ツールが含まれており、OracleDBAはリアルタイムの継続的なパフォーマンスのトラブルシューティングまたはチューニングに使用できます。問題。このブログでは、リアルタイムADDMを実際に使用して、100%のセッション、プロセスの使用率、入出力(I / O)の事前定義されたクリティカル制限の超過など、あらゆるタイプのデータベースヘルスの問題による緊急事態を特定して解決する方法についての知識を共有しています。メモリ、または相互接続の制限。このような場合、Real-TimeADDMは非常に便利なツールであり、データベースの状態についてより詳細なリアルタイムで現実的なADDM分析を行う機能を提供するため、RADDMとADDMを比較してみましょう。

ADDMとは何ですか?

ADDMは、Oracle Database(バージョン10g以降)が提供するツールで、自動ワークロードリポジトリ(AWR)のデータを分析して、潜在的なパフォーマンスのボトルネックを特定します。識別された問題ごとに、根本原因を特定し、問題を修正するための推奨事項を提供します。

リアルタイムADDMとは何ですか?

Oracle Enterprise Manager(OEM)Cloud Control 12cで、OracleはReal-Time ADDMツールを導入しました。これは、従来はデータベースの再起動が必要だった、応答しないデータベースやハングしたデータベースの問題の分析と解決に役立ちます。Real-TimeADDMは、一連の事前定義された基準を実行します。データベースの現在のパフォーマンスを分析します。いずれかの基準が一致する場合、リアルタイムADDMは、データベースを再起動することなく、特定された問題(デッドロック、ハング、共有プールの競合、その他の例外状況など)を解決するのに役立ちます。

データベース管理者(DBA)は、リアルタイムADDMを使用して、データベースのパフォーマンスを自動的に分析できます。たとえば、データベースがハング状態であり、パフォーマンスの問題のために実行速度が遅いためにデータベースにログインできない場合です。このような状況では、リアルタイムADDMはグローバルリソースでのSQL競合の原因を特定します。

Real-Time ADDMは、ADDMのようなすべての現実的なデータベース時間分析も実行します。異常に高いデータベースアクティビティが発生しているデータベースでReal-Time ADDMを呼び出すと、現在データベースに影響を与えているパフォーマンスの問題を検出し、データベース時間の主要な消費者を見つけることができます。 SQLセッション、アプリケーション接続など。

ADDMとリアルタイムADDMの違い

ADDMはデータベースレベルのパフォーマンス診断ツールとして提供され、Real-TimeADDMはOEMバージョン12cplusツールです。リアルタイムADDMを使用するには、データベースへの接続を備えたOEM対応が必要です。

ADDMとReal-TimeADDMの主な違いは、Real-Time ADDMは診断モード接続を使用して、データベースインスタンスのシステムグローバル領域(SGA)のアクティブセッション履歴(ASH)データに直接アクセスし、通常モード接続をバイパスすることです。ラッチやキューなどのグローバルリソースや過剰な数のホストリソースを使用せずに。

リアルタイムADDMを使用する理由

次のリストは、リアルタイムADDMを使用する理由を示しています。

  • データベースがハングしているときや実行速度が遅いときに、現在のデータベースのパフォーマンスを分析します。
  • 深刻な競合の原因を見つけます。
  • データベースの時間分析を実行して、パフォーマンスの最大の問題を検出します。
  • 診断接続をSGAに転送します。
  • 大きなトレースファイルを読み取って分析するために、ORADEBUG(OracleDatabaseの基本的なトレースユーティリティ)のHANGANALYZEは必要ありません。

HANGANALYZEとは何ですか?

HANGANALYZEは、ハングまたはブロッキングセッションに関する詳細を見つけるためのORADEBUG内のオプションです。 HANGANALYZEオプションを使用することにより、DBAはハングデータベースへの接続を取得し、トレースファイルを生成できます。トレースファイルを読み取ったり、トレース分析ツールで使用して、ハングしたデータベースの問題を特定したりできます。

リアルタイムADDMデモンストレーションのトラブルシューティング

ターゲットデータベースへの接続を使用してOEM12cを設定している場合、データベースインスタンスがハング状態のときに、次の手順を使用してリアルタイムADDM分析を使用できます。

ターミナルセッションを開き、データベースへの接続を試みます。セッションがまだ開始されていないことに注意してください。次の画像に示すように、接続が確立されていない場合、ハング状態のためにデータベースにログインできません。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

次に、OEMに移動し、ターゲットの下に移動します メニューで、Databases for Troubleshootingを選択します データベース名を検索します。次の画像に示すように、私はCAC****1Pを検索しています 。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

データベース名をクリックします。少し時間がかかる場合がありますので、更新をお待ちください。少しの間、次の画像で強調表示されているエラーメッセージが表示されます。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

このデータベースインスタンスの場合、これは、データベース管理者(DBA)が状況を診断するためにリアルタイムADDMが非常に役立つ場所です。そのデータベースインスタンスでリアルタイムADDMの使用を開始しましょう。ページのデータベースから、パフォーマンスに移動します メニューを選択し、Real-Time ADDMを選択します 、次の画像に示す画面に移動します。この状況では、インスタンスがハングしているため、Real-TimeADDMは直接接続を使用します。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

次の画像に示すように、ハングした状況でのリアルタイムADDM接続にはSYSDBAクレデンシャルを使用する必要があります。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング (Picture5.png)

診断モード接続が確立された後、前の1時間から、メモリ内のASHデータを直接読み取ることができます。ログイン後、次の画像に示すように、アクティビティプログラムの上部にtopactivityを表示できます。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

データベースがハングする原因となっている問題がわかります。この例では、アプリケーションの重みクラスに関連しています。この状況に対処するには、診断を開始して、問題に関するより多くの洞察を得る必要があります。 開始をクリックします 分析を開始します。リアルタイムADDMは、過去10分間のASHサンプルを調べて、問題を特定します。 10分後に停止するには、[停止]をクリックします 。これが行われた後、リアルタイムADDMは優先度に基づいて結果を表示します。次の画像は、調査結果での分析を示しています タブ。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

この例では、未解決またはセッション待機チェーンが表示され、データベースがハングします。この問題を修正するための推奨事項は、次の画像に示されています。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング この例では、リアルタイムADDMは(前の画像に示されているように)特定のセッションを強制終了することを推奨しています。終了する必要のあるプロセスの詳細については、データのハングにアクセスしてください。 次の画像に示すように、タブ:

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

ファイナルブロッカーをクリックします ブロッカーセッションの概要を表示します。推奨されるように、データベースレベルでセッションの詳細があるセッションを強制終了します。セッションID(SID)、シリアル番号、およびOSプロセスID。それでもデータベースにログインできない場合は、OSプロセスIDを強制終了するしかありません。これを行うには、次の画像に示すように、ターミナルを開いてセッションを強制終了し、問題を引き起こします。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング

その後、ブロックされたセッションがリアルタイムADDManalysisウィンドウで続行できることを確認できます。次に、ターミナルからSQL Plus接続に接続してみます。今回は、次の画像に示すように接続が成功します。

ハングしたOracleデータベースとReal-TimeADDMを使用したセッションのトラブルシューティング 結論

OEM Cloud Control12cのReal-TimeADDMツールは、重要なデータベースの正常性診断をサポートするOracleの最も優れたツールの1つです。ハングしたデータベースの場合、Real-Time ADDMは、特にADDMの限定された使用法、およびORADEBUGのHANGANALYZEトレースユーティリティと比較した場合に、DBAの決定的で効果的なサポートになります。前の手順を適用して、データベースまたはハングしたセッションの問題を克服し、データベースを稼働させることができます。

[フィードバック]タブを使用して、コメントを書き込んだり、質問したりします。


  1. Nuxt3とサーバーレスRedisの使用を開始する

    はじめに アプリケーションの使用状況を追跡したり、リソースの使用率を制限したり、キャッシュからデータをフェッチしてアプリのパフォーマンスを向上させたりする必要がある場合は、Redisがこれらの要件に対する答えであることがわかります。 Redisは、メモリ内のKey-Valueデータベースです。これはオープンソースであり、RemoteDictionaryServerの略です。 この記事では、Upstash、Redisデータベース、およびVueSSRフレームワークの最近のベータリリースであるNuxt3について説明します。これは、Redisデータベースについて説明する初心者向けの記事で、 Nux

  2. 一般的な VPN の問題、トラブルシューティングのヒントと修正方法

    VPN は、インターネットの閲覧中にオンライン プライバシーを保護するために不可欠なセキュリティ ツールの 1 つです。 Web を安全に閲覧できるようにするだけでなく、地理的に制限されたコンテンツのブロックを解除するなど、他の多くの利点も提供します。 VPN ツールの助けを借りて、制限された Web サイトや、Netflix、Hulu、Disney+、ESPN などのストリーミング プラットフォームのブロックを簡単に解除できます。任意の場所のリモート サーバーに簡単に接続して、お住まいの地域では利用できないお気に入りの映画やテレビ番組を楽しむことができます。はい、魔法のように機能します!