重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 173|回复: 0
打印 上一主题 下一主题

[性能调整] 操作系统的物理内存紧张,数据库出现ORA-04030的报错

[复制链接]
跳转到指定楼层
楼主
发表于 2026-2-27 09:54:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  

                               
登录/注册后可看大图

如图,操作系统的物理内存紧张,物理内存空闲仅419MB,建议先释放BUFFER CACHE,然后分析内存的具体使用情况,查看本机是否有备份等文件操作,或者大的排序操作占用了PGA。
释放LINUX操作系统CACHE的命令:
#操作系统命令
  1.先同步一下系统缓冲区
  # sync
  2.释放CACHE
  # echo 3 > /proc/sys/vm/drop_caches
  3.之后,再修改回以前的状态
  # echo 0 > /proc/sys/vm/drop_caches

检查告警日志:

Wed Jan 28 01:02:51 2026
Archived Log entry 31042 added for thread 1 sequence 93794 ID 0xcd5ced20 dest 1:
Wed Jan 28 01:11:14 2026
Errors in file /u01/app/oracle/diag/rdbms/ncdb/ncdb/trace/ncdb_ora_28974.trc  (incident=291944):
ORA-04030: ڳ��Է��� 120 ֽ(kkqctdrvTD: co,opndef: qcopCreateOpnViaMemcpy) ʱ�����ڴ治��
Incident details in: /u01/app/oracle/diag/rdbms/ncdb/ncdb/incident/incdir_291944/ncdb_ora_28974_i291944.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Errors in file /u01/app/oracle/diag/rdbms/ncdb/ncdb/trace/ncdb_ora_28974.trc  (incident=291945):
ORA-04030: ڳ��Է��� 856088 ֽ(pga heap,redo overflow buffer) ʱ�����ڴ治��
ORA-04030: ڳ��Է��� 120 ֽ(kkqctdrvTD: co,opndef: qcopCreateOpnViaMemcpy) ʱ�����ڴ治��
Incident details in: /u01/app/oracle/diag/rdbms/ncdb/ncdb/incident/incdir_291945/ncdb_ora_28974_i291945.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Wed Jan 28 01:11:30 2026
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Errors in file /u01/app/oracle/diag/rdbms/ncdb/ncdb/incident/incdir_291944/ncdb_ora_28974_i291944.trc:
ORA-04030: ڳ��Է��� 856088 ֽ(pga heap,redo overflow buffer) ʱ�����ڴ治��
ORA-04030: ڳ��Է��� 120 ֽ(kkqctdrvTD: co,opndef: qcopCreateOpnViaMemcpy) ʱ�����ڴ治��
Errors in file /u01/app/oracle/diag/rdbms/ncdb/ncdb/trace/ncdb_ora_28974.trc  (incident=291946):
ORA-04030: ڳ��Է��� 856088 ֽ(pga heap,redo overflow buffer) ʱ�����ڴ治��
ORA-04030: ڳ��Է��� 120 ֽ(kkqctdrvTD: co,opndef: qcopCreateOpnViaMemcpy) ʱ�����ڴ治��
Incident details in: /u01/app/oracle/diag/rdbms/ncdb/ncdb/incident/incdir_291946/ncdb_ora_28974_i291946.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Wed Jan 28 01:11:33 2026
Sweep [inc][291946]: completed
Sweep [inc][291945]: completed
Sweep [inc][291944]: completed
Sweep [inc2][291945]: completed
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Errors in file /u01/app/oracle/diag/rdbms/ncdb/ncdb/incident/incdir_291944/ncdb_ora_28974_i291944.trc:
ORA-04030: ڳ��Է��� 856088 ֽ(pga heap,redo overflow buffer) ʱ�����ڴ治��
ORA-04030: ڳ��Է��� 120 ֽ(kkqctdrvTD: co,opndef: qcopCreateOpnViaMemcpy) ʱ�����ڴ治��
Wed Jan 28 01:11:38 2026
Dumping diagnostic data in directory=[cdmp_20260128011138], requested by (instance=1, osid=28974), summary=[incident=291946].
Errors in file /u01/app/oracle/diag/rdbms/ncdb/ncdb/trace/ncdb_ora_28974.trc  (incident=291947):
ORA-04030: ڳ��Է��� 20504 ֽ(callheap,KTI call freeable small pool) ʱ�����ڴ治��
ORA-04030: ڳ��Է��� 120 ֽ(kkqctdrvTD: co,opndef: qcopCreateOpnViaMemcpy) ʱ�����ڴ治��
Incident details in: /u01/app/oracle/diag/rdbms/ncdb/ncdb/incident/incdir_291947/ncdb_ora_28974_i291947.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Dumping diagnostic data in directory=[cdmp_20260128011145], requested by (instance=1, osid=28974), summary=[incident=291947].
Wed Jan 28 01:12:27 2026
Thread 1 cannot allocate new log, sequence 93796
Private strand flush not complete
  Current log# 2 seq# 93795 mem# 0: /home/oracle/oradata/ncdb/REDO02.LOG
Thread 1 advanced to log sequence 93796 (LGWR switch)
  Current log# 1 seq# 93796 mem# 0: /home/oracle/oradata/ncdb/REDO01.LOG
Wed Jan 28 01:12:34 2026
Sweep [inc][291947]: completed
Sweep [inc2][291947]: completed
Sweep [inc2][291946]: completed
Sweep [inc2][291944]: completed
Wed Jan 28 01:12:34 2026
Archived Log entry 31043 added for thread 1 sequence 93795 ID 0xcd5ced20 dest 1:


在1月28日01:11分出现ORA-04030的报错,表示数据库在尝试分配内存时遇到了问题,之后数据库开始自动恢复,清理了异常事件占用的内存。
结合自动备份脚本运行情况分析:
0 0 * * * /u01/app/scripts/autobak.sh
0 2 * * * /home/oracle/script/arch_rm.sh
--采用本地expdp导出备份,每天0点进行自动备份,并在每天2点清除归档日志,保留期限为5天

推测为每日备份导致内存紧张,如果该报错为偶发报错,则可忽略,如果频繁出现,则需手动清理buffer。



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-17 21:11 , Processed in 0.206654 second(s), 23 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表