如何为oracle进程检查环境变量[讨论]_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 4504 | 回复: 0   主题: 如何为oracle进程检查环境变量[讨论]        下一篇 
zhouqingfa
注册用户
等级:中士
经验:234
发帖:13
精华:0
注册:2012-6-8
状态:离线
发送短消息息给zhouqingfa 加好友    发送短消息息给zhouqingfa 发消息
发表于: IP:您无权察看 2012-6-8 16:28:53 | [全部帖] [楼主帖] 楼主

应用于:

Oracle服务器,企业级版本: Version: 8.1.7.4 到 11.0
    文档中的信息可以应用于任何平台

目标:

在一个进程启动之后,为了找到启动这个进程的环境,以下的这些方法可以被用来使用,依据于操作系统平台。

解决方法:

1.确定在操作系统级别的进程的pid,例如smon进程

ps -ef | grep smon


2.获取进程的环境

SOLARIS:
pargs -e <pid from above> | grep ORACLE
LINUX:
cat /proc/<pid from above>/environ
AIX:
ps eauwww <pid from above>
HP-UX:


在这个unix版本中,没有命令可以直接的获取进程的环境,他只能提取来自于he _environ的一个debugger,这种方法也能应用在其他的Unix版本中,如下:

gdb smon <pid from above>


gdb依附于上面提到的pid,这个smoon名字仅仅是一个标记用来表示我们所依附的是smoon进程,但是参数中所关联的却是pid,在依附于进程后,可以通过下面的这个命令中从_environ list中提取出信息

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


       它会会列举出前30个环境变量,如果有更多的定义的变量的话,仅仅在@后增加参数即可

    同时,这个列表也可以从另一个列表中提取出一些内容,使用迭代器像下面这样:

p ((char**)_environ)[i]
which would extract element #i+1.
Windows:


为了在Window系统中获取信息,有两件事是必须的:
1.检查注册表的Oracle_*j键用来开始oracle进程。这些键在如下的目录中:

HKEY_LOCAL_MACHINE/Software/Oracle/HOME<x>
(before 10g)
HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/KEY_<home name>
from 10g on.


2.检查环境变量用来启动oracle进程
针对这一点,就需要从sysinternals中的进程浏览器实体工具中获取,可以从以下几个途径获取:

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


在启动procexp实体工具后,在进程列表中找到oracle进程,右击,然后选择属性。当进程在启动的情况下,环境选项卡会显示出所有的环境变量(即使命令是动态的)

这个实体工具也会从注册表中显示出键值对,但是查看他们却是相当困难的。




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论