“已请求写入SPFILE,但是在启动时未指定SPFILE”的错误。应该如何解决呢?
DATABASE\SPFILECW.ORA
DATABASE\SPFILECW.ORA
由于在做操作之前已经将SPFILE进行了备份,备份命令采用了create pfile from spfile;
出现这个错误时,执行了一下show parameter spfile;结果发现value字段值为空或者如下:
SQL> show parameters spfile;
NAME
TYPE
------------------------------------ ----------------------
VALUE
------------------------------
spfile
string
正常情况下应该显示:
SQL> show parameters spfile;
NAME
TYPE
VALUE
------------------------------------ ----------- ------------------------------
spfile
string
D:\ORACLE\PRODUCT\10.2.0\DB_1\
那么出现这个问题我们应该如何解决呢?
解决方法如下:
一、确保D:\oracle\product\10.2.0\db_1\dbs下没有与SPFILE字眼相关的文件,如果有的话,将其备份到其他位置。
二、执行create spfile from pfile;
三、执行 shutdown immediate; (谨慎使用,在做参数文件互相转换的过程当中,要谨慎确认,创建文件的源头是不是一个正确的可用的文件。)
四、执行startup命令
SQL> startup
ORACLE 例程已经启动。
Total System Global Area
612368384 bytes
Fixed Size
1332348 bytes
Variable Size
229288836 bytes
Database Buffers
377487360 bytes
Redo Buffers
4259840 bytes
数据库装载完毕。
数据库已经打开。
五、执行show parameters spfile
SQL> show parameters spfile;
NAME
TYPE
VALUE
------------------------------------ ----------- ------------------------------
spfile
string
D:\ORACLE\PRODUCT\10.2.0\DB_1\