(转)DB2解决“数据库日志已满”操作 SQLCODE=-964

http://www.db2china.net/club/thread-4244-1-1.html

DB2解决“数据库日志已满”操作 SQLCODE=-964  

2011-01-06 15:57:13|  分类: DB2|字号 订阅

日志文件需要更多空间,但是减少了应用程序重试该操作的需要。

若正在安装样本数据库,则删除它并再次安装样本数据库。

sqlcode : -964

sqlstate : 57011

用控制中心直接改会比较容易一点,在数据库名称上点右键–>配置参数–>日志–>日志文件大小、主

日志文件数、辅助日志文件数改大一点。

LOGFILSIZ       日志文件大小

LOGPRIMARY  主日志文件大小

LOGSECOND  辅助日志文件数

---------------------------------------------------
也可用命令行db2cmd

db2 update db cfg for dbname  using    LOGFILSIZ 1000–日志文件大小

db2 update db cfg for dbname  using    LOGPRIMARY 20    –主日志

db2 update db cfg for dbname  using    LOGSECOND 10      –辅助日志
要将与此数据库的所有连接断开后才会生效。

 

----------------------------------------------------------------------------------------------------------------------------------------------

DB2数据库事务日志已满问题解决方案

本系列文章主要介绍数据库管理员(DBA)在日常维护中遇上一些比较紧急的情况如何处理,本篇主要介绍DB2交易日志存储空间满问题如何处理。

1、数据库事务日志的最大大小

数据库事务日志的最大大小由数据库的三个配置参数决定,分别是“主日志文件的数目”(LOGPRIMARY)、“辅助日志文件的数目”(LOGSECOND)和“日志文件大小(4KB)”(LOGFILSIZ)。数据库事务日志的最大大小的计算公式如清单 01-32 所示:


清单 1. 数据库事务日志的最大大小的计算公式

数据库事务日志的最大大小 = ( LOGPRIMARY + LOGSECOND )* LOGFILSIZ * 4KB

LOGSECOND 在这个公式中不能设为 “ -1 ” ,“ -1 ”代表你在请求一个无限的活动日志空间,数据库也不会报数据库事务日志已满错误,如果空间不足则会报日志磁盘已满错误,具体如本章第五节所述。下面我们具体看一下这三个参数:

  1. 主日志文件的数目 LOGPRIMARY
    此数据库配置参数用来指定要预分配的主日志文件个数。主日志文件建立分配给恢复日志文件的固定存储器数量。在循环日志管理模式下,数据库事务将按顺序重复使用主日志,也就是当一个主日志已满时,顺序使用下一个主日志,如果主日志已满,则按需一次分配一个辅助日志,辅助日志在使用完后,将被释放。如果你发现数据库会经常分配辅助日志文件,则可能需要通过增大日志文件大小或增大主日志文件的数目来提高系统性能。
  2. 辅助日志文件的数目 LOGSECOND
    此数据库配置参数用来指定按需分配的辅助日志文件个数。尽量不要把此参数的值设置成“ -1 ” ,“ -1 ”代表你在请求一个无限的活动日志空间,数据库也不会报数据库事务日志已满错误,如果空间不足则会报日志磁盘已满错误。
  3. 日志文件大小 LOGFILSIZ
    此数据库配置参数用来指定日志文件的大小。

2、数据库事务日志已满错误

数据库事务日志已满错误是指当前事务无法写入到活动日志中(此时主日志文件和辅助日志文件已经全部用完或者没有足够当前事务写入的空间),需要注意的是,这个错误和日志磁盘空间已满是两个概念,如果想查看日志磁盘已满错误,请参照本章第五节。数据库事务日志已满不是由于磁盘空间满引起的,而是由于没有落实的事务总体过大,超过了数据库事务日志所能容纳的最大大小所造成的。

一般系统上线之初(如果是分阶段上线,则是每次上线之初),由于经常要导大量的数据,容易出现这个问题,当出现这个问题时,直接的办法是找到引起这个错误的当前事务,终止掉这个事务即可,后续在操作时找到当前执行的事务中比较大的事务,尽量落实或回滚该事务。

一般情况下,建议大家在系统上线之初进行导数时,尽量使用 LOAD 实用程序(如果是归档日志模式,建议使用带 NONRECOVERABLE 选项的 LOAD 实用程序,否则装入完成后数据库或装入的表所在的表空间会被置于备份暂挂状态,需要做一次全备才能解除备份暂挂状态),LOAD 实用程序在装入数据时不记日志。

如果使用 IMPORT 实用程序,建议使用 COMMITCOUNT 选项。无论是循环日志模式还是归档日志模式,使用 IMPORT 实用程序导入大量数据时,都有可能报数据库事务日志已满(也就是当前导入操作产生的事务过大,使得当前活动日志满了,包括所有的主日志和辅助日志都用完了),所以为了避免数据库日志已满错误,提高并发性,可以使用 COMMITCOUNT 选项,对要导入的数据分阶段提交。比如可以将 COMMITCOUNT 参数设置为“自动”,指示 import 实用程序 内部决定何时进行落实。此外,也可以将 COMMITCOUNT 选项设置为特定数字,指示 import 实用程序 在导入指定记录数后即进行落实。

尽量避免在上线之初直接使用“ INSERT INTO … SELECT .. FROM .. ”语句,导入一个很大的事务的方式进行导数,这样会使事务非常大。另外,还可以在系统上线之初把主日志文件的数目(LOGPRIMARY)、辅助日志文件的数目(LOGSECOND)和日志文件大小(4KB)(LOGFILSIZ)三个参数调大,等系统正式上线稳定后,再调回合适的值。

如果是在正式上线后的系统,经常出现这个问题,就需要查找原因,具体的原因可能有:

  1. 数据库并发连接比较多
    这种情况下,就要考虑适当增加主日志文件的数目(LOGPRIMARY)和日志文件大小(4KB)(LOGFILSIZ)。
  2. 有人通过第三方软件或其他工具直接连接到了生产库
    在这样的情况下,就要监控数据库,看其是否经常写一些大的语句对数据库进行增删改的操作,如果是的话,建议增加数据库的控制,尽量不要让不相关的人员连接生产库(如果其他人有需要,尽量开放备份库给他们使用,而不要开放生产库,生产库尽量只给业务系统正常使用),如果你使用的是 DB2 V9.5 版本,则可以使用工作负载管理 WLM 对数据库的资源进行调配。如果使用的是 DB2 V9.5 之前的版本,则可以在数据库服务器上通过配置操作系统的方式,限制一些 IP 的访问。

当出现这样的错误时,不要尝试使用 DB2STOP FORCE 命令来强制停掉数据库,建议大家使用 FORCE APPLICATION 命令停掉引起这个错误的应用程序或者停掉所有的应用程序。也不建议大家使用 KILL 命令来杀掉任何 DB2 相关的进程。

解决db2事务日志已满及日志磁盘空间已满问题办法详解 本文主要讲解了解决db2事务日志已满及日志磁盘空间已满的问题,DB2总的可用活动日志的最大空间是有限制的,当达到限制之后,就会发生日志满的问题 立即下载

相关推荐

基于LabVIEW控制仪器检测与监控 --普源示波器DS1102Z-E

LabVIEW 控制普源示波器 代码实现与解释

s0101100的博客 4233

DB2数据库事务日志已满问题解决方案

本系列文章主要介绍数据库管理员(DBA)在日常维护中遇上一些比较紧急的情况如何处理,本篇主要介绍DB2交易日志存储空间满问题如何处理。 1、数据库事务日志的最大大小 数据库事务日志的最大大小由数据库的三个配置参数决定,分别是“主日志文件的数目”(LOGPRIMARY)、“辅助日志文件的数目”(LOGSECOND)和“日志文件大小(4KB)”(LOGFILSIZ)。数据库事务日志的最大大小的计算...

liumin1939的专栏 2940

从零到一:用MSC Nastran Patran搞定悬臂翼颤振分析(附完整模型文件)

本文详细介绍了使用MSC Nastran和Patran进行悬臂翼颤振分析的完整流程,从几何建模、网格划分到模态分析和颤振求解。通过具体案例讲解关键参数设置和操作技巧,帮助工程师掌握气动弹性分析的核心方法,并附赠完整模型文件供实践参考。

weixin_42563415的博客 440

oracle数据库事务日志已满,解决db2事务日志已满及日志磁盘空间已满问题办法详解...

事务日志满指当前事务无法写入到活动日志中(主日志文件和辅助日志文件已全部用完或者没有足够当前事务写入的空间)日志磁盘空间已满指辅助日志文件还未使用完,磁盘空间已经满了。db2数据库事务日志文件分为主日志文件和辅助日志文件,主日志文件已分配空间,辅助日志文件使用时再分配。查看事务日志配置(mid为数据库名称):db2 get db cfg for mid运行结果:日志文件大小(4KB)...

weixin_42394088的博客 716

SAP SM30数据维护实战:条件筛选与动态校验的实现技巧

本文详细介绍了SAP SM30数据维护的实战技巧,重点讲解如何通过条件筛选实现精准数据查取,以及利用表维护生成器事件实现动态数据检查与校验。文章提供了从基础视图创建到高级事件编程的完整流程,包括调用函数VIEW_MAINTENANCE_CALL传递筛选条件,以及在NEW_DATA和CHANGE_SAVE事件中编写业务规则校验逻辑,帮助开发者提升SM30的管控能力与数据质量。

q9w8e7r6t5的博客 521

电力系统设计实战:如何用ETAP绘制一次接线图并优化供电方案

本文详细介绍了如何使用ETAP软件进行电力系统一次接线图的绘制与供电方案优化。从基础环境配置到主接线拓扑构建,再到典型接线方式的对比分析与智能优化,为工业与民用电力系统设计提供实用指南。通过ETAP的可靠性分析和动态仿真功能,帮助工程师选择最优供电方案,提升系统可靠性和运维效率。

weixin_29250573的博客 205

db2多分区数据库 SQLCODE=-964, SQLSTATE=57011,数据库的事务日志已满

db2多分区数据库在处理大批量数据删除的时候会频繁出现如下错误:SQLCODE=-964, SQLSTATE=57011,数据库的事务日志已满,有时候在执行存储过程的时候还会出现 SQLCODE : -727 SQLSTATE: 56098,在隐式重新绑定或预编译期间出错。 (1)尝试通过增大日志相关的三个参数进行解决: db2 update db cfg for <dbname>...

7970

基于企业微信客服与GPT-3构建合规微信AI助手:从原理到部署实践

在人工智能与即时通讯融合的浪潮中,自然语言处理(NLP)与API集成成为构建智能对话系统的核心技术。其原理在于通过API网关接收用户输入,调用云端大语言模型进行处理,再将结果返回给用户,实现自动化交互。这项技术的核心价值在于将前沿AI能力无缝嵌入到日常高频应用场景中,极大地提升了客服自动化、智能问答与个性化服务的效率与体验。企业微信作为官方认可的企服平台,其开放的客服API接口为开发者提供了稳定、合规的消息通道,是连接微信生态与外部AI服务的理想桥梁。本文聚焦于如何利用企业微信客服API与OpenAI的GP

weixin_28727943的博客 627

db2关闭下一句sql的日志_(转)DB2解决“数据库日志已满”操作 SQLCODE=-964

本系列文章主要介绍数据库管理员(DBA)在日常维护中遇上一些比较紧急的情况如何处理,本篇主要介绍DB2交易日志存储空间满问题如何处理。数据库事务日志的最大大小由数据库的三个配置参数决定,分别是“主日志文件的数目”(LOGPRIMARY)、“辅助日志文件的数目”(LOGSECOND)和“日志文件大小(4KB)”(LOGFILSIZ)。数据库事务日志的最大大小的计算公式如清单 01-32 所示:数据库...

weixin_39534780的博客 283

把雷达强度特征融合于 Cartographer的实现流程 :从地图构建到在线定位

摘要:本文提出在激光SLAM中融合强度特征的方法,解决几何匹配在退化环境中的失效问题。详细介绍了两种高反地图生成方式:离线使用assets_writer工具处理优化轨迹,在线实时累积高反点;以及权重网格的构建与预计算金字塔方法。定位阶段通过加权得分公式融合几何和强度信息,采用自适应缩放策略平衡特征依赖。该方案在不显著增加计算负担的前提下,有效提升了对称环境等退化场景的定位稳定性,对利用人工路标的移动机器人具有实用价值。

Studying…… 1328

材料力学数值方法:细观力学模拟:材料断裂与损伤的细观模拟_2024-08-05_16-13-13.Tex

弹性理论是材料力学的一个重要分支,主要研究在外部载荷作用下,材料如何发生弹性变形以及如何恢复原状。这一理论基于连续介质力学,将材料视为由无数连续点组成的连续体,每个点都遵循一定的力学规律。弹性理论的核心是胡克定律,它表明在弹性范围内,应力与应变成正比关系。损伤变量ddd通常定义为0到1之间的值,其中d0d=0d0表示材料未损伤,d1d=1d1表示材料完全损伤。损伤变量可以基于不同的物理量定义,如裂纹密度、孔隙率或微观缺陷的分布。

938

DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011

DB2报错: SQL Error: SQLCODE=-964, SQLSTATE=57011 原因:该数据库的日志文件已满。 解决办法:加大日志文件大小,增加日志文件个数,增加辅助日志文件个数。 查看配置参数命令: 在db2的命令窗口输入 db2 get db cfg for 数据库名; db2 get db cfg for sample 查看 日志文件大小(4KB) (LOGFILSIZ) ...

qq_35298337的博客 7370

【YOLOv11工业级实战】27. TensorRT量化实战:FP16/INT8极致加速!边缘设备YOLOv11推理速度提升4倍,精度损失控制在1.5%内

摘要:本文针对智慧园区200路摄像头实时分析的工业痛点——RTX 3080单卡仅能处理12路视频流(YOLOv11-nano FP32精度45FPS,需≥120FPS且精度损失≤3%),提供TensorRT量化完整解决方案。从原理解析(FP16/INT8精度差异与量化逻辑)到实操落地(ONNX转换、FP16引擎构建、INT8精细校准),全程给出可复用代码。实测显示:FP16量化后速度达128FPS(×2.8),精度损失0.2%。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1720

DB2数据库的事务日志已满。. SQLCODE=-964, SQLSTATE=57011, DRIVER=3.63.108

DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011的原因及解决方法 DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011的原因及解决方法 原因:该数据库的日志文件已满 解决办法:加大日志文件大小,增加日志文件个数,增加辅助日志文件个数   查看配置参数命令: 在db2的命令窗口输入  db2 get db cfg for 数...

weixin_41167961的博客 1628

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【DB2】数据库的事务日志已满。SQLSTATE=57011

【DB2】数据库的事务日志已满。SQLSTATE=57011 问题描述` SQLCODE:-964,SQLSTATE:57011 在使用数据库的时候报错如上图,我们先使用 db2 get db cfg for sample 查看相关配置参数,其中sample为数据库名称 D:\Users\Thinkpad>db2 get db cfg for sample 数据库配置发行版级别 ...

灰灰的博客 3877

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

DB2 SQL 错误(SQLCODE:-964,SQLSTATE:57011)处理方法

故障现象描述: 执行 SQL 语句时,出现类似如下错误消息。 指令 SQL:insert into t_stat_file_temp SQLSTATE:57011,供应商错误代码:-964 DB2 SQL 错误:SQLCODE:-964,SQLSTATE:57011, SQLERRMC:空 故障原因说明: 数据库堆中没有足够的存储空间可用于处理该语句,此错误消息是事务日志中耗尽空间的...

weixin_30793643的博客 2431

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

db2数据库_百万级数据插入表报错,sqlcode=-964

问题描述: 在项目中编写了存储过程,向某张表插入数据,某个表现有200万+的数据量,在执行存储过程中报错,sqlcode=-964 存储过程大体结构如下: insert into A select * from B 原因分析: 百度了一下发现是数据库日志表满了,我就查询了日志表,查看使用率 select DB_NAME, LOG_UTILIZATION_PERCENT from SYSIBMADM.LOG_UTILIZATION 查询结果:database

jss19940414的博客 2971

DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011的原因及解决方法

[size=large]DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011的原因及解决方法[/size] 原因:该数据库的日志文件已满 解决办法:加大日志文件大小,增加日志文件个数,增加辅助日志文件个数 查看配置参数命令:get db cfg for ; 修改配置参数命令: 修改日志文件大小:update db cfg for usi...

weixin36的博客 2030

(转)DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011的原因及解决方法

http://blog.sina.com.cn/s/blog_4a3883790100qpqd.html DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011的原因及解决方法  (2011-04-06 11:43:36) 转载 标签:  db2   日志文件   数据库   杂谈 分类: 数据库 ...

mlxia的专栏 1157

数据库报错:DB2 SQL error: SQLCODE: -964, SQLSTATE: 57011, SQLERRMC: null; db2 get db cfg for 数据库名称

数据库报错:DB2 SQL error: SQLCODE: -964, SQLSTATE: 57011, SQLERRMC: null; db2 get db cfg for 数据库名称 数据库日志大小=LOGFILSIZ*4*(LOGPRIMARY+LOGSECOND)                            =1000*4*(3+2)

Jackie的博客 2638

解决DB2 SQLCODE=-964日志文件满的问题

在程序中需要使用下面的代码 insert into a select * from b where ...... 每次插入到a表的记录有600多万条,每次执行该语句DB2都会返回SQLCODE值为-964的错误码,用db2 sql0964命令查看错误原因,DB2的解释为SQL0964C The transaction ...

Leon1509的专栏 3031

DB2删除数据报错

delete 数据时报错DB2 SQL error: SQLCODE: -964, SQLSTATE: 57011 是由于数据库日志文件已满, 数据库日志大小=LOGFILSIZ4(LOGPRIMARY+LOGSECOND) 解决办法: 加大日志文件大小,增加主日志文件个数,增加辅助日志文件个数 db2 update db cfg for DB_NAME using ...

hyfstyle的博客 1787

DB2 SQLCODE=-964日志文件满的问题

Sql代码   db2 update db cfg for MY_DATABASE using LOGFILSIZ xxx  db2 update db cfg for MY_DATABASE using LOGPRIMARY 60   db2 update db cfg for MY_DATABASE using LOGSECOND 20

m_shuai的专栏 3163

DB2解决“数据库日志已满”操作 SQLCODE=-964

可视化操作方法: 进入db2的控制中心,在数据库名称上点右键–>配置参数–>日志–>日志文件大小、主 日志文件数、辅助日志文件数改大一点 LOGFILSIZ 日志文件大小 LOGPRIMARY 主日志文件大小 LOGSECOND 辅助日志文件数 命令行操作方法: 用命令行db2cmd db2 update db cfg for dbn...

kanecake的专栏 801

DB2 SQLCODE:-964 13 SQLERRM:SQL0964C 数据库的事务日志已满 SQLSTATE=57011

首先 开始—>运行 输入db2cmd 进入db2 命令窗口 db2 connect to sample user db2admin using admin // sysmiant db2 get db cfg for sample 注意:不要带分号,否则报错的。 update db cfg using LOGFILSIZ 20000 —更改 日志文件大小 update db cf...

rede 1223
上一篇: (转)HTC Hero获取root权限(成功!!!)
下一篇: (转)DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011的原因及解决方法
mlxia
博客等级 码龄26年 28粉丝 410原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值