- 浏览: 1544021 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (532)
- 软件设计师 (7)
- PSP (5)
- NET MD (9)
- Hibernate (8)
- DIY (51)
- Work (43)
- GAME (24)
- 未分类 (44)
- iPod (6)
- MySQL (39)
- JSP (7)
- 日语能力考试 (36)
- 小说 (4)
- 豆包网 (23)
- 家用电脑 (7)
- DB2 (36)
- C/C++ (18)
- baby (9)
- Linux (13)
- thinkpad (23)
- OA (1)
- UML (6)
- oracle (24)
- 系统集成 (27)
- 脑梗塞 (6)
- 车 (8)
- MainFrame (8)
- Windows 7 (13)
- 手机 (8)
- git (12)
- AHK (2)
- COBOL (2)
- Java (9)
最新评论
-
安静听歌:
... ...
UUID做主键,好还是不好?这是个问题。 -
lehehe:
http://www.haoservice.com/docs/ ...
天气预报 -
lehehe:
[url http://www.haoservice.com/ ...
天气预报 -
liubang201010:
监控TUXEDO 的软件推荐用这个,专业,权威.并能提供报警和 ...
(转载)Tuxedo中间件简介 -
tinkame:
Next[j] =-1 当j=0时;=Max{k|0<k ...
KMP字符串模式匹配详解
http://www.db2china.net/club/thread-4244-1-1.html
DB2解决“数据库日志已满”操作 SQLCODE=-964
日志文件需要更多空间,但是减少了应用程序重试该操作的需要。
若正在安装样本数据库,则删除它并再次安装样本数据库。
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交易日志存储空间满问题如何处理。
数据库事务日志的最大大小由数据库的三个配置参数决定,分别是“主日志文件的数目”(LOGPRIMARY)、“辅助日志文件的数目”(LOGSECOND)和“日志文件大小(4KB)”(LOGFILSIZ)。数据库事务日志的最大大小的计算公式如清单 01-32 所示:
数据库事务日志的最大大小 = ( LOGPRIMARY + LOGSECOND )* LOGFILSIZ * 4KB |
LOGSECOND 在这个公式中不能设为 “ -1 ” ,“ -1 ”代表你在请求一个无限的活动日志空间,数据库也不会报数据库事务日志已满错误,如果空间不足则会报日志磁盘已满错误,具体如本章第五节所述。下面我们具体看一下这三个参数:
- 主日志文件的数目 LOGPRIMARY
此数据库配置参数用来指定要预分配的主日志文件个数。主日志文件建立分配给恢复日志文件的固定存储器数量。在循环日志管理模式下,数据库事务将按顺序重复使用主日志,也就是当一个主日志已满时,顺序使用下一个主日志,如果主日志已满,则按需一次分配一个辅助日志,辅助日志在使用完后,将被释放。如果你发现数据库会经常分配辅助日志文件,则可能需要通过增大日志文件大小或增大主日志文件的数目来提高系统性能。 - 辅助日志文件的数目 LOGSECOND
此数据库配置参数用来指定按需分配的辅助日志文件个数。尽量不要把此参数的值设置成“ -1 ” ,“ -1 ”代表你在请求一个无限的活动日志空间,数据库也不会报数据库事务日志已满错误,如果空间不足则会报日志磁盘已满错误。 - 日志文件大小 LOGFILSIZ
此数据库配置参数用来指定日志文件的大小。
数据库事务日志已满错误是指当前事务无法写入到活动日志中(此时主日志文件和辅助日志文件已经全部用完或者没有足够当前事务写入的空间),需要注意的是,这个错误和日志磁盘空间已满是两个概念,如果想查看日志磁盘已满错误,请参照本章第五节。数据库事务日志已满不是由于磁盘空间满引起的,而是由于没有落实的事务总体过大,超过了数据库事务日志所能容纳的最大大小所造成的。
一般系统上线之初(如果是分阶段上线,则是每次上线之初),由于经常要导大量的数据,容易出现这个问题,当出现这个问题时,直接的办法是找到引起这个错误的当前事务,终止掉这个事务即可,后续在操作时找到当前执行的事务中比较大的事务,尽量落实或回滚该事务。
一般情况下,建议大家在系统上线之初进行导数时,尽量使用 LOAD 实用程序(如果是归档日志模式,建议使用带 NONRECOVERABLE 选项的 LOAD 实用程序,否则装入完成后数据库或装入的表所在的表空间会被置于备份暂挂状态,需要做一次全备才能解除备份暂挂状态),LOAD 实用程序在装入数据时不记日志。
如果使用 IMPORT 实用程序,建议使用 COMMITCOUNT 选项。无论是循环日志模式还是归档日志模式,使用 IMPORT 实用程序导入大量数据时,都有可能报数据库事务日志已满(也就是当前导入操作产生的事务过大,使得当前活动日志满了,包括所有的主日志和辅助日志都用完了),所以为了避免数据库日志已满错误,提高并发性,可以使用 COMMITCOUNT 选项,对要导入的数据分阶段提交。比如可以将 COMMITCOUNT 参数设置为“自动”,指示 import 实用程序 内部决定何时进行落实。此外,也可以将 COMMITCOUNT 选项设置为特定数字,指示 import 实用程序 在导入指定记录数后即进行落实。
尽量避免在上线之初直接使用“ INSERT INTO … SELECT .. FROM .. ”语句,导入一个很大的事务的方式进行导数,这样会使事务非常大。另外,还可以在系统上线之初把主日志文件的数目(LOGPRIMARY)、辅助日志文件的数目(LOGSECOND)和日志文件大小(4KB)(LOGFILSIZ)三个参数调大,等系统正式上线稳定后,再调回合适的值。
如果是在正式上线后的系统,经常出现这个问题,就需要查找原因,具体的原因可能有:
- 数据库并发连接比较多
这种情况下,就要考虑适当增加主日志文件的数目(LOGPRIMARY)和日志文件大小(4KB)(LOGFILSIZ)。 - 有人通过第三方软件或其他工具直接连接到了生产库
在这样的情况下,就要监控数据库,看其是否经常写一些大的语句对数据库进行增删改的操作,如果是的话,建议增加数据库的控制,尽量不要让不相关的人员连接生产库(如果其他人有需要,尽量开放备份库给他们使用,而不要开放生产库,生产库尽量只给业务系统正常使用),如果你使用的是 DB2 V9.5 版本,则可以使用工作负载管理 WLM 对数据库的资源进行调配。如果使用的是 DB2 V9.5 之前的版本,则可以在数据库服务器上通过配置操作系统的方式,限制一些 IP 的访问。
当出现这样的错误时,不要尝试使用 DB2STOP FORCE 命令来强制停掉数据库,建议大家使用 FORCE APPLICATION 命令停掉引起这个错误的应用程序或者停掉所有的应用程序。也不建议大家使用 KILL 命令来杀掉任何 DB2 相关的进程。
发表评论
-
(转)浅谈IBM DB2的数据库备份与恢复
2011-11-23 16:41 1847http://bzhang.mild.blog.163.com ... -
(转)DB2备份恢复数据库步骤
2011-11-23 16:23 952http://tech.it168.com/ibmtec ... -
(转)DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011的原因及解决方法
2011-11-07 15:03 9616http://blog.sina.com.cn/s ... -
(转)用哪个DB2命令查看DB2 instance是启动还是停止的?
2011-09-30 13:25 3646http://bbs.chinaunix.net/thre ... -
(转)论 LOAD 与 IMPORT 中的 codepage 转换
2011-07-11 14:55 1163http://www.ibm.com/develo ... -
(转)DB2导出数据库表结构和数据
2011-07-11 14:19 1564http://hi.baidu.com/mylovecha ... -
(转)DB2 9 中基于字符的字符串函数
2011-06-16 11:32 1429http://www.ibm.com/develo ... -
(转)db2look:生成 DDL 以便重新创建在数据库中定义的对象
2011-05-31 14:56 1646http://blog.csdn.net/hrfdotnet/ ... -
(转)【俊哥儿张】DB2:学习 DB2LOOK 命令
2011-05-31 14:54 1400http://space.itpub.net/770528 ... -
(转)Recreate optimizer access plans using db2look
2011-05-31 14:53 1267http://www.ibm.com/develo ... -
(转)DB2中ALTER TABLE为什么需要REORG操作?
2011-05-12 13:10 1685http://www.flatws.cn/article/ ... -
(转)DB2 3.2.2 表空间维护
2011-05-11 12:53 1184http://book.51cto.com/art/2 ... -
(转)DB2 数据类型
2011-05-11 12:52 4005http://hi.baidu.com/uvvv/blog ... -
(转)DB2 Basics: Table spaces and buffer pools
2011-05-06 15:29 1471http://www.ibm.com/develo ... -
(转)SQL1092N "USER" does not have the authority to perform therequested command -
2011-03-23 17:39 5484http://dbaspot.com/foru ... -
(转)DB2 sqlstate 57016 原因码 "7"错误详解
2011-03-07 17:38 1499http://www.db2china.net/clu ... -
(转)在英语 OS 上设置 DB2 UDB 版本 8 中的混合字节字符集(MBCS)数据库
2011-02-16 16:25 1604http://www.ibm.com/develo ... -
(转)DB2 CODEPAGE List
2011-02-15 15:15 1426http://www.db2china.net/hom ... -
(转)快速参考: DB2 命令行处理器(CLP)中的常用命令
2010-11-11 10:44 972http://www.ibm.com/develo ... -
(转)DB2 and IBM's Processor Value Unit pricing
2010-01-13 17:36 1378http://www.ibm.com/developerwor ...
相关推荐
标题中的错误信息“SQLSTATE=57016 SQLCODE=-668”是一个IBM DB2数据库系统中常见的错误代码,通常与权限或对象状态有关。这个错误的完整信息是"SQL0668N Operation not allowed.",意味着在尝试执行特定的数据库...
例如,SQLCODE -911表示“会话已中断”,-955表示“数据库会话已满”,而0表示操作成功。 1. **错误分类与解读**: - **系统错误**:这些错误通常与DB2的内部工作或资源管理有关,如内存不足、磁盘空间不足等。 -...
在使用DB2过程中,可能会遇到各种错误代码,其中SQLSTATE 57016与SQLCODE -668,特别是原因码“7”,是一个常见的错误,通常表示在尝试执行数据库操作时遇到了权限问题。本篇文章将深入探讨这个错误的原因,并提供...
在使用IBM DB2数据库的过程中,开发者可能会遇到各种各样的错误。为了更好地理解和解决这些问题,了解SQLCODE的具体含义至关重要。本文将详细介绍DB2 SQLCODE的相关知识点,包括其基本概念、作用以及如何根据具体的...
因此,本文旨在整理 DB2 的 SQL、sqlcode、sqlstate 错误码大全,提供详细的错误码说明和用户响应方法,帮助用户快速解决问题,提高工作效率。 SQL0000 - SQL0099 在 DB2 中,SQL0000 - SQL0099 错误码系列主要...
Db2 11.5 引入了一个名为高级事务日志空间管理的新特性,这是针对“数据库事务日志已满”这一常见问题的解决方案。在传统的数据库管理中,当事务日志达到其最大容量时,可能导致数据库操作失败,严重影响系统的正常...
DB2错误操作手册是数据库管理员和开发者在遇到DB2数据库系统异常时的重要参考资料。日志错误汇总收集了各种SQL操作中可能出现的错误信息,通过这些信息可以定位问题并解决。以下是一些常见的DB2错误及其详细说明: ...
### DB2数据库常用命令大全整合 #### 一、启动与停止数据库 - **启动数据库**: - `db2start`:此命令用于启动DB2数据库管理器。 - **停止数据库**: - `db2stop`:此命令用于停止DB2数据库管理器。 - `db2stop...
在使用DB2进行SQL查询或操作时,可能会遇到各种错误,这些错误通常会通过sqlcode和sqlstate来表示。"DB2 sqlstate错误码大全.zip"这个压缩包文件提供了关于DB2系统中的SQL错误码的详细信息,帮助用户理解和解决遇到...
### DB2数据库SQL语句错误代码查询:深入解析与应对策略 #### 引言 在进行数据库操作时,遇到SQL语句错误是常有的事,尤其是对于DB2这样的大型关系型数据库管理系统而言,其丰富的功能和复杂的架构可能导致各种...
通过上述详细说明,我们可以清晰地了解到 DB2 数据库管理中的常见操作命令及它们的用途和注意事项。这些命令涵盖了从基本的数据库创建、管理到复杂的备份恢复、故障排查等多个方面,对于 DB2 数据库管理员来说是非常...
实验 #1 安装DB2 Express-C,创建 SAMPLE数据库........................................................32 第 4章 – DB2的应用环境............................................................................
在IT行业中,数据库管理系统(DBMS)是至关重要的组成部分,而IBM DB2作为一款高性能、高可靠性的数据库系统,被广泛应用于各种企业级应用中。在DB2的日常管理和维护过程中,遇到错误是难以避免的,而理解这些错误代码...
根据提供的文件信息,我们可以归纳出一系列与IBM DB2数据库系统相关的命令及选项。这些命令涵盖了DB2系统的管理和操作,包括但不限于实例管理、配置调整、工具使用等关键领域。接下来将详细解析这些知识点。 ### ...
在数据库管理与维护中,DB2错误日志扮演着至关重要的角色,它能够帮助DBA(数据库管理员)快速定位并解决数据库运行过程中遇到的问题。DB2错误日志中记录的信息包含了各种错误代码、状态码以及具体的错误描述,这些...
这个术语主要与IBM的DB2数据库管理系统紧密相关。本文将深入探讨SQLCODE及其在DB2中的应用。 SQLCODE是一个特殊的返回码,用于报告在执行SQL语句时遇到的问题。当DB2执行一个SQL语句,它会返回一个SQL状态,这个...
以上列出的命令涵盖了DB2数据库管理中的许多常见任务,从基本的数据库管理(如启动和停止实例)到更复杂的任务(如备份和恢复),以及性能调优和监控等方面。掌握这些命令将大大提高DBA和开发人员的工作效率。
在这个场景中,我们主要探讨DB2数据库在执行SQL操作时如何通过SQLSTATE来报告错误。 SQLSTATE代码由五个字母或数字组成,通常以两个字母的类别开头,接着是三个数字。类别部分提供了错误的大致范围,而具体的三位...
了解这些SQLCODE可以帮助数据库管理员和开发者更快地诊断和解决DB2中的错误,从而提高数据库操作的效率和准确性。在遇到这些问题时,除了查看SQLCODE外,还应参考SQLSTATE,因为SQLSTATE提供了关于错误类别的额外...
在DB2数据库管理系统中,错误处理是一项重要的功能,它帮助用户理解系统运行时遇到的问题并进行相应的解决。本文将根据给定的部分内容来详细解释DB2中的部分错误代码及其对应的SQLSTATE值,帮助读者更好地理解和解决...