一、概述

DB2 V10中新增加的特性
将访问频率不同的数据放置在不同的存储空间中
引入了存储组(storage group)的概念
方便DBA对不同热度的数据进行管理

二、存储器组

存储数据的存储路径的集合
只有自动存储表空间才能使用存储器组
一个表空间只能与一个存储器组相关联
一个存储器组可以与多个表空间相关联

db2 多温度存储器_表空间

三、存储器组操作

1、查看存储器组

db2pd -db db_name -storagegroup

db2 "select varchar(storage_group_name,20) as storage_group,
storage_group_id,
varchar(db_storage_path,20) as storage_path,
db_storage_path_state,
(fs_total_size / 1000000) as total_path_MB,
(sto_path_free_size / 1000000) as path_free_MB from table(admin_get_storege_paths('',-1)) as T1"

2、创建存储器组

db2 多温度存储器_表空间_02

3、删除存储器组

db2 drop stogroup storage_group_name

db2 多温度存储器_数据_03

4、表空间与存储器组

一个表空间只能与一个存储器组相关联
一个存储器组可以与多个表空间相关联
创建表空间时可以指定存储器组
db2 create tablespace tablespace_name using stogroup storagegroup_name
修改表空间使用存储器组
db2 alter tablespace tablespace_name using stogroup storagegroup_name

5、查看表空间与存储器组的关系

db2 "select TBSPACE,SGNAME,SGID from syscat.tablespaces"

db2 多温度存储器_表空间_04

四、示例

1、查看存储器组
db2pd -db jikedb1 -storagegroup

db2 "select varchar(storage_group_name,20) as storage_group,
storage_group_id,
varchar(db_storage_path,20) as storage_path,
db_storage_path_state,
(fs_total_size / 1000000) as total_path_MB,
(sto_path_free_size / 1000000) as path_free_MB from table(admin_get_storege_paths('',-1)) as T1"
2、创建存储器组
db2 "create stogroup sq1 on '/home/db2inst2/sqpath1'"
3、创建表空间,指定存储器组
db2 create tablespace jikets1 using stogroup sq1
4、查看表空间和存储器组的关系
db2 "select TBSPACE,SGNAME,SGID from syscat.tablespaces"
5、删除存储器组
db2 drop stogroup sq1
6、修改表空间的存储器组
db2 alter tablespace jikets1 using stogroup IBMSTOGROUP