tshizuku03の日記

主にoracleやLinuxコマンドについての記事を載せていきたいと思っています。

【Oracle】プロセス数

プロセス数の確認

1.現在、インスタンスじょうで起動しているプロセス数の総数を確認します。

SQL> select count(*) from v$process;

COUNT(*)
----------
31    ←バックグラウンド・プロセス及びサーバ・プロセスの合計数

 

2.アプリケーションの確認

接続数の多いアプリケーションを確認できる

SQL> col PROGRAM for A40

SQL> select program,count(*) from v$process group by program; 

PROGRAM COUNT(*)
---------------------------------------- ----------
oracle@node1.oracle11g.jp (LGWR) 1
oracle@node1.oracle11g.jp (ARC2) 1
oracle@node1.oracle11g.jp (J001) 1
oracle@node1.oracle11g.jp (PMON) 1
oracle@node1.oracle11g.jp (RECO) 1
oracle@node1.oracle11g.jp (ARC0) 1
oracle@node1.oracle11g.jp (J000) 1
PSEUDO 1
oracle@node1.oracle11g.jp (DIAG) 1
oracle@node1.oracle11g.jp (DBRM) 1
oracle@node1.oracle11g.jp (CKPT) 1

PROGRAM COUNT(*)
---------------------------------------- ----------
oracle@node1.oracle11g.jp (SMON) 1
oracle@node1.oracle11g.jp (D000) 1
oracle@node1.oracle11g.jp (ARC3) 1
oracle@node1.oracle11g.jp (DIA0) 1
oracle@node1.oracle11g.jp (MMNL) 1
oracle@node1.oracle11g.jp (CJQ0) 1
oracle@node1.oracle11g.jp (MMON) 1
oracle@node1.oracle11g.jp (S000) 1
oracle@node1.oracle11g.jp (SMCO) 1
oracle@node1.oracle11g.jp (QMNC) 1
oracle@node1.oracle11g.jp (Q002) 1

PROGRAM COUNT(*)
---------------------------------------- ----------
oracle@node1.oracle11g.jp (VKTM) 1
oracle@node1.oracle11g.jp (TNS V1-V3) 1
oracle@node1.oracle11g.jp (Q001) 1
oracle@node1.oracle11g.jp (W000) 1
oracle@node1.oracle11g.jp (GEN0) 1
oracle@node1.oracle11g.jp (PSP0) 1
oracle@node1.oracle11g.jp (MMAN) 1
oracle@node1.oracle11g.jp (DBW0) 1
oracle@node1.oracle11g.jp (ARC1) 1

31行が選択されました。

 

3.実行しているプログラムやSQL文の確認

必要に応じて、発行されているSQL文や、実行しているプログラムを確認します。

select s.sid, s.username, p.pid, p.spid, s.program, a.sql_text

from v$session s, v$process p, v$sqlarea a

where s.paddr = p.addr

and (s.sql_id=a.sql_id or s.prev_sql_addr=a.address)

and  (s.sql_hash_value=a.hash_value or s.prev_hash_value=a.hash_value)

and p.pid in (select pid from v$process where program like '%TNS V1-V3%')

and s.audsid != USERENV('SESSIONID');

 p.pid in (select pid from v$process where program like '%TNS V1-V3%')

のlikeには、2で確認したプログラムを指定する