测试安装Oracle11g时,调了下sga_target的值,然后shutdown immediate关闭数据库(直接shutdown,那得要很长时间),出现权限不足提示,所以要用以下命令进入命令行:
sqlplus /nolog;
connect /as sysdba;
或
sqlplus “/as sysdba"
这样才不会权限不足。但是在调整完sga_target并关闭数据库后startup重启,就出现了“ORA-00838: Specified value of MEMORY_TARGET is too small, needs to be at least xxxxM”的提示,数据库启动不了。想用alter再调MEMORY_TARGET已经来不及了,“ORACLE NOT available”。
找到一个方法,先从spfile创建pfile:
create pfile from spfile;
修改pfile,再从pfile创建spfile,恢复启动参数:
create spfile from pfile;
windows版的Oracle,spfile和pfile在$oracle_home/database下,linux等平台在$oracle_home/dbs下,spfile是spfile<sid>.ora文件,pfile是init<sid>.ora。创建完pfile,就可以用记事本打开它,找到memory_target进行修改,就按前面ORA-00838提示中的大小改进去,不过错误提示里是M,所以要换算,连乘两个1024,精确到个位。
修改后保存,再startup,数据库就起来,再show parameter sga和show sga,就可以看到修改后的参数。
>> 除非说明均为原创,如转载请注明来源于http://www.stormcn.cn/post/1964.html