修改share server参数导致数据库启动失败
在学习共享服务时,修改配置参数时,不小心犯了错误,呵呵,以下是修复过程。
1、修改
SQL> alter system set dispatchers=‘(protocol=tcp)(dispatchers=2)’ scope=spfile;
不小心写成了
SQL> alter system set dispatchers=‘(protocol=tcp)9dispatchers=2)’ scope=spfile;
2、重启instance 时失败
SQL> startup force
提示:dipatchers 参数错误
启动失败,应该是spfile文件出现了错误,spfile是二进制文件不能用编辑器直接修改,所以想用init参数文件来启动
3、在$ORACLE_HOME/dbs 下却发现没有initorac.ora 文件
# strings spfileorac.ora > orac.txt
# vi orac.txt
# cp orac.txt initorac.ora
将9dispatchers=2) 改成 (dispatchers=2)
4、因为instance启动时先调用spfile,然后才是pfile ,所以
# mv spfileorac.ora spfileorac.ora.bak
5、然后再启动instance ,这时会从pfile来启动
SQL> startup nomount
SQL> alter database mount;
SQL> alter database open;
6、重新从pfile来生成spfile
SQL> create spfile from pfile ;
7、重启instance,查看启动参数文件信息
13:44:39 SYS@orac>startup
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 1218316 bytes
Variable Size 71305460 bytes
Database Buffers 92274688 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
13:45:05 SYS@orac>show parameter pfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u01/app/oracle/product/10.2.0
/db_1/dbs/spfileorac.ora
13:45:28 SYS@orac>select program from v$process;
至此,修复系统成功!