六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 76|回复: 0

db2 分区组

[复制链接]

升级  82%

140

主题

140

主题

140

主题

举人

Rank: 3Rank: 3

积分
446
 楼主| 发表于 2013-1-13 18:54:53 | 显示全部楼层 |阅读模式
数据库分区组是一个或多个数据库分区的集合。想要为数据库创建表时,首先创建用来存储表空间的数据库分区组,然后创建用来存储表的表空间。

   可以在数据库中定义一个或多个数据库分区组成的命名子集。您定义的每个子集称为 数据库分区组 。包含多个数据库分区的每个子集称为 多分区数据库分区组 。多分区数据库分区组只能使用属于相同实例的数据库分区定义。

  图 1 给出了一个含五个分区的数据库示例,在这个示例中:
• 数据库分区组横跨除一个数据库分区外的所有其它分区(数据库分区组 1)。
• 数据库分区组包含一个数据库分区(数据库分区组 2)。
• 数据库分区组包含两个数据库分区(数据库分区组 3)。
• 数据库分区组 2 中的数据库分区与数据库分区组 1 共享并与之相交。
• 数据库分区组 3 中存在单个数据库分区,该分区与数据库分区组 1 共享并与之相交。

    可使用 CREATE DATABASE PARTITION GROUP 语句创建数据库分区组。此语句指定表空间容器和表数据将驻留其上的一组数据库分区。此语句还可以:
• 为数据库分区组创建分区映射。
• 生成分区映射标识。
• 将记录插入下列目录表:
o SYSCAT.DBPARTITIONGROUPS
o SYSCAT.PARTITIONMAPS
o SYSCAT.DBPARTITIONGROUPDEF

    创建数据库时创建的缺省数据库分区组由数据库管理器使用。IBMCATGROUP 是包含系统目录的表空间的缺省数据库分区组,只在主节点上(主数据库分区)。IBMTEMPGROUP 是系统临时表空间的缺省数据库分区组,包含所有数据库分区。
IBMDEFAULTGROUP 是包含用户定义的表的表空间的缺省数据库分区组,包含所有数据库分区。

    通过将表空间放置在多分区数据库分区组中,将该表空间内的所有表划分或分区到该数据库分区组的每个分区中。由此该表空间被创建到了一个数据库分区组中。一旦位于某个数据库分区组中,该表空间就必须保留在该处;而不能更改至另一数据库分区组。CREATE TABLESPACE 语句用于将表空间与数据库分区组关联。

建数据库分区组示例:
CREATE DATABASE PARTITION GROUP MAXGROUP ON ALL DBPARTITIONNUMS
CREATE DATABASE PARTITION GROUP MEDGROUP ON DBPARTITIONNUMS( 0 TO 2, 5,
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表