有时候无意间修改了数据库启动的参数文件,通过alter system无法修改spfile的参数,例如显示数据库不可用,而startup又报错,这时可以通过pfile重新建立spfile,在oracle 11g中pfile文件名为initoracl.ora,spfile文件为spfileorcl.ora p这里的orcl为数据库实例名。create spfile from 
$ORACLE_HOME/dbs/initorcl.ora
 .这时就可以启动了
我们也可以直接通过pfile启动oracle:
startup pfile='$ORACLE_HOME/dbs/initorcl.ora'
在oracle 11g中pfile文件名为initoracl.ora spfile文件为spfileorcl.ora ps 数据库实例名为orcl
从spfile获取pfile

Create pfile='d:pfileSID.ora' from spfile;

Create pfile='d:pfileSID.ora' from spfile='spfile_location';


从pfile获取spfile

Create spfile from pfile='Your_pfile_location'

Create spfile='spfile_location' from pfile='Your_pfile_location'


动态修改参数

alter system set parameter=Value scope=spfile|both|memory


Startup nomount的时候需要读去spfile或pfile,两者共存,spfile优先


强制用pfile启动

SQL>startup pfile='Your_Pfile.ora'

startup spfile='/data/oracle/product/10.2.0/db_1/dbs/dbs/spfile_mqq.ora' force