Monday, 28 November 2011

Checking Oracle processes in windows.

How to check Oracle processes in windows using command line?

Is there any command in Windows like ps command in Unix for Oracle DBA?

In unix there is command called “ps“. Using ps command Oracle DBA can check all type of processes which are running in system. Ps command is very useful to administrating and monitoring oracle in unix/linux systems for all Oracle DBA.

But unfortunately there is no command available in windows just like ps in unix! Means there is no way to find out running processes in windows system using command line! Only task manager option is available in windows system for Oracle DBA. Using task manager we can check running processes in windows system. Task manager is GUI tool. Sometimes it is very difficult to monitoring and administrating Oracle on windows systems for Oracle DBA using GUI tool.


Alternate of ps command in windows (Great tip for Oracle DBA):

No it is not TRUE. Really !!!
Windows has own command to trace all running processes in the system. Using “tasklist” command Oracle DBA can able to trace all running processes in windows including oracle,sqlplus,exp,imp and others. Tasklist command is very closer to ps command. Using tasklist command Oracle DBA can able to access process ids, session ids, cpu time, and modules of running processes in Oracle on Windows.
Please check help of tasklist command.

C:>tasklist /?

TASKLIST [/S system [/U username [/P [password]]]] [/M [module] | /SVC | /V] [/FI filter] [/FO format] [/NH]

Description: This command line tool displays a list of application(s) and associated task(s)/process(es) currently running on either a local or remote system.

Parameter List:
/S system Specifies the remote system to connect to.
/U [domain]user Specifies the user context under which the command should execute.
/P [password] Specifies the password for the given user context. Prompts for input if omitted.
/M [module] Lists all tasks that have DLL modules loaded in them that match the given pattern name. If the module name is not specified, displays all modules loaded by each task.
/SVC Displays services in each process.
/V Specifies that the verbose information is to be displayed.
/FI filter Displays a set of tasks that match a given criteria specified by the filter.
/FO format Specifies the output format.
Valid values: “TABLE”, “LIST”, “CSV”. /NH S
pecifies that the “Column Header” should not be displayed in the output. Valid only for “TABLE” and “CSV” formats.
/? Displays this help/usage.

Filters:
Filter Name Valid Operators Valid Value(s) ———– ————— ————–
STATUS eq, ne RUNNING | NOT RESPONDING
IMAGENAME eq, ne Image name
PID eq, ne, gt, lt, ge, le PID value
SESSION eq, ne, gt, lt, ge, le Session number
SESSIONNAME eq, ne Session name
CPUTIME eq, ne, gt, lt, ge, le CPU time in the format of hh:mm:ss. hh – hours, mm – minutes, ss – seconds
MEMUSAGE eq, ne, gt, lt, ge, le Memory usage in KB
USERNAME eq, ne User name in [domain]user format
SERVICES eq, ne Service name
WINDOWTITLE eq, ne Window title
MODULES eq, ne DLL name

Examples:
TASKLIST
TASKLIST /M
TASKLIST /V
TASKLIST /SVC
TASKLIST /M wbem*
TASKLIST /S system /FO LIST
TASKLIST /S system /U domainusername /FO CSV /NH
TASKLIST /S system /U username /P password /FO TABLE /NH TASKLIST /FI “USERNAME ne NT AUTHORITYSYSTEM” /FI “STATUS eq running”

Example:
C:>tasklist

Image Name PID Session Name Session# Mem Usage
========================= ====== ================ ======== ============
System Idle Process 0 Console 0 16 K
oracle.exe 4 Console 0 282,100 K
smss.exe 636 Console 0 420 K
csrss.exe 692 Console 0 6,496 K
winlogon.exe 716 Console 0 1,336 K
services.exe 760 Console 0 4,020 K
lsass.exe 772 Console 0 7,188 K
svchost.exe 956 Console 0 5,568 K

Means using tasklist or tasklist -v command we can monitor and manage our oracle processes.