Oracle由于版本的不同,在注册表中产生的注册表信息也有所不同,但主要的键值信息还是一样的,例如Oracle10g比oracle9i在注册表中表现的更为“简洁”,在未知的情况下,获取Oracle10g的相关信息,需要模糊查询一下键值
SOFTWARE\ORACLE\Key_*
Key_后面跟着是OracleHomeName的信息,默认情况如 KEY_OraDb10g_home1
而9i在注册表中的表现比较直接,可以查询这个
SOFTWARE\ORACLE\ALL_HOMES\ORACLE_COUNTER
这个值比较直观的告诉你 ,当前机器上有多少个Oracle实例,可以通过HOMEX (X为数字)找到对应的值,HOME0或HOME1或HOME2...中的ORACLE_HOME_NAME找到对应值。
如果系统里安装了多个ORACLE产品,那么在注册表里,有可能也会有多个ORACLE HOME,默认的是哪个ORACLE HOME?
其中在\SOFTWARE\ORACLE\ALL_HOMES\DEFAULT_HOME这个值就是默认的ORACLE HOME,有了DEFAULT_HOME的值,就可以获取默认的oracle实例名。
PLSQL如果在多实例的环境下 会默认连接默认实例的Oracle Home Name。
每获取到一个Oracle Home Name 都能获取到Oracle Home 的安装路径(为下面做伏笔)。
如何想要