db2表空间及日志文件调整
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表空间及日志文件调整的更多相关文章
- oracle 查看表空间以及日志文件等系统文件
--1.查看表空间的名称及大小 )), ) ts_size FROM dba_tablespaces t, dba_data_files d WHERE t.tablespace_name = d.t ...
- 【转】Oracle 表空间与数据文件
--============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或 ...
- Oracle 表空间与数据文件
-============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或多 ...
- ORACLE RMAN备份及还原 RMAN能够进行增量备份:数据库,表空间,数据文件
ORACLE RMAN备份及还原 RMAN能够进行增量备份:数据库.表空间.数据文件 仅仅有使用过的block能够被备份成backup set 表空间与数据文件相应关系:dba_data_file ...
- RMAN数据库恢复之恢复表空间和数据文件
执行表空间或数据文件恢复时,数据库既可以是MOUNT状态,也可以是OPEN状态.1.恢复表空间在执行恢复之前,如果被操作的表空间未处理OFFLINE状态,必须首先通过ALTER TABLESPACE… ...
- 用备份控制文件做不完全恢复下的完全恢复(全备<老>--备份控制文件<次新>--删除表空间andy--日志文件<新>)
为什么会使用备份的控制文件? 实际工作中主要有两种情况:第一种:当前控制文件全部损坏,而数据文件备份,控制文件备份及当前日志处于不同SCN版本,它们之间又增加过表空间(数据文件).第二种:当前控制文件 ...
- db2 表空间扩容
DB2表空间扩容 1 - Detect what tablespace has size issues db2 list tablespaces show detail 2 - Check the p ...
- Oracle 表空间和数据文件之间的关系
首先,你需要明白的一点是:数据库的物理结构是由数据库的操作系统文件所决定,每一个Oracle数据库是由三种类型的文件组成:数据文件.日志文件和控制文件.数据库的文件为数据库信息提供真正的物理存储. 每 ...
- Oracle的表空间、数据文件、用户
每一个Oracle数据库都是由三种类型的文件组成:数据文件(Data File).日志文件(Log File)和控制文件(Control File).数据库的文件为数据库信息提供真正的物理 ...
随机推荐
- 一起KVM环境下windows7虚拟机异常死机(BSOD)的问题解决
先说一下环境: 一.硬件 8台服务器做的超融合架构,软件存储池, 每台服务器是96G内存,两颗Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz,32线程. 每台服务器是 ...
- sql isdate判断时间函数(小技巧)
isdate 是一个判断字符串是否为日期的函数,0代表所传入的字符串不是日期,1代表传入的参数是日期. select isdate('30/12/2014') ---0 第一个是 mdy --如 ...
- 20165233 2017-2018-2 《Java程序设计》第九周学习总结
20165233 2017-2018-2 <Java程序设计>第九周学习总结 教材学习内容总结 基础 - URL类:java.net包中的URL类是对统一资源定位符的抽象,使用URL创建对 ...
- 二维数组 cudaMallocPitch() 和三维数组 cudaMalloc3D() 的使用
▶ 使用函数 cudaMallocPitch() 和配套的函数 cudaMemcpy2D() 来使用二维数组.C 中二维数组内存分配是转化为一维数组,连贯紧凑,每次访问数组中的元素都必须从数组首元素开 ...
- node 把前台传来的base64码转成图片存放
最近做个人网站头像修改用到了,在做头像修改,先做了一个图片切割,只需要上传你选中部分, 如图 这种需求 应该还是会遇到的, http://pan.baidu.com/s/1boVkn1t 这是裁剪图片 ...
- DEMO: springboot 与 freemarker 集成
直接在 DEMO: springboot 与 mybatis 集成 基础上,进行修改. 1.pom.xml 中引用 依赖 <dependency> <groupId>org.s ...
- 进程池(Pool)
进程池用于进程维护, 当使用时,将会去进程池取数据 from multiprocessing import Pool, Processimport os, time def f(i): time.sl ...
- 从底层谈WebGIS 原理设计与实现(四):WebGIS中通过行列号来换算出多种瓦片的URL 之离线地图
从底层谈WebGIS 原理设计与实现(四):WebGIS中通过行列号来换算出多种瓦片的URL 之离线地图 作者:naaoveGI… 文章来源:naaoveGIS 点击数:1759 更 ...
- React 简单介绍
React 简单介绍 作者 RK_CODER 关注 2014.12.10 17:37* 字数 2516 阅读 55715评论 6喜欢 70 why React? React是Facebook开发的一款 ...
- import 语句用于导入从外部模块,另一个脚本等导出的函数,对象或原语。
import 语句用于导入从外部模块,另一个脚本等导出的函数,对象或原语. 注意:此功能目前无法在任何浏览器中实现.它在许多转换器中实现,例如 Traceur Compiler , Babel , R ...