首页 > 代码库 > oracle11g的内存分配不当,导致的错误ORA-01034,ORA-00838,ORA-27101
oracle11g的内存分配不当,导致的错误ORA-01034,ORA-00838,ORA-27101
由于开发需要,oracle11g被应用于虚拟机,所以系统资源显得弥足珍贵,百度了一下就有答案。
用dba身份进入Oracle,笔者在plsql中对数据库进行管理:
show parameter sga; --显示内存分配情况
alter system set sga_max_size=200m scope=spfile; --修改占用内存的大小
注:在PL/SQL中 在command window中的Editor模式下使用以上命令
(转)
还有memory_target
alter system set memory_target=100m;
也正是因为这一句话导致oracle没能正常运行。
故障现象:
连接oralce,提示服务没有监听。
启动数据库出现ORA-01034,ORA-00838和ORA-27101错误。
而windows service中是正常的,OracleOraDb11g_home1TNSListener,OracleServiceXXX.
Microsoft Windows [版本 6.1.7601]版权所有 (c) 2009 Microsoft Corporation。保留所有权利。C:\Users\Administrator>SQLPLUS /nologSQL*Plus: Release 11.2.0.1.0 Production on 星期五 6月 30 10:35:33 2017Copyright (c) 1982, 2010, Oracle. All rights reserved.SQL> conn / as sysdba已连接到空闲例程。SQL> show parameters targetORA-01034: ORACLE not available进程 ID: 0会话 ID: 0 序列号: 0SQL> startupORA-00838: Specified value of MEMORY_TARGET is too small, needs to be at least 148M
经过摸索,解决方案如下
Microsoft Windows [版本 6.1.7601]版权所有 (c) 2009 Microsoft Corporation。保留所有权利。C:\Users\Administrator>SQLPLUS /nologSQL*Plus: Release 11.2.0.1.0 Production on 星期五 6月 30 10:35:33 2017Copyright (c) 1982, 2010, Oracle. All rights reserved.SQL> create spfile from pfile=‘C:\oracle\admin\xxx\pfile\init.ora.9312016162455‘;文件已创建。SQL> startupORACLE 例程已经启动。Total System Global Area 208769024 bytesFixed Size 2174320 bytesVariable Size 146801296 bytesDatabase Buffers 54525952 bytesRedo Buffers 5267456 bytes数据库装载完毕。数据库已经打开。SQL>
估计是spfile文件配置问题,而此文件是二进制的,我们用pfile文件生成spfile文件。
记住首先打开
C:\oracle\admin\xxx\pfile\init.ora.9312016162455
这个文件,找到memory_target修改成209209200,即200m
oracle11g的内存分配不当,导致的错误ORA-01034,ORA-00838,ORA-27101
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。