0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Oracle 19c SQLモニタリング方法

Posted at

この資料について

Oracle Database 19cには、リアルタイムSQL監視の機能がある。
リアルタイムSQL監視を有効にする方法を記載する

モニターの適用条件

公式ドキュメントより抜粋

単純データベース操作

単一のSQL文、あるいは単一のPL/SQLサブプログラムはシンプル・データベースの操作です。SQL監視機能が有効な場合は、次のいずれかの条件が満たされるときに、データベースは単純データベース操作を自動的に監視します。

  • SQL文やPL/SQLのサブプログラムが、CPUまたはI/O時間を1回の実行で5秒以上消費した
  • SQL文がパラレルで実行される
  • SQL文で/*+ MONITOR */ヒントを指定している
  • イベントsql_monitorで監視対象の文のSQL IDのリストを指定している
    • たとえば、次の文では、SQL ID 5hc07qvt8v737と9ht3ba3arrzt3に対してインスタンス・レベルの監視を強制しています

結論:ヒント区が安定

  • /*+ MONITOR */ヒントを一時的に設定することでクエリをキャプチャすることが可能

SQLレポートの出力方法

公式ドキュメントより抜粋


SET FEEDBACK OFF
SET TERMOUT OFF
SET TRIMSPOOL ON
SET TRIM ON
SET PAGES 0
SET LINESIZE 1000
SET LONG 1000000
SET LONGCHUNKSIZE 1000000

SPOOL /tmp/long_sql.htm
SELECT DBMS_SQL_MONITOR.REPORT_SQL_MONITOR(
         report_level => 'ALL', 
         TYPE         => 'active') 
FROM   DUAL;
SPOOL OFF

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?