昨天在火车站,一个朋友打电话过来,说他将SPFILE修改错了,数据库无法启动,问我怎么办。
我说你创建一个PFILE,改一下用PFILE启动,而他说数据库无法连接,是Windows的环境。
Ok,这类问题很多很多,我描述一下解决办法供参考。
假如我们修改了以下参数:
那么下次启动,如果内存不足,数据库是无法启动的:
在Unix、Linux上可以连接到数据库,创建pfile:
如果在Window上,你手上还没有任何可供参考的参数文件,那么很简单,用记事本(Notepad)编辑一个文件,包含如下两行:
第一行指向SPFILE,第二行写上出错的参数,给一个正确的值。这个值在实例启动时会覆盖之前错误的设置。
然后就可以使用这个文件启动数据库实例了:
如果在Windows上,你只能通过服务起停数据库,那么Oracle缺省的还是会寻找SPFILE,一个办法是将SPFILE改名。
比如将spfileeygle.ora更改为spfileeygle2.ora,然后再pfile里引用这个参数文件,下次startup就不用指定pfile。
数据库可以自动找到这个参数文件,启动数据库。
数据库可以自动使用PFILE启动:
-The End-
我说你创建一个PFILE,改一下用PFILE启动,而他说数据库无法连接,是Windows的环境。
Ok,这类问题很多很多,我描述一下解决办法供参考。
假如我们修改了以下参数:
SQL> alter system set sga_max_size=5G scope=spfile;
System altered.
那么下次启动,如果内存不足,数据库是无法启动的:
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORA-27102: out of memory
在Unix、Linux上可以连接到数据库,创建pfile:
SQL> create pfile from spfile;
File created.
如果在Window上,你手上还没有任何可供参考的参数文件,那么很简单,用记事本(Notepad)编辑一个文件,包含如下两行:
[oracle@test126 dbs]$ cat initeygle.ora
SPFILE='/opt/oracle/product/10.2.0/dbs/spfileeygle.ora'
sga_max_size=1073741824
第一行指向SPFILE,第二行写上出错的参数,给一个正确的值。这个值在实例启动时会覆盖之前错误的设置。
然后就可以使用这个文件启动数据库实例了:
SQL> startup pfile=$ORACLE_HOME/dbs/initeygle.ora
ORACLE instance started.
Total System Global Area 1073741824 bytes
Fixed Size 1223540 bytes
Variable Size 918553740 bytes
Database Buffers 146800640 bytes
Redo Buffers 7163904 bytes
Database mounted.
Database opened.
如果在Windows上,你只能通过服务起停数据库,那么Oracle缺省的还是会寻找SPFILE,一个办法是将SPFILE改名。
比如将spfileeygle.ora更改为spfileeygle2.ora,然后再pfile里引用这个参数文件,下次startup就不用指定pfile。
数据库可以自动找到这个参数文件,启动数据库。
[oracle@test126 dbs]$ mv spfileeygle.ora spfileeygle2.ora
[oracle@test126 dbs]$ cat initeygle.ora
SPFILE='/opt/oracle/product/10.2.0/dbs/spfileeygle2.ora'
sga_max_size=1073741824
数据库可以自动使用PFILE启动:
SQL> startup
ORACLE instance started.
Total System Global Area 1073741824 bytes
Fixed Size 1223540 bytes
Variable Size 918553740 bytes
Database Buffers 146800640 bytes
Redo Buffers 7163904 bytes
Database mounted.
Database opened.
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /opt/oracle/product/10.2.0/dbs
/spfileeygle2.ora
-The End-
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




