解决DB2事物日志满、扩充表字段长度和表空间的命令

转:http://blog.sina.com.cn/s/blog_4c0137d10100bb5r.html

 一、通常我们在使用db2导入数据或进行别的操作时会遇到事物日志已满的情况,导致操作无法继续。

在windows系统中,我们可先db2 get db cfg for dbname(要修改的数据库名) 来查看数据的配置情况。

这时根据你的需要来修改日志文件的大小、主日志文件数目和辅助日志文件的数目。命令如下:

、db2 "update db cfg for dbname using logfilsiz XXX (4-262144)".

、db2 "update db cfg for dbname using logprimary X (2-256)".

、db2 "update db cfg for dbname using logsecond XX (0-254)".

在进行这些操作的时候都要断掉应用和数据库的连接。

二、如何扩充数据的表空间。

首先,可通过 db2 list tablespaces show detail 来查看你的表空间状况。

表空间有二种类型:

、SMS【SYSCATSPACE】,为系统管理表空间。

、DMS,用户自己的表空间,为数据库管理表空间。

通过上面的命令来查看表空间中总的表空间(Total pages)和 剩余表空间(Free pages),如果是系统管理表空间(SMS)不够,则是由于磁盘空间不够,需要增加磁盘空间。如果是数据库管理表空间(DMS)不够,则需要扩展表空间。扩展表空间的命令为:
db2 alter tablespace extend (all <num_pages> )
例如:db2 alter tabblespace yourtablespace extend(all 1024M)
扩展了数据库表空间1 G. 三、扩充表中字段的长度。 由于数据的变化导致原本varchar()字段长度不够使用,其实很简单希望对大家有帮助: db2 "alter table tabname alter column colname set data type varchar(4000) " 修改tabname表的colname字段将他的字段长度设置为4000。 data type 后的数据类型要和tabname中的colname类型一致哦。

例如:

引用:http://blog.sina.com.cn/s/blog_7155eb38010156se.html

问题原因:今天在删除CP2_BEPS124表数据的时候,由于一次删除的记录有31W条,导致DB2直接报 The transaction log for the database is full这个错误,

此时数据库已经不能进行查询意外的任何操作。在网上查询之后得知,需要修改数据库的日志文件大小和数量,然后重启数据库,才能删除大量数据,步骤如下

切换到用户db2inst2

db2 get db cfg for cnaps2

此命令可以查看当前数据库的日志文件大小(LOGFILSIZ),主日志数(LOGPRIMARY),辅日志数(LOGSECOND)。

db2 update db cfg for cnaps2 using LOGPRIMARY 50

修改主日志数为50

db2 update db cfg for cnaps2 using LOGSECOND 20

修改辅日志数为20

db2 update db cfg for cnaps2 using LOGFILSIZ 10240

修改日志大小为10240

此时,活动日志空间的最大容量为(20 + 50) * 10240 * 4KB

 停止数据库:db2stop.这时会报SQL1025N  未停止数据库,因为数据库仍是活动的。
 执行:db2 list application 查看目前数据库中活动的链接
 db2 force application all 杀掉所有活动的链接,此时可以顺利的停止数据库了。
 重新启动数据库:db2start
 db2 get db cfg for cnaps2 查看当前数据库日志配置,是否为上面修改后的数字。

成功后,可以顺利的操作大数据啦!

解决DB2事物日志满、扩充表字段长度和表空间的命令的更多相关文章

  1. 扩充表字段长度,引发的意外KILLED/ROLLBACK

    这一段时间,因为系统升级,新系统产生的数据长度,比原来的数据长度要长,所以说要扩充一下字段长度. ) --修改字段长度sql 在执行的时候,有这样一个情况. 例如Student表的Name字段长度是n ...

  2. SQL Server扩充表字段长度,引发的意外KILLED/ROLLBACK

    这一段时间,因为系统升级,新系统产生的数据长度,比原来的数据长度要长,所以说要扩充一下字段长度. ) --修改字段长度sql 在执行的时候,有这样一个情况. 例如Student表的Name字段长度是n ...

  3. DB2表空间重定向恢复数据库实战

    DB2的备份恢复有点坑,当源系统和目标系统的路径设置不同时,要手动进行重定向恢复,本文是我一次实战操作之后总结的过程,仅供参考. 一.发出重定向恢复命令 DB2 RESTORE DB TO " ...

  4. oracle 归档日志满 报错ORA-00257: archiver error. Connect internal only, until freed

    归档日志满导致无法用户无法登陆 具体处理办法 --用户登陆 Microsoft Windows [Version 6.1.7601] Copyright (c) Microsoft Corporati ...

  5. mq解决分布式事物问题

    今天只看看原理,下一节看项目怎么集成mq进行解决分布式事物. 1.什么情况下会使用到分布式事物? 举例说明:现有一个支付系统,因为项目使用的是微服务框架,有订单模块和支付模块两个模块.生产者进行订单的 ...

  6. zencart加大数据表字段长度

    批量表产品名称过长导致被截断的情况,是由于产品名称超出了数据库表中字段设置的最大长度,下面通过修改数据库表字段长度来避免此类情况发生: ) ; ) ; ) ; ) ; ) ; ) ; ) ; ) ; ...

  7. DB2 表空间和缓冲池

    简介 对于刚涉足 DB2 领域的 DBA 或未来的 DBA 而言,新数据库的设计和性能选择可能会很令人困惑.在本文中,我们将讨论 DBA 要做出重要选择的两个方面:表空间和缓冲池.表空间和缓冲池的设计 ...

  8. db2 表空间扩容

    DB2表空间扩容 1 - Detect what tablespace has size issues db2 list tablespaces show detail 2 - Check the p ...

  9. db2表空间及日志文件调整

    1.SQLState '57011' and errorCode '-964'  原因:数据库的日志文件已满  解决方法:修改日志文件大小(加大),增加日志文件个数,增加辅助日志文件个数(三个修改参数 ...

随机推荐

  1. Ruby on Rails Tutorial 第一章 之 Git项目管理

    1.安装和设置 (1)git的安装(略) (2)初始化设置 $ git config --global user.name "LihuaSun" $ git config --gl ...

  2. mysql索引详解,摘自《MySQL 5权威指南》

    本文介绍了数据库索引,及其优.缺点.针对MySQL索引的特点.应用进行了详细的描述.分析了如何避免MySQL无法使用,如何使用EXPLAIN分析查询语句,如何优化MySQL索引的应用.本文摘自< ...

  3. Linux编程之《进程/线程绑定CPU》

    Intro----- 通常我们在编写服务器代码时,可以通过将当前进程绑定到固定的CPU核心或者线程绑定到固定的CPU核心来提高系统调度程序的效率来提高程序执行的效率,下面将完整代码贴上. /***** ...

  4. 小白日记35:kali渗透测试之Web渗透-手动漏洞挖掘(一)-默认安装引发的漏洞

    手动漏洞挖掘 即扫描后,如何对发现的漏洞告警进行验证. #默认安装 流传linux操作系统比windows系统安全的说法,是因为windows系统默认安装后,会开放很多服务和无用的端口,而且未经过严格 ...

  5. Nodejs的mysql模块学习(一)

    介绍 mysql npm包 是一个nodejs的模块,由JavaScript编写 安装 npm install mysql 建立连接 var mysql = require('mysql');//引用 ...

  6. 乐在其中设计模式(C#) - 代理模式(Proxy Pattern)【转】

    介绍 为其他对象提供一个代理以控制对这个对象的访问. 示例 有一个Message实体类,某对象对它的操作有Insert()和Get()方法,用一个代理来控制对这个对象的访问. MessageModel ...

  7. [课程相关]homework-02

    一.如何组织代码 因为这个代码比较简单,用函数就足够了,个人觉得没必要用类,杀鸡不必用牛刀. 代码有点长,主要是加了很多判断参数的部分. 提取了一个公共的递归函数. 用了不少全局变量,可能当做参数传入 ...

  8. JQUERY 动态时钟

    <script type="text/javascript" src="script/jquery-1.8.3.min.js"></scrip ...

  9. 给jdk写注释系列之jdk1.6容器(7)-TreeMap源码解析

    TreeMap是基于红黑树结构实现的一种Map,要分析TreeMap的实现首先就要对红黑树有所了解.      要了解什么是红黑树,就要了解它的存在主要是为了解决什么问题,对比其他数据结构比如数组,链 ...

  10. 高可用软件Keepalived

    关于高可用软件Keepalived的使用及配置请参见:http://www.voidcn.com/blog/9124573/article/p-5990263.html