.查询v$parameter 动态视图,如果以下查询返回空值,那么你在使用pfile. SQL> SELECT name,value FROM v$parameter WHERE name='spfile'; NAME ------------------------------------------------------------------ VALUE ------------------------------------------------------------------ spfile %ORACLE_HOME%\DATABASE\SPFILE%ORACLE_SID%.ORA 2 .或者你可以使用SHOW 命令来显示参数设置,如果以下结果value 列返回空值,那 么说明你在使用pfile: SQL> SHOW PARAMETER spfile NAME TYPE ------------------------------------ ---------------------- VALUE ------------------------------ spfile string %ORACLE_HOME%\DATABASE\SPFILE% ORACLE_SID%.ORA 3 .查询v$spparameter 视图 如果以下查询返回0 值,表示你在使用pfile,否则表明你使用的是spfile:
在下一次启动数据库时生效,CREATE SPFILE 需要SYSDBA 或者SYSOPER 的权限:
SQL> create spfile from pfile;
create spfile from pfile
*
ERROR 位于第 1 行:
ORA-32002: 无法创建已由例程使用的 SPFILE
这也可以用来判断当前是否使用了SPFILE 文件。
SQL> SELECT name,value FROM v$parameter WHERE name='spfile';
NAME ------------------------------------------------------------------ VALUE ------------------------------------------------------------------ spfile
%ORACLE_HOME%\DATABASE\SPFILE%ORACLE_SID%.ORA
2 .或者你可以使用SHOW 命令来显示参数设置,如果以下结果value 列返回空值,那
么说明你在使用pfile:
SQL> SHOW PARAMETER spfile
NAME TYPE
------------------------------------ ----------------------
VALUE ------------------------------ spfile
string
%ORACLE_HOME%\DATABASE\SPFILE%
ORACLE_SID%.ORA
3 .查询v$spparameter 视图
如果以下查询返回0 值,表示你在使用pfile,否则表明你使用的是spfile: