修改表空间
1.对于DMS管理的表空间
方法一:如果磁盘目录还有空间,则拓展
[db2inst1@]# db2 "alter tablespace data_ts2 extend (file 'data1/ts2/cont0' 10M , file 'data1/ts2/cont1' 50G)"
方法二:增加新容器,会rebalance
[db2inst1@]# db2 "alter tablespace data2_ts2 add(file 'data1/ts2/cont2' 50G)"
方法三:通过 alter tablespace begin new stripe set ,当已有容器使用完后,再使用新增加的容器,与方法2不同,不会rebalance,不会造成性能影响,但会数据偏移
[db2inst1@]# db2 "tablespace data_ts2 begin new stripe set (file 'data1/ts2/cont3' 10m)"
增加表空间大小
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页。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12961536/viewspace-1061382/
,如需转载,请注明出处,否则将追究法律责任。