若配置了ORACLE_HOME 环境变量,则可以通过“echo $ORACLE_HOME”来直接获取,如下所示:[oracle@edsir4p1-PROD2 ~]$ echo $ORACLE_HOME
/u01/app/oracle/product/11.2.0/dbhome_1
[oracle@edsir4p1-PROD2 ~]$ sqlplus -v
SQL*Plus: Release 11.2.0.1.0 Production
若没有配置ORACLE_HOME 环境变量,则可以通过“more /etc/oratab”来直接获取,如下所示:[oracle@edsir4p1-PROD2 ~]$ more /etc/oratab
PROD1:/u01/app/oracle/product/11.2.0/dbhome_1:N
PROD2:/u01/app/oracle/product/11.2.0/dbhome_1:N
若数据库已启动监听程序,则可以通过“ps -ef|grep tns”来直接获取,如下所示:[oracle@edsir4p1-PROD2 ~]$ ps -ef|grep tns
oracle 5683 1 0 05:30 ? 00:00:00
/u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr LISTENER -inherit
oracle 6344 5357 0 05:48 pts/2 00:00:00 grep tns
另外,若在同一个主机上,安装了不同版本的数据库软件,则可以通过pmap 命令来查看ORACLE_HOME的路径,pmap 提供了进程的内存映射,用于显示一个或多个进程的内存状态。如下所示:[root@rhel6lhr ~]# ps -ef|grep pmon
grid 3760 1 0 07:18 ? 00:00:02 asm_pmon_+ASM
oracle 40923 1 0 09:51 ? 00:00:02 ora_pmon_orclasm
oracle 52933 1 0 15:53 ? 00:00:00 ora_pmon_ora10g
root 59716 51804 0 16:15 pts/0 00:00:00 grep pmon
[root@rhel6lhr ~]# pmap 40923 | grep dat
00007f2ab564b000 4K rwxs- /u01/app/oracle/product/11.2.0/dbhome_1/dbs/hc_orclasm.dat
[root@rhel6lhr ~]# pmap 52933 | grep dat
00007f1fab8da000 4K rwxs- /u02/app/oracle/product/10.2.0/dbhome_1/dbs/hc_ora10g.dat