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

查看数据库的配置参数:get db cfg for <dbname>  
         日志文件大小(4KB)  (LOGFILSIZ) = 1024 (每个日志文件大小为1024*4KB=4MB)
         主日志文件的数目     (LOGPRIMARY) = 3
         辅助日志文件的数目   (LOGSECOND) = 1

修改数据库的配置参数:update db cfg for <dbname> using <p> <v>
  修改日志文件大小:update db cfg for <dbname> using LOGFILSIZ  4096
  修改主日志文件个数:update db cfg for <dbname> using LOGPRIMARY  6
  修改辅助日志文件个数:update db cfg for <dbname> using LOGSECOND 10

x

db2pd -db DNJC transactions
db2pd -db DNJC -dynamic
db2pd -db DNJC -logs

表空间满了,肯定使用的是DMS的表空间,对于DMS表空间,可以有以下几种方式扩容:
1. 向表空间中添加新的容器:
ALTER TABLESPACE 表空间名 ADD (FILE '容器文件路径和名称' 容器文件大小)
2. 把现有的容器扩大:也有两种方法
(1)ALTER TABLESPACE 表空间名 RESIZE(FILE '已满的容器名' 更改后容器的大小)
(2)ALTER TABLESPACE 表空间名 EXTEND(FILE '已满的容器名' 准备增加的大小)
若表空间直接用的是祼设备的话,就需要把file 改成device.
在做的时候一定要考虑到rebalance时间,增加了容器以后DB2会自动重新balance数据,根据tablespace的数据大小需要一定的时间来完成。这期间访问速度会下降很多。
要注意是几K页的表空间,4K最大表空间限制在64G,8K是128G,16K是256G,32K是512G,如果有上述限制是不可以直接加CONTAINER的,那只有再建一个新的表空间!
问一下容器文件太大对读写性能有多大影响?
一直有这样的疑问,在表空间不够的时候,到底是增大文件的大小好还是添加一个容器文件好
如果你有分离的磁盘,当然是在物理上分离的磁盘上建立文件容器好了,i/o比较快。
windows环境中还是扩大container的size比较实用,可以避免rebalance

增加表空间大小
DB2数据库使用时,如果表空间满了,该如何扩容呢?下文将教给您DB2数据库表空间扩容的方法,供您参考,希望对您有所帮助。
1)直接添加一个容器的例子:
db2 " ALTER TABLESPACE PAYROLL ADD (DEVICE '/dev/rhdisk9' 10000) "
加容器之后DB2会有一个自动balance的过程,可能会持续几个小时!!! 一定要注意该选项,修改前确认该选项是否能满足业务需求!
2)改变现有容器的大小(该方法不会触发balance,但如果表空间建立在裸设备上,则要扩冲裸设备空间):
db2 " ALTER TABLESPACE TS1 RESIZE (FILE '/conts/cont0' 2000, DEVICE '/dev/rcont1' 2000, FILE 'cont2' 2000) "
注意这种方式就是将原有的相应容器都改成大小是2000页
db2 "ALTER TABLESPACE TS1 RESIZE (ALL 2000)"
这种方式就是把表空间中所有的容器大小都改成2000页
db2 " ALTER TABLESPACE TS1 EXTEND (FILE '/conts/cont0' 1000, DEVICE '/dev/rcont1' 1000, FILE 'cont2' 1000) "
这种方式就是将相应的容器都扩大1000页,也就是增加1000页。
db2 " ALTER TABLESPACE DATA_TS EXTEND (ALL 1000)"
这种方式就是将所有的容器都增加1000页。

创建表空间:
create tablespace TS4R_INDEX
pagesize 4K
managed by database using(file 'E:\DNJC\TS4R_INDEX' 10G)
extentsize 32
bufferpool BP_4K
dropped table recovery off;

改变容器大小:
db2 alter tablespace idx_data resize(file 'd:\db2\datafile_netdb\idx_data' 32000);
增加容器:
db2 alter tablespace idx_data add(file 'd:\db2\datafile_netdb\idx_data_exl' 640);
表空间设为自增长:
db2 alter tablespace idx_data autoresize yes increasesize 10240K maxsize none;
查看表空间是否为自增长及增长大小:
db2 get snapshot for tablespaces on netdb |more;

db2 get snapshot for locks on 数据库名称,只能查看一个数据库的死锁,是否有办法查询所有数据库的死锁 用list db directory得到所有数据库名,再循环执行快照命令
db2 get snapshot for dynamic sql on db 得到的结果文本各个项的具体含义

db2表空间及日志文件调整的更多相关文章

  1. oracle 查看表空间以及日志文件等系统文件

    --1.查看表空间的名称及大小 )), ) ts_size FROM dba_tablespaces t, dba_data_files d WHERE t.tablespace_name = d.t ...

  2. 【转】Oracle 表空间与数据文件

    --============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或 ...

  3. Oracle 表空间与数据文件

    -============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或多 ...

  4. ORACLE RMAN备份及还原 RMAN能够进行增量备份:数据库,表空间,数据文件

    ORACLE RMAN备份及还原   RMAN能够进行增量备份:数据库.表空间.数据文件 仅仅有使用过的block能够被备份成backup set 表空间与数据文件相应关系:dba_data_file ...

  5. RMAN数据库恢复之恢复表空间和数据文件

    执行表空间或数据文件恢复时,数据库既可以是MOUNT状态,也可以是OPEN状态.1.恢复表空间在执行恢复之前,如果被操作的表空间未处理OFFLINE状态,必须首先通过ALTER TABLESPACE… ...

  6. 用备份控制文件做不完全恢复下的完全恢复(全备<老>--备份控制文件<次新>--删除表空间andy--日志文件<新>)

    为什么会使用备份的控制文件? 实际工作中主要有两种情况:第一种:当前控制文件全部损坏,而数据文件备份,控制文件备份及当前日志处于不同SCN版本,它们之间又增加过表空间(数据文件).第二种:当前控制文件 ...

  7. db2 表空间扩容

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

  8. Oracle 表空间和数据文件之间的关系

    首先,你需要明白的一点是:数据库的物理结构是由数据库的操作系统文件所决定,每一个Oracle数据库是由三种类型的文件组成:数据文件.日志文件和控制文件.数据库的文件为数据库信息提供真正的物理存储. 每 ...

  9. Oracle的表空间、数据文件、用户

          每一个Oracle数据库都是由三种类型的文件组成:数据文件(Data File).日志文件(Log File)和控制文件(Control File).数据库的文件为数据库信息提供真正的物理 ...

随机推荐

  1. python 命名元组(namedtuple)

      我们知道c/c++语言中,有结构体这种数据类型: struct{ string name; int age; char sex; }student; 在对结构体对象进行赋值或者取值时可以使用.运算 ...

  2. /PROC/MEMINFO之谜

    网站转自:http://linuxperf.com/?p=142 非常技术的网站,够看上一阵子的(一篇文章) /proc/meminfo是了解Linux系统内存使用状况的主要接口,我们最常用的”fre ...

  3. 转载:关于java关键字transient

    今天在map源码中看到这个关键字  百度看一下  转载记录下 源文:http://www.cnblogs.com/lanxuezaipiao/p/3369962.html 1. transient的作 ...

  4. Python——连接操作数据库

    1.安装MySQL驱动程序.下载自动安装包,双击安装即可,非常简单. 2.连接MySQL,下面是Python示例代码. import MySQLdbconn=MySQLdb.connect(host= ...

  5. tornado--同步异步

    同步:指两个或两个以上随时间变化的量在变化过程中保持一定的相对关系 现象:有一个共同的时钟,按来的顺序一个一个处理 异步:双方不需要共同的时钟,也就是接收方不知道发送方什么时候发送,所以在发送的信息中 ...

  6. 18.scrapy中selector的用法

    Selector是一个独立的模块. Selector主要是与scrapy结合使用的. 开启Scrapy shell: 1.打开命令行cmd 2.scrapy shell http://doc.scra ...

  7. 61. oracle给用户解锁

    1.查看用户状态select username,account_status from dba_users where username='test'; 2.解锁: ALTER USER YS_ADM ...

  8. springboot sybase 数据库

    依赖:(驱动) <!-- https://mvnrepository.com/artifact/net.sourceforge.jtds/jtds --> <dependency&g ...

  9. VB6 让程序结束后带有返回值

    第三方命令行程序运行完之后,批处理中可以随时通过errorlevel变量收取运行结果.而VB写的控制台程序却没有提供这样的功能.关于让控制台程序返回值的教程是本博客独家放出. 返回值,其实也就是进程的 ...

  10. Angularjs 首次加载显示{{}}

    使用如下标签 <span translate="{{'SYSTEM_100001'|translateFilter}}"></span>