DB2 V9表分割槽(二)

rheet1978發表於2008-07-21
建立示例資料庫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

 

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9524210/viewspace-405455/,如需轉載,請註明出處,否則將追究法律責任。

相關文章