|
本帖最后由 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
|
|