DB2表空间与缓冲池
参考:www.ibm.com/developerworks/cn/data/library/techarticles/0212wieser/0212wieser.html
今天在做数据迁移的时候发现有部分表导入的时候报错,在网上查了一下说是表空间大小不足的原因。查看数据库的表空的详细信息发现,pagesize 只有4K。于是想新建一表空间再迁移数据。
基本参数:表空间名称,groupname,pagesize,file,缓冲池
CREATE TABLESPACE tsname --表空间名字
IN DATABASE PARTITION GROUP IBMDEFAULTGROUP
PAGESIZE 16K --页大小 页大小范围:4K,8K,16K,32K 如果不指定单位K,则为4096,8192,16384,32768
MANAGED BY DATABASE
using(file '/home/db2inst1/db2inst1/NODE0000/db/T0000005' 1G) --容器
EXTENTSIZE 4
BUFFERPOOL BPName--缓冲池
DROPPED TABLE RECOVERY OFF;
注意缓冲池的大小要跟页的大小一样,且缓冲一定要存在。
新建缓冲池:
CREATE BUFFERPOOL BPPBCEOMS
SIZE 2000
PAGESIZE 16K
最后再导入数据:db2 databasename import -ts tsname 将数据导入到指定的表空间