重庆思庄Oracle、Redhat认证学习论坛

标题: 是否使用spfile [打印本页]

作者: jiawang    时间: 2020-7-10 11:02
标题: 是否使用spfile
本帖最后由 jiawang 于 2020-7-10 12:53 编辑

判断是否使用了SPFILE,可以使用以下方法:
1.用show   parameter   spfile命令,如果Value为空,则表示使用以pfile启动db,未创建spfile。
SQL> show parameter spfile

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      D:\APP\ADMINISTRATOR\PRODUCT\1
                                                 1.2.0.4\DBHOME_1\DATABASE\SPFI
                                                 LEORCL.ORA
SQL>

2. 查询v$parameter动态视图,如果以下查询返回空值,那么你在使用pfile.
SQL> SELECT name,value FROM v$parameter WHERE name='spfile';

NAME
---------------------------------------------------------------------------
VALUE
---------------------------------------------------------------------------
spfile
D:\APP\ADMINISTRATOR\PRODUCT\11.2.0.4\DBHOME_1\DATABASE\SPFILEORCL.ORA


实际上,以上两种方式是一样的。方式1)是方式2)的封装语句,从告警文件中可以发现,show parameter其实是执行了方式2)的语句。

一般保存位置:

Spfile位置:$ORACLE_HOME/dbs/spfile<sid>.ora

对于Windows其位置是:$ORACLE_HOME/database/spfile<SID>.ora


3.查询v$spparameter视图
如果以下查询返回0值,表示你在使用pfile,否则表明你使用的是spfile:
SQL> SELECT COUNT(*) FROM v$spparameter WHERE value IS NOT NULL;

  COUNT(*)
----------
        21








欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2