DB2多分区数据库的常用管理


DB2的多分区管理通常会给大家有点挑战性,但是很多时候多分区和单分区管理差别不是很大,如下总结了常见的操作管理命令:

启动指定分区的数据库节点:

db2start dbpartitionnum DBNODENUM
在日常操作中,我们需要确定当前连接节点号码,如下就是检查当前分区节点号码方法:
db2 values current dbpartitionnum
在日常多分区环境下 ,需要查看分区组数如下:
db2 LIST DATABASE PARTITION GROUPS SHOW DETAIL
对于多分区数据库的数据分布不均匀时,需要重新分布数据库分区组数据
db2 "REDISTRIBUTE DATABASE PARTITION GROUP pg123 UNIFORM"
OR
db2 "REDISTRIBUTE DATABASE PARTITION GROUP pg123 using TARGETMAP pg123.map"
db2 "REDISTRIBUTE DATABASE PARTITION GROUP IBMDEFAULTGROUP USING TARGETMAP /home/wangfg/t2.map TABLE (t2) ONLY"
检查分区表数据在各分区的分布情况
SELECT DBPARTITIONNUM(distribution key),COUNT( * ) 
FROM schema.table
GROUP BY DBPARTITIONNUM(distribution key)
ORDER BY DBPARTITIONNUM(distribution key)
查看分区图分布情况
SELECT HASHEDVALUE(distribution key),COUNT( * )
FROM schema.table
GROUP BY HASHEDVALUE(distribution key)
ORDER BY HASHEDVALUE(distribution key)
对于多分区操作可以参见如下方式的命令来管理多分区:
db2_all "db2 UPDATE DB CFG FOR TESTDB USING LOGRETAIN ON"
db2_all ";db2 UPDATE DB CFG FOR TESTDB USING LOGRETAIN ON"
db2_all "db2 CONNECT TO testdb ;db2 LIST TABLESPACES SHOW DETAIL"

相关内容