同事今天问我一个问题,怎么查看数据库是spfile启动的还是pfile启动的,还真没有研究,玩Oracle几年了,都没有留意过这个问题。 在网上google了一下。有如下两种方法:
方法一:
SQL> select distinct ISSPECIFIED from v$spparameter;
ISSPEC
------
FALSE
TRUE
如果只有FALSE,使用的是PFILE,
如果有TRUE,说明用的是SPFILE
方法二:
SQL>show parameters spfile
如果有值说明使用spfile启动,反之pfile
测试一:spfile启动情况
Oracle 默认是用spfile启动的。直接启动实例,查询:
SQL> show parameters spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string D:/APP/ADMINISTRATOR/PRODUCT/1
SQL> select distinct ISSPECIFIED from v$spparameter;
ISSPEC
------
TRUE
FALSE
测试二: pfile启动情况
先用spfile 创建pfile。然后用pfile启动数据库。
SQL> create pfile='D:/orclpfile.ora' from spfile;
文件已创建。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE例程已经关闭。
SQL> startup pfile=d:/orclpfile.ora
ORACLE例程已经启动。
Total System Global Area 849530880 bytes
Fixed Size 1377896 bytes
Variable Size 637536664 bytes
Database Buffers 205520896 bytes
Redo Buffers 5095424 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------
spfile string
SQL> select distinct ISSPECIFIED from v$spparameter;
ISSPEC
------
FALSE
------------------------------------------------------------------------------
QQ: 492913789
Email: ahdba@qq.com
Blog: http://www.cndba.cn/dave
网上资源: http://tianlesoftware.download.csdn.net
相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
DBA1群:62697716(满); DBA2群:62697977(满)
DBA3群:63306533; 聊天 群:40132017
联系客服