sql >> データベース >  >> RDS >> Oracle

Oracle DBで実行中のプロセスを表示するにはどうすればよいですか?

    V$SESSIONからいくつかの列を取得してV$SQLからSQLステートメントを取得したいと思うかもしれません。 Oracle自体が実行しているバックグラウンドプロセスを除外したい場合

    SELECT sess.process, sess.status, sess.username, sess.schemaname, sql.sql_text
      FROM v$session sess,
           v$sql     sql
     WHERE sql.sql_id(+) = sess.sql_id
       AND sess.type     = 'USER'
    

    外部結合は、必要に応じて、現在アクティブではないセッションを処理することです。 V $ SQLからsql_fulltext列を取得することもできます。この列には、最初の1000文字ではなく完全なSQLステートメントが含まれますが、これはCLOBであるため、処理が少し複雑になる可能性があります。

    現実的には、SP_WHOが提供するよりもはるかに多くの情報を取得できる可能性が高いため、V$SESSIONで利用可能なすべてのものを確認することをお勧めします。



    1. Oracle-XMLTYPE:値を更新する方法

    2. MySQLトリガーの使用

    3. データベーステーブルのソート順列の使用

    4. SOUNDSLIKE演算子がMySQLでどのように機能するか