`

ORA-04030错误处理

阅读更多
【错误描述】
  错误信息如下:
  ORA-04030:在尝试分配1049100字节(kxs-heap-w,……)时进程内存不足,……。

【特别提示】
  使用我的方法,注意问题描述、基础环境等情况一致性,才可能解决你的问题。

【问题解决】
  根据信息,显然是内存不足的问题,但原因可能有多种:Oracle获准使用的内存不足;Oracle向操作系统没有申请到需要的内存;……。

  一、查看相关信息
  打开sqlplus,执行以下脚本。
conn / as sysdba

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
PL/SQL Release 11.2.0.1.0 - Production
CORE    11.2.0.1.0      Production
TNS for 32-bit Windows: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production

SQL>
SQL> col name format a20
SQL> col value format a20
SQL> col value_mb format 999999
SQL> select name,value,value/1024/1024 value_mb from v$parameter where name in ('sga_max_size','sga_target','pga_aggrega
te_target','memory_target');

NAME                 VALUE                VALUE_MB
-------------------- -------------------- --------
sga_max_size         943718400                 900
sga_target           0                           0
memory_target        943718400                 900
pga_aggregate_target 0                           0

SQL>
SQL> select sum(value)/1024/1024 pga_size_mb from v$sesstat s,v$statname n where n.statistic#=s.statistic# and name='session pga memory';

PGA_SIZE_MB
-----------
 22.2314224



  看到sga_max_size的值为900mb,小于提示信息中的数值,应为Oracle内存设置的问题,需要修改Oracle的参数。

  二、修改参数
  执行以下脚本。执行完后,可以使用上面的脚本检查一下参数值。其中的内存值,需跟进实际情况进行修改。
SQL> alter system set sga_max_size=1400m scope=spfile;

系统已更改。

SQL> alter system set memory_target=1400m scope=spfile;

系统已更改。

SQL>
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 1464717312 bytes
Fixed Size                  1377108 bytes
Variable Size             771755180 bytes
Database Buffers          679477248 bytes
Redo Buffers               12107776 bytes
数据库装载完毕。
数据库已经打开。


  三、特别情况
  (一)如果修改时,只修改了sga_max_size参数,没有修改memory_target,当memory_target<memory_target时,会导致Oracle报ORA-00844和ORA-00851错,无法启动。解决办法很简单,在sqlplus中执行以下脚本:
create pfile='c:\1.txt' from spfile;


  (二)由spfile创建pfile。也就是c:\1.txt,打开编辑,修改memory_target的值大于或等于sga_max_size,保存。再由pfile创建spfile,执行下面语句。Oracle应该就能正常启动了。
create spfile from pfile='c:\1.txt';
startup
0
0
分享到:
评论

相关推荐

    ORA-04031故障分析处理

    如果内存块仍然不够满足需求,那么就会出现ORA- 04031错误。这些错误同样可能发生在ASM的实例中。默认的共享池的大小基本能够满足大部分的环境,但是如果遇到ORA-04031错误的时候可能就需要增大。 当遇到这个错误的...

    BLOG_【故障处理】Oracle_lhr_ORA-19809错误处理.pdf

    BLOG_【故障处理】Oracle_lhr_ORA-19809错误处理.pdfBLOG_【故障处理】Oracle_lhr_ORA-19809错误处理.pdf

    如何处理错误ORA-29275:部分多字节字符

    在运行查询SELECT * FROM V$SESSION 会出现ORA-29275:部分多字节字符的错误,这是什么原因开始我不得其解,网上也没有介绍什么好办法。本文给出答案。

    ORA-00257 错误的处理方法

    归档日期满了报 ORA-00257 archiver error. Connect internal only, until freed 错误的处理方法

    Oracle数据库发生ORA-04031错误原因浅析及处理.pdf

    Oracle数据库发生ORA-04031错误原因浅析及处理.pdf

    9i exp遇见EXP-00008 ORA-00942 EXP-00024错误的解决

    ORACLE9i exp遇见EXP-00008 ORA-00942 EXP-00024错误的解决方法,详细描述了问题处理的过程和步骤,共享在此,希望能有所帮助

    ORA-01631错误的处理办法

    max # extents (string) reached in table string.string的错误提示,分析及解决办法如下

    ORA-00257错误.doc

    问题处理过程

    oracle错误代码大全(超详细)

    ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ...

    oracle报错(ORA-00600)问题处理

    告警日志里这两天一直显示这个错误: ORA-00600:internalerrorcode,arguments:[kcblasm_1],[103],[],[],[],[],[],[] TueAug1209:20:17CST2014 Errorsinfile/u01/app/oracle/admin/orcl/udump/orcl_ora_29974.trc: ...

    基于ORA-19815闪回空间爆满问题的处理方法

    闪回区爆满问题也是经常会遇到的问题,最关键的是闪回设置大小以及归档被默认存放在了闪回目录,恰巧今天又遇到了这个问题,就记录下处理步骤,仅供遇到这类问题的人参考。 一、错误现象描述 1)应用端错误信息 ...

    oracle连接错误处理

    ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist 进程 ID: 0 会话 ID: 0 序列号: 0

    分享一篇关于报错ora 04068的好文

    在环境维护过程中,我们有时会遇到系统报后台包失效ora04068的错误,但是在后台查询的时候发现它有没有问题,但想解决这类问题,你就要重新编译 此包体以及关联包体,本片分享文就是讲述这个事情的...

    ORA-02298: 无法验证 (约束)提示未找到父项关键字的解决办法

    –在用PL/SQL导入表数据的时候报错 ORA-02298: 无法验证 (PNET.POST_CLOB_FK) – 未找到父项关键字 --发现是启用外键约束时报的错 alter table DM_VOLREV enable constraint VR_VOLID_FK; /*原因分析: 你要插入...

    Oracle错误码及处理步骤

    以下内容均以错误码,错误名,错误原因,修改建议形式介绍。  ORA-00903 无效的表名 试图在不存在的表中创建的索引。设置正确的表名。  ORA-00904 无效的标识符 试图在不存在的列中创建的索引。检查表中的列名,...

    SHOUG文档分享-ORACLE-TTS迁移后ORA3113错误处理-SHOUG成员左翼

    ORACLE-TTS迁移后ORA3113错误处理,,发现该库近期实施了Oracle数据库迁移,由原有9i环境迁移至了新IBM小型机的11G环境。问题发生在迁移完成之后。

    Oracel 错误码查询

    oracle错误码一览表,这里仅提供查询,供分享参考。

    Oracle 错误代码整理总结

    ORA-00001:违反唯一约束条件(主键错误) ORA-00028:无法连接数据库进程 ORA-00900:无效sql语句 ORA-00904:字段名写错或是建表时最后一个字段有逗号 ORA-00907:缺少右括号 ORA-00911:无效字符 ORA-00917:...

    oracle crs 配置错误详解

    oracle crs 配置错误详解,当我们在安装Clusterware 的时候, 需要在第二节点上vipca , 配置到最后安装的时候, 安装到 75% 左右,报错 检查linux主机名是否符合规范,因为oracle...ASM装载磁盘组时ORA-15063错误处理

Global site tag (gtag.js) - Google Analytics