【问题标题】:How to check whether Oracle instance is started using pfile or spfile?如何检查Oracle实例是使用pfile还是spfile启动?
【发布时间】:2021-02-04 20:17:29
【问题描述】:

是否有可以检查实例是否已使用 pfile 或 spfile 启动的视图?

【问题讨论】:

    标签: database oracle


    【解决方案1】:

    这表明数据库是由spfile启动的

    SQL> show parameter spfile;
    
    NAME    TYPE    VALUE
    ----    ----   ----------------------------------------------------------
    spfile  string /root/apps/oracle/10g/dbs/spfile<DB_NAME>.ora
    

    没有返回值意味着它是由pfile开始的。

    【讨论】:

    • 谢谢。我之前检查过参数,虽然我不知道这个值是什么意思。
    • 这不适用于集群数据库(12、19 版本),因为 spfile 通常位于 ASM 磁盘上。
    【解决方案2】:
    SELECT DECODE(value, NULL, 'PFILE', 'SPFILE') "Init File Type" 
       FROM sys.v_$parameter WHERE name = 'spfile';
    

    【讨论】:

    • 这一项在数据库未打开时不起作用。 ORA-01219: 数据库未打开: 只允许对固定表/视图进行查询
    • 这不适用于集群数据库(12、19 版本),因为 spfile 通常位于 ASM 磁盘上。
    【解决方案3】:
    select sys_context('USERENV','ORACLE_HOME') from dual;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-01
      • 2019-07-11
      • 1970-01-01
      • 2016-08-04
      • 2012-11-06
      • 2014-07-20
      • 2014-08-16
      • 1970-01-01
      相关资源
      最近更新 更多