Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • sesswait.sql Oracle
  • V$CONTROLFILE_RECORD_SECTION reference notes. Oracle
  • to see when crontab is changed. Linux/Unix
  • Finding locked objects Oracle
  • send attachment from unix-shell script Linux/Unix
  • find_pk.sql /* Find Primary Key */ Oracle
  • initUOCIOTTO.ora Oracle
  • Resolving RMAN Hung Jobs Oracle
  • Another Tuning Article for subheap of shared pool Oracle
  • Passing from Unix to PLSQL using bind variables Linux/Unix
  • For Perl DBI installation and testing program PHP/MYSQL/Wordpress
  • Find execution plan from dba_hist_sql_plan for a specific SQL_ID and PLAN_HASH_VALUE fplan.sql Oracle
  • Locktree.sql Oracle
  • Good notes for shared pool Oracle
  • dbinv.sql Oracle

Which environment is used by currently running process ( Very good)

Posted on 22-May-2009 By Admin No Comments on Which environment is used by currently running process ( Very good)

Goal

After a process has been started, in order to find out the environment that was used to start it, the following methods can be used, depending on the OS platform:

Solution

1. Determine the pid of the process at OS level, eg for the smon process:

ps -ef | grep smon

2. Get the environment of the process:

SOLARIS:

pargs -e | grep ORACLE

LINUX:

cat /proc//environ

AIX:

ps eauwww

HP-UX:

On this Unix flavor there is no command to grasp the process environment directly. This can only be extracted using a debugger from the _environ structure. This procedure can be used on the other Unix flavors, as follows:

gdb smon
This attaches gdb to the pid mentioned above. The smon name is just an indication that the process we attach to is smon, but the only parameter that matters is the pid.

After attaching to the process, the following command extracts the information from the _environ list:

p ((char**)_environ)[0]@30

which would list the first 30 environment variables. If more are defined, just increase the parameter after @.

As well, the list can be extracted one item from the list at a time, using an iterator like:

p ((char**)_environ)[i]

which would extract element #i+1.

Windows:

To get the information on Windows, 2 things are needed:

1. check the registry for the ORACLE_* keys used to start the Oracle process. These keys are in:

HKEY_LOCAL_MACHINE/Software/Oracle/HOME

(before 10g)

HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/KEY_

from 10g on.

2. check the environment variables that were used by the oracle process at startup.

For this, one would need the process explorer utility from sysinternals, which can be found at:

www.sysinternals.com

(http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx)

After starting the procexp utility, find the oracle process you want to check in the process list, right click on it, then select Properties. The Environment tab should indicate all the environment variables used when the process was started (even if dynamically in command line).

The utility also displays the key values from registry, but being so many it’s difficult to look for them.

Linux/Unix, shell

Post navigation

Previous Post: Recovering lost SYS password
Next Post: note id 373303.1

Related Posts

  • move_arch_files.ksh Linux/Unix
  • grep multuple patterns Linux/Unix
  • Generate SSH without password authentication. Linux/Unix
  • Process Map for CPU and Memory for OS processes Linux/Unix
  • ipcs -l Linux/Unix
  • tuning commmand for cpu, ip and memory stats Linux/Unix

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Categories

  • AWS (2)
  • Azure (1)
  • Linux/Unix (149)
  • Oracle (387)
  • PHP/MYSQL/Wordpress (10)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (17)
  • rman-dataguard (26)
  • shell (149)
  • SQL scripts (336)
  • Uncategorized (0)
  • Videos (0)

Recent Posts

  • SQL Tracker by SID sqltrackerbysid.sql22-Apr-2025
  • How to connect to Oracle Database with Wallet with Python.21-Mar-2025
  • JSON/XML Types in Oracle18-Mar-2025
  • CPU Core related projections12-Mar-2025
  • Exadata Basics10-Dec-2024
  • Reading config file from other folder inside class24-Sep-2024
  • Python class import from different folders22-Sep-2024
  • Transfer SQL Profiles from One database to other database.05-Sep-2024
  • Load testing on Oracle 19C RAC with HammerDB18-Jan-2024
  • Add new columns in dataframe30-Sep-2023

Archives

  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • More info about /proc folder and its relation with processes. Linux/Unix
  • Pending Transaction Neighbors Script Oracle
  • Histogram information Oracle
  • Vivek Tuning for Row Locks. Oracle
  • Building Our Own Namespaces with “Create Context” Oracle
  • How to calculate PROCESSES parameter Oracle
  • find_log_switch.sql Find log switches in graphical manner Oracle
  • Search and replace editor command in vi Linux/Unix

Copyright © 2025 pvmehta.com.

Powered by PressBook News WordPress theme