Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

To check all background process in oracle we can see using v$bgprocess view. I want to check which background process are active. Can anybody please help ?


share|improve this question

migrated from Apr 29 '13 at 11:46

This question came from our site for professional and enthusiast programmers.

What's wrong with querying that view you already found? – a_horse_with_no_name Apr 29 '13 at 7:02
What OS? Windows/Linux/AIX .... ? – Phil Apr 29 '13 at 12:00
17:31:15 SYSTEM@sandbox> ed
Wrote file S:\spool\sandbox\BUFFER_SYSTEM_34.sql

  1  select sid,  process, program
  2    from v$session s join v$bgprocess using (paddr)
  3   where s.status = 'ACTIVE'
  4*    and rownum < 5
17:31:21   5  /

       SID PROCESS                  PROGRAM
---------- ------------------------ ----------------------------------------------------------------
         2 1332                     ORACLE.EXE (PMON)
         3 480                      ORACLE.EXE (PSP0)
         4 976                      ORACLE.EXE (VKTM)
         5 992                      ORACLE.EXE (GEN0)

Elapsed: 00:00:00.05

However, this doesn't make much sense as they're always stated as active, so I guess you should define what you mean saying active.

share|improve this answer
thanks but just want to know why you have given "rownum < 5" in last ? Here active means only "active background processes" . Some are sometimes sleeping and wakeup periodically (as smon,pmon) – user2331048 Apr 29 '13 at 9:57
The ROWNUM < 5 is clearly there to avoid having an unnecessarily long listing in the answer. You also overestimate the amount of information available from inside the database. The Oracle code has to be run on many platforms, so there is (sensibly) a limit on what the amount of OS specific stuff they include. From the database perspective SMON is active regardless on whether it is asleep or awake. If you want to know what it is actually doing right now then you must turn to your OS tools. – APC Apr 29 '13 at 10:07
  • from the top menu select "View" then "Task Progress". it will display back the progress window.
share|improve this answer
select *
from v$session ses
join v$sql sql on
     sql.ADDRESS = ses.SQL_ADDRESS
where 1=1
and upper(ses.OSUSER) like '%USERNAME%'

STATUS = ACTIVE if the session is running.

If the client logged off, the entry will dissappear after some time.

share|improve this answer
The OP is asking about background processes: these tend notr to show up as SQL executions. – APC Apr 29 '13 at 10:02
Yeah, I mistook "active" meaning which sessions are currently running. – Devolus Apr 29 '13 at 11:55

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.