扩大表空间有3种方法:
扩展容器50G
db2 "alter tablespace tablespace_name extend (file '/data1/ts2/con0' 50G,file '/data1/ts2/con1' 50G)"
2.增加容器,不过会rebalance,影响系统性能
db2 "alter tablespace tablespacename add (file '/data1/ts2/con2' 50G)"
3.通过alter tablespace begin new stripe set 选项,该选项不rebalance,不会对系脊羡统性能造成影响,但它会造成数据偏移。
db2 "alter tablespace tablespace_name begin new stripe set (file '樱则拍/data1/ts2/con3'盯燃 10G)"
CONNECT TO dbnamedrop BUFFERPOOL BFPOOL8
--建缓冲池
CREATE BUFFERPOOL BFPOOL8 IMMEDIATE SIZE 25000 PAGESIZE 8 K
--建悔滚表空间,路径要修改
CREATE TABLESPACE DMS_DATA8K PAGESIZE 8 K MANAGED BY DATABASE
USING (FILE '/home/DB2/前哪NODE0000/DMS_DATA8K.DMS' 3G)
EXTENTSIZE 16 OVERHEAD 10.5 PREFETCHSIZE 16 TRANSFERRATE 0.14
BUFFERPOOL BFPOOL8 DROPPED TABLE RECOVERY OFF
--扩展表空间(调整容器大小)
--ALTER TABLESPACE DMS_DATA8K resize (FILE '慧前码/home/DB2/NODE0000/DMS_DATA8K.DMS' 2G)
--扩展表空间(增加容器大小)
--ALTER TABLESPACE DMS_DATA8K extend (FILE '/home/DB2/NODE0000/DMS_DATA8K.DMS' 2G)
--扩展表空间(给表空间增加容器)
--ALTER TABLESPACE DMS_DATA8K add (FILE '/app149/DB2/NODE0000/DMS_DATA8K.DMS' 5G)
DB2 HELP已经说的很明搭历确,即找不到合适大小的表空间,两种建议:一、将部分字段过大的长度减小,楼主建表语句中有三个长度为3000的字段,另外还有4个长度为1000的字段,加上其他字段合计为16k左右,如果没必要建那么大,将部分字段长度减小,使所有字段合计不超过8k即可。
二、在所有字段都不能减小或是减小后不能是合计在8k左右,那么只能建立新的表空间。推荐使用db2控制中心,先建立缓冲池,指定页大小为32K,缓冲池大小自己设定,然后创建新表空间,顺序如下:
a、名称(此处可选择手动管理存储器);
b、表空间类型:大型
c、指定缓冲池:刚才新建的缓冲池
d、添加容器:路径自己定雹凯义,容器大小设置根据以后存储表的大小(注:默认是20M,建议大小在3000G左右)
e、表空间新建完成
此知肆搜时再运行建表语句,OK
打完收功
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)