ITPub博客

DB2 V9表分区(二)

原创 作者:rheet1978 时间:2008-07-21 05:40:25 0 删除 编辑
创建示例数据库DB2TEST1

        首先我们在WINDOWS XP环境下安装DB2 ESE V9.1,安装完成后,打开DB2CMD环境,创建示例数据库DB2TEST1。在 DB2 命令窗口中,发出CREATE DATABASE语句,创建示例数据库,具体如清单1所示:

 

- - 清单1. 创建示例数据库DB2TEST1

 

C:\> DB2 CREATE DATABASE DB2TEST1

DB20000I  CREATE DATABASE命令成功完成。

 

 

        这样我们创建了一个示例数据库DB2TEST1。查看其数据库配置参数,数据库代码页是1386,数据库地域是CN,数据库代码集是GBK,具体如清单2所示:

 

- - 清单2. 查看示例数据库DB2TEST1配置参数

 

C:\> db2 get db cfg for db2test1

 

       数据库 db2test1 的数据库配置

 

 数据库配置发行版级别                                    = 0x0b00

 数据库发行版级别                                        = 0x0b00

 

 数据库地域                                              = CN

 数据库代码页                                            = 1386

 数据库代码集                                            = GBK

 数据库国家/地区代码                                    = 86

 数据库整理顺序                                          = UNIQUE

 备用整理顺序                              ( ALT_COLLATE ) =

 数据库页大小                                            = 4096

 

. . . . . . . . . . . . . . . . . .

 

 

        接下来来我们来查看一下示例数据库DB2TEST1上的表空间情况,在DB2CLP窗口中,连上示例数据库DB2TEST1,使用LIST TABLESPACES命令能够看到创建示例数据库时已经默认创建了3个表空间:SYSCATSPACE、TEMPSPACE1、USERSPACE1,其都是使用自动存储管理。具体如清单3所示:

 

- - 清单3. 查看示例数据库DB2TEST1表空间情况

 

C:\> DB2 CONNECT TO DB2TEST1

 

   数据库连接信息

 

 数据库服务器         = DB2 / NT 9.1.0

 SQL 授权标识         = RHETTE

 本地数据库别名       = DB2TEST1

 

C:\> db2 list tablespaces show detail

 

           当前数据库的表空间

 

 表空间标识                        = 0

 名称                       = SYSCATSPACE

 类型                                       = 数据库管理空间

 内容                                = 所有持久数据。常规表空间。

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 8192

 可用页数                            = 8188

 已用页数                            = 7924

 可用页数                            = 264

 高水位标记(页)                    = 7924

 页大小(以字节计)                  = 4096

 扩展数据块大小(页)                = 4

 预取大小(页)                      = 4

 容器数                                  = 1

 

 表空间标识                        = 1

 名称                       = TEMPSPACE1

 类型                                       = 系统管理空间

 内容                                = 系统临时数据

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 1

 可用页数                            = 1

 已用页数                            = 1

 可用页数                            = 不适用

 高水位标记(页)                    = 不适用

 页大小(以字节计)                  = 4096

 扩展数据块大小(页)                = 32

 预取大小(页)                      = 32

 容器数                                  = 1

 

 表空间标识                        = 2

 名称                       = USERSPACE1

 类型                                       = 数据库管理空间

 内容                                = 所有持久数据。大型表空间。

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 8192

 可用页数                            = 8160

 已用页数                            = 96

 可用页数                            = 8064

 高水位标记(页)                    = 96

 页大小(以字节计)                  = 4096

 扩展数据块大小(页)                = 32

 预取大小(页)                      = 32

 容器数                                  = 1

 

 

        接下来我们再查看一下示例数据库的缓冲池情况,在DB2CLP窗口中通过查看系统表SYSIBM.SYSBUFFERPOOLS可以看到,在创建示例数据库时默认创建的的4K页大小缓冲池IBMDEFAULTBP,具体如清单4所示:

--清单 4. 查看默认创建缓冲池情况

 

C:\> DB2 CONNECT TO DB2TEST1

 

   数据库连接信息

 

 数据库服务器         = DB2/NT 9.1.0

 SQL 授权标识         = RHETTE

 本地数据库别名       = DB2TEST1

 

C:\> db2 " select BPNAME , NPAGES from sysibm.sysbufferpools "

 

BPNAME                                      NPAGES

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IBMDEFAULTBP                                  -2

 

  1 条记录已选择。

 

 

        当缓冲池启用了自调整功能时,该特定缓冲池的SYSIBM.SYSBUFFERPOOLS表中的NPAGES字段将设置为 -2。当自调整功能处于禁用状态时,NPAGES字段将设置为缓冲池的当前大小。我们可以在清单4中看到,IBMDEFAULTBP的NPAGES 字段将设置为 -2,由此我们可以确定,IBMDEFAULTBP启用了自调整功能。

 

       下面我们创建32K页大小的示例缓冲池MYBP1,其使用自调整功能(注意其CREATE BUFFERPOOL语句使用了AUTOMATIC),初始大小3.2M,具体如清单5所示:

 

--清单 5 . 创建使用自动自调整功能的示例缓冲池MYBP1

 

C:\> db2 create bufferpool mybp1 immediate size 100  automatic  pagesize 32k

DB20000I  SQL命令成功完成。

 

 

        接下来我们在示例数据库DB2TEST1中创建3个4K页大小的DMS表空间,用来存放示例分区表的数据,名称分别为TABLESPACE1,TABLESPACE2和TABLESPACE3,在DB2CLP窗口中,发出CREATE TABLESPACE命令,其缓冲池使用数据库默认创建的4K页大小的缓冲池IBMDEFAULTBP,具体如清单6所示:

 

- - 清单6 . 创建DMS示例表空间

 

C:\> DB2 CREATE  REGULAR  TABLESPACE TABLESPACE1 PAGESIZE 4 K  MANAGED BY AUTOMATIC STORAGE BUFFERPOOL  IBMDEFAULTBP

DB20000I  SQL命令成功完成。

 

C:\> DB2 CREATE  REGULAR  TABLESPACE TABLESPACE2 PAGESIZE 4 K  MANAGED BY AUTOMATIC STORAGE BUFFERPOOL  IBMDEFAULTBP

DB20000I  SQL命令成功完成。

 

C:\> DB2 CREATE  REGULAR  TABLESPACE TABLESPACE3 PAGESIZE 4 K  MANAGED BY AUTOMATIC STORAGE BUFFERPOOL  IBMDEFAULTBP

DB20000I  SQL命令成功完成。

 

 

        注意,我们在MANAGED BY后面跟的是AUTOMATIC STORAGE,表示新创建的表空间将使用自动存储。如果新建的表空间使用DB2管理存储器(自动存储器),根据要创建的表空间类型不同,其空间管理会有所区别,当其表空间类型是常规或者大型时,将自动创建成数据库管理空间(DMS), 当其表空间类型是系统临时或者用户临时时,将自动创建成系统管理空间(SMS)。使用自动存储,就不再需要担心如何添加容器以及监控容器的增长等,自动存储会自动增加表空间在磁盘和文件系统上的大小。在DB2CLP窗口中输入LIST TABLESPACE命令,你可以看到3个示例表空间TABLESPACE1,TABLESPACE2和TABLESPACE3已经创建成功,其空间管理类型是数据库管理空间,具体如清单7所示:

 

- - 清单7. 查看示例表空间

 

C:\> db2 list tablespaces show detail

 

           当前数据库的表空间

 

 . . . . . . . . . . . . . . . . . . . .

 

 表空间标识                        = 4

 名称                       = TABLESPACE1

 类型                                       = 数据库管理空间

 内容                                = 所有持久数据。常规表空间。

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 8192

 可用页数                            = 8160

 已用页数                            = 96

 可用页数                            = 8064

 高水位标记(页)                    = 96

 页大小(以字节计)                  = 4096

 扩展数据块大小(页)                = 32

 预取大小(页)                      = 32

 容器数                                  = 1

 

 表空间标识                        = 5

 名称                       = TABLESPACE2

 类型                                       = 数据库管理空间

 内容                                = 所有持久数据。常规表空间。

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 8192

 可用页数                            = 8160

 已用页数                            = 96

 可用页数                            = 8064

 高水位标记(页)                    = 96

 页大小(以字节计)                  = 4096

 扩展数据块大小(页)                = 32

 预取大小(页)                      = 32

 容器数                                  = 1

 

 表空间标识                        = 6

 名称                       = TABLESPACE3

 类型                                       = 数据库管理空间

 内容                                = 所有持久数据。常规表空间。

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 8192

 可用页数                            = 8160

 已用页数                            = 96

 可用页数                            = 8064

 高水位标记(页)                    = 96

 页大小(以字节计)                  = 4096

 扩展数据块大小(页)                = 32

 预取大小(页)                      = 32

 容器数                                  = 1

 

        接下来我们创建3个32K页大小的大型表空间,其缓冲池使用我们新创建的示例缓冲池MYBP1,大型表空间的名称分别为:LARGETBS1,LARGETBS2和LARGETBS3。在DB2CLP窗口中,发出CREATE LARGE TABLESPACE命令,具体如清单8所示:

 

- - 清单8. 创建大型示例表空间LARGETBS1,LARGETBS2和LARGETBS3

 

C:\> DB2 CREATE  LARGE  TABLESPACE LARGETBS1 PAGESIZE 32 K  MANAGED BY AUTOMATIC STORAGE BUFFERPOOL  MYBP1

DB20000I  SQL命令成功完成。

 

C:\> DB2 CREATE  LARGE  TABLESPACE LARGETBS2 PAGESIZE 32 K  MANAGED BY AUTOMATIC STORAGE BUFFERPOOL  MYBP1

DB20000I  SQL命令成功完成。

 

C:\> DB2 CREATE  LARGE  TABLESPACE LARGETBS3 PAGESIZE 32 K  MANAGED BY AUTOMATIC STORAGE BUFFERPOOL  MYBP1

DB20000I  SQL命令成功完成。

 

        在DB2CLP窗口中输入LIST TABLESPACE命令,你可以看到3个大型示例表空间LARGETBS1,LARGETBS2和LARGETBS3已经创建成功,其空间管理类型是数据库管理空间,具体如清单9所示:

 

- - 清单9. 查看示例表空间

 

C:\> db2 list tablespaces show detail

 

           当前数据库的表空间

 . . . . . . . . . . . . . . . . . . . .

 

表空间标识                        = 7

 名称                       = LARGETBS1

 类型                                       = 数据库管理空间

 内容                                = 所有持久数据。大型表空间。

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 1024

 可用页数                            = 992

 已用页数                            = 96

 可用页数                            = 896

 高水位标记(页)                    = 96

 页大小(以字节计)                  = 32768

 扩展数据块大小(页)                = 32

 预取大小(页)                      = 32

 容器数                                  = 1

 

 表空间标识                        = 8

 名称                       = LARGETBS2

 类型                                       = 数据库管理空间

 内容                                = 所有持久数据。大型表空间。

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 1024

 可用页数                            = 992

 已用页数                            = 96

 可用页数                            = 896

 高水位标记(页)                    = 96

 页大小(以字节计)                  = 32768

 扩展数据块大小(页)                = 32

 预取大小(页)                      = 32

 容器数                                  = 1

 

 表空间标识                        = 9

 名称                       = LARGETBS3

 类型                                       = 数据库管理空间

 内容                                = 所有持久数据。大型表空间。

 状态                   = 0x0000

   详细解释:

     正常

 总计页数                            = 1024

 可用页数                            = 992

 已用页数                            = 96

 可用页数                            = 896

 高水位标记(页)                    = 96

 页大小(以字节计)                  = 32768

 扩展数据块大小(页)                = 32

 预取大小(页)                      = 32

 容器数                                  = 1

 

 

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2008-06-09

  • 博文量
    84
  • 访问量
    525260