程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> DB2 表空間簡單說明

DB2 表空間簡單說明

編輯:關於PHP編程

DB2 表空間簡單說明


一、新建測試庫:

[db2inst2@localhost shell]$ db2 "create database ghan on /db2inst2/db2inst2 using codeset utf-8 territory cn collate using system"
DB20000I CREATE DATABASE 命令成功完成。

[db2inst2@localhost shell]$ db2 connect to ghan


數據庫連接信息


數據庫服務器 = DB2/LINUXX8664 9.7.5
SQL 授權標識 = DB2INST2
本地數據庫別名 = GHAN


[db2inst2@localhost shell]$




二、新建緩沖池:

[db2inst2@localhost shell]$ db2 "create bufferpool bp32k pagesize 32k"
DB20000I SQL 命令成功完成。
[db2inst2@localhost shell]$


db2inst2@localhost ~]$ db2 "SELECT * FROM SYSCAT.BUFFERPOOLS"


BPNAME BUFFERPOOLID DBPGNAME NPAGES PAGESIZE ESTORE NUMBLOCKPAGES BLOCKSIZE NGNAME
-------------------------------------------------------------------------------------------------------------------------------- ------------ -------------------------------------------------------------------------------------------------------------------------------- ----------- ----------- ------ ------------- ----------- --------------------------------------------------------------------------------------------------------------------------------
IBMDEFAULTBP 1 - -2 4096 N 0 0 -
BP32K 2 - -2 32768 N 0 0 -


2 條記錄已選擇。



三、新建數據庫管理(DMS)大表空間

[db2inst2@localhost shell]$ db2 -tsvf create_tabs.sql
create large tablespace tbs_data pagesize 32k managed by database using (file '/db2inst2/data_tb/cont0' 100M, file '/db2inst2/data_tb/cont1' 100M) EXTENTSIZE 32 prefetchsize automatic bufferpool bp32k no file system caching
DB20000I SQL 命令成功完成。

[db2inst2@localhost shell]$ cd /db2inst2/data_tb/
[db2inst2@localhost data_tb]$ ll
總計 205008
-rw------- 1 db2inst2 db2inst2 104857600 10-20 08:48 cont0
-rw------- 1 db2inst2 db2inst2 104857600 10-20 08:48 cont1
[db2inst2@localhost data_tb]$


1、重設DMS表空間大小
alter tablespace tbs_data extend (file '/db2inst2/data_tb/cont0' 100M, file '/db2inst2/data_tb/cont1' 500M)

四、新建臨時表空間


[db2inst2@localhost shell]$ db2 "create temporary tablespace tbs_temp pagesize 32k managed by system using ('/db2inst2/data_tb/tab_temp') bufferpool bp32k"
DB20000I SQL 命令成功完成。
[db2inst2@localhost shell]$

[db2inst2@localhost tab_temp]$ db2 "create user temporary tablespace tbs_usertemp pagesize 32k managed by system using ('/db2inst2/data_tb/tab_usertemp') bufferpool bp32k"
DB20000I SQL 命令成功完成。
[db2inst2@localhost tab_temp]$

五、新建自動管理表空間

[db2inst2@localhost tab_temp]$ db2 "create tablespace tab_data2 initialsize 100M increasesize 100M MAXSIZE 10G"
DB20000I SQL 命令成功完成。
[db2inst2@localhost tab_temp]$
[db2inst2@localhost tab_temp]$ db2 "create tablespace tab_data3 pagesize 32k bufferpool bp32k"
DB20000I SQL 命令成功完成。
[db2inst2@localhost tab_temp]$

六、新建DMS管理表空間

CREATE TABLESPACE tab_sp4 MANAGED BY DATABASE USING (FILE '/db2inst2/data_tb/tab_sp4' 100M)

七、添加數據庫層自動管理存儲

[db2inst2@localhost autodb]$ db2 "alter database ghan add storage on '/db2inst2/autodb'"
DB20000I SQL 命令成功完成。
[db2inst2@localhost autodb]$ db2pd -d ghan -storagepaths




八、將DMS表空間修改來自動存儲管理表空間


[db2inst2@localhost T0000008]$ db2 " ALTER TABLESPACE tab_sp4 MANAGED BY AUTOMATIC STORAGE"
DB20000I SQL 命令成功完成。
[db2inst2@localhost T0000008]$ db2 "alter tablespace tab_sp4 rebalance"
DB20000I SQL 命令成功完成。
[db2inst2@localhost T0000008]$ db2pd -d ghan -tablespaces


[db2inst2@localhost ~]$ db2pd -d ghan -tablespaces


Database Partition 0 -- Database GHAN -- Active -- Up 0 days 00:00:05 -- Date 10/22/2015 03:02:24


Tablespace Configuration:
Address Id Type Content PageSz ExtentSz Auto Prefetch BufID BufIDDisk FSC NumCntrs MaxStripe LastConsecPg Name
0x00002B810664E400 0 DMS Regular 4096 4 Yes 4 1 1 Off 1 0 3 SYSCATSPACE
0x00002B810664FB80 1 SMS SysTmp 4096 32 Yes 64 1 1 On 2 0 31 TEMPSPACE1
0x00002B81066534C0 2 DMS Large 4096 32 Yes 32 1 1 Off 1 0 31 USERSPACE1
0x00002B8106654C40 3 DMS Large 4096 4 Yes 4 1 1 Off 1 0 3 SYSTOOLSPACE
0x00002B81066563C0 4 DMS Large 32768 32 Yes 64 2 2 Off 2 0 31 TBS_DATA
0x00002B8106657D40 5 SMS SysTmp 32768 32 Yes 32 2 2 On 1 0 31 TBS_TEMP
0x00002B810665B480 6 SMS UsrTmp 32768 32 Yes 32 2 2 On 1 0 31 TBS_USERTEMP
0x00002B810665EBC0 7 DMS Large 4096 32 Yes 64 1 1 Off 2 0 31 TAB_DATA2
0x00002B8106660540 8 DMS Large 32768 32 Yes 64 2 2 Off 2 0 31 TAB_DATA3
0x00002B8106661EC0 9 DMS Large 4096 32 Yes 64 1 1 Off 2 0 31 TAB_SP4


Tablespace Statistics:
Address Id TotalPgs UsablePgs UsedPgs PndFreePgs FreePgs HWM Max HWM State MinRecTime NQuiescers PathsDropped
0x00002B810664E400 0 24576 24572 22884 0 1688 22884 22884 0x00000000 0 0 No
0x00002B810664FB80 1 2 2 2 0 0 0 0 0x00000000 0 0 No
0x00002B81066534C0 2 8192 8160 96 0 8064 96 96 0x00000000 0 0 No
0x00002B8106654C40 3 8192 8188 152 0 8036 152 152 0x00000000 0 0 No
0x00002B81066563C0 4 6400 6336 96 0 6240 96 96 0x00000000 0 0 No
0x00002B8106657D40 5 1 1 1 0 0 0 0 0x00000000 0 0 No
0x00002B810665B480 6 1 1 1 0 0 0 0 0x00000000 0 0 No
0x00002B810665EBC0 7 51200 51136 96 0 51040 96 96 0x00000000 0 0 No
0x00002B8106660540 8 2048 1984 96 0 1888 96 96 0x00000000 0 0 No
0x00002B8106661EC0 9 256 192 96 0 96 96 96 0x00000000 0 0 No


Tablespace Autoresize Statistics:
Address Id AS AR InitSize IncSize IIP MaxSize LastResize LRF
0x00002B810664E400 0 Yes Yes 33554432 -1 No None None No
0x00002B810664FB80 1 Yes No 0 0 No 0 None No
0x00002B81066534C0 2 Yes Yes 33554432 -1 No None None No
0x00002B8106654C40 3 Yes Yes 33554432 -1 No None None No
0x00002B81066563C0 4 No No 0 0 No 0 None No
0x00002B8106657D40 5 No No 0 0 No 0 None No
0x00002B810665B480 6 No No 0 0 No 0 None No
0x00002B810665EBC0 7 Yes Yes 104857600 104857600 No 10737418240 None No
0x00002B8106660540 8 Yes Yes 33554432 -1 No None None No
0x00002B8106661EC0 9 Yes Yes 786432 -1 No None None No


Containers:
Address TspId ContainNum Type TotalPgs UseablePgs PathID StripeSet Container
0x00002B810664F940 0 0 File 24576 24572 0 0 /db2inst2/db2inst2/db2inst2/NODE0000/GHAN/T0000000/C0000000.CAT
0x00002B8106651060 1 0 Path 1 1 0 0 /db2inst2/db2inst2/db2inst2/NODE0000/GHAN/T0000001/C0000000.TMP
0x00002B8106651270 1 1 Path 1 1 1 0 /db2inst2/autodb/db2inst2/NODE0000/GHAN/T0000001/C0000001.TMP
0x00002B8106654A00 2 0 File 8192 8160 0 0 /db2inst2/db2inst2/db2inst2/NODE0000/GHAN/T0000002/C0000000.LRG
0x00002B8106656180 3 0 File 8192 8188 0 0 /db2inst2/db2inst2/db2inst2/NODE0000/GHAN/T0000003/C0000000.LRG
0x00002B8106657900 4 0 File 3200 3168 - 0 /db2inst2/data_tb/cont0
0x00002B8106657B10 4 1 File 3200 3168 - 0 /db2inst2/data_tb/cont1
0x00002B8106659220 5 0 Path 1 1 - 0 /db2inst2/data_tb/tab_temp
0x00002B810665C960 6 0 Path 1 1 - 0 /db2inst2/data_tb/tab_usertemp
0x00002B8106660100 7 0 File 25600 25568 0 0 /db2inst2/db2inst2/db2inst2/NODE0000/GHAN/T0000007/C0000000.LRG
0x00002B8106660310 7 1 File 25600 25568 1 0 /db2inst2/autodb/db2inst2/NODE0000/GHAN/T0000007/C0000001.LRG
0x00002B8106661A80 8 0 File 1024 992 0 0 /db2inst2/db2inst2/db2inst2/NODE0000/GHAN/T0000008/C0000000.LRG
0x00002B8106661C90 8 1 File 1024 992 1 0 /db2inst2/autodb/db2inst2/NODE0000/GHAN/T0000008/C0000001.LRG
0x00002B8106663400 9 0 File 128 96 0 0 /db2inst2/db2inst2/db2inst2/NODE0000/GHAN/T0000009/C0000000.LRG
0x00002B8106663610 9 1 File 128 96 1 0 /db2inst2/autodb/db2inst2/NODE0000/GHAN/T0000009/C0000001.LRG




九、關於表空間quiesce測試

[db2inst2@localhost ~]$ db2 quiesce tablespaces FOR table empl share
DB20000I QUIESCE TABLESPACES 命令成功完成

[db2inst2@localhost ~]$ db2 -tsvf create-tm.sql
CREATE TABLE EMPLdd (ENO INTEGER, LASTNAME VARCHAR(30),HIREDATE DATE, SALARY INTEGER) IN TAB_SP4
DB21034E 該命令被當作 SQL
語句來處理,因為它是無效的“命令行處理器”命令。在 SQL
處理期間,它返回:
SQL0290N 不允許訪問表空間。 SQLSTATE=55039




表空間標識 = 9
名稱 = TAB_SP4
類型 = 數據庫管理空間
內容 = 所有持久數據。大型表空間。
狀態 = 0x0001
詳細解釋:
已停頓:SHARE
總計頁數 = 8448
可用頁數 = 8384
已用頁數 = 5504
可用頁數 = 2880
高水位標記(頁) = 5504
頁大小(以字節計) = 4096
擴展數據塊大小(頁) = 32
預取大小(頁) = 64
容器數 = 2
停頓者的數目 = 1
停頓者 1 :
表空間標識 = 9
對象標識 = 4



[db2inst2@localhost ~]$ db2 quiesce tablespaces FOR table empl reset
DB20000I QUIESCE TABLESPACES 命令成功完成。
[db2inst2@localhost ~]$ db2 -tsvf create-tm.sql
CREATE TABLE EMPLdd (ENO INTEGER, LASTNAME VARCHAR(30),HIREDATE DATE, SALARY INTEGER) IN TAB_SP4
DB20000I SQL 命令成功完成。


[db2inst2@localhost ~]$

表空間標識 = 9
名稱 = TAB_SP4
類型 = 數據庫管理空間
內容 = 所有持久數據。大型表空間。
狀態 = 0x0000
詳細解釋:
正常
總計頁數 = 8448
可用頁數 = 8384
已用頁數 = 5568
可用頁數 = 2816
高水位標記(頁) = 5568
頁大小(以字節計) = 4096
擴展數據塊大小(頁) = 32
預取大小(頁) = 64
容器數 = 2

[db2inst2@localhost ~]$ db2 drop table empl
DB20000I SQL 命令成功完成。
[db2inst2@localhost ~]$ db2 list tablespaces show detail

表空間標識 = 9
名稱 = TAB_SP4
類型 = 數據庫管理空間
內容 = 所有持久數據。大型表空間。
狀態 = 0x0000
詳細解釋:
正常
總計頁數 = 8448
可用頁數 = 8384
已用頁數 = 160
可用頁數 = 8224
高展數據塊大小(頁) = 32
預取大小(頁) = 64
容器數 = 2


[db2inst2@localhost ~]$ db2 "alter tablespace tab_sp4 lower high water mark"
DB20000I SQL 命令成功完成。



表空間標識 = 9
名稱 = TAB_SP4
類型 = 數據庫管理空間
內容 = 所有持久數據。大型表空間。
狀態 = 0x0000
詳細解釋:
正常
總計頁數 = 8448
可用頁數 = 8384
已用頁數 = 160
可用頁數 = 8224
高水位標記(頁) = 160
頁大小(以字節計) = 4096
擴展數據塊大小(頁) = 32
預取大小(頁) = 64
容器數 = 2


水位標記(頁) = 5568
頁大小(以字節計) = 4096


[db2inst2@localhost ~]$ db2 -tsvf showtables
select substr(tbsp_name,1,20) as TABLESPACE_NAME,substr(tbsp_content_type,1,10) as TABLESPACE_TYPE,sum(tbsp_total_size_kb)/1024 as TOTAL_MB,sum(tbsp_used_size_kb)/1024 as USED_MB,sum(tbsp_free_size_kb)/1024 as FREE_MB,tbsp_page_size AS PAGE_SIZE from SYSIBMADM.TBSP_UTILIZATION group by tbsp_name,tbsp_content_type,tbsp_page_size order by 1


TABLESPACE_NAME TABLESPACE_TYPE TOTAL_MB USED_MB FREE_MB PAGE_SIZE
-------------------- --------------- -------------------- -------------------- -------------------- -----------
SYSCATSPACE ANY 96 89 6 4096
SYSTOOLSPACE LARGE 32 0 31 4096
TAB_DATA2 LARGE 200 0 199 4096
TAB_DATA3 LARGE 64 3 59 32768
TAB_SP4 LARGE 33 0 32 4096
TBS_DATA LARGE 200 3 195 32768
TBS_TEMP SYSTEMP 0 0 0 32768
TBS_USERTEMP USRTEMP 0 0 0 32768
TEMPSPACE1 SYSTEMP 0 0 0 4096
USERSPACE1 LARGE 32 0 31 4096


10 條記錄已選擇。
[db2inst2@localhost ~]$ db2 -tsvf insert.sql
INSERT INTO EMPL WITH DT(ENO) AS (VALUES(1) UNION ALL SELECT ENO+1 FROM DT WHERE ENO < 500000 ) SELECT ENO, TRANSLATE(CHAR(INTEGER(RAND()*1000000)), CASE MOD(ENO,4) WHEN 0 THEN 'aeiou' || 'bcdfg' WHEN 1 THEN 'aeiou' || 'hjklm' WHEN 2 THEN 'aeiou' || 'npqrs' ELSE 'aeiou' || 'twxyz' END, '1234567890') AS LASTNAME, CURRENT DATE - (RAND()*10957) DAYS AS HIREDATE, INTEGER(10000+RAND()*200000) AS SALARY FROM DT
DB21034E 該命令被當作 SQL
語句來處理,因為它是無效的“命令行處理器”命令。在 SQL
處理期間,它返回:
SQL0289N 未能在表空間 "TBS_DATA" 中分配新頁面。 SQLSTATE=57011

[db2inst2@localhost ~]$ db2 -tsvf showtables
select substr(tbsp_name,1,20) as TABLESPACE_NAME,substr(tbsp_content_type,1,10) as TABLESPACE_TYPE,sum(tbsp_total_size_kb)/1024 as TOTAL_MB,sum(tbsp_used_size_kb)/1024 as USED_MB,sum(tbsp_free_size_kb)/1024 as FREE_MB,tbsp_page_size AS PAGE_SIZE from SYSIBMADM.TBSP_UTILIZATION group by tbsp_name,tbsp_content_type,tbsp_page_size order by 1


TABLESPACE_NAME TABLESPACE_TYPE TOTAL_MB USED_MB FREE_MB PAGE_SIZE
-------------------- --------------- -------------------- -------------------- -------------------- -----------
SYSCATSPACE ANY 96 89 6 4096
SYSTOOLSPACE LARGE 32 0 31 4096
TAB_DATA2 LARGE 200 0 199 4096
TAB_DATA3 LARGE 64 3 59 32768
TAB_SP4 LARGE 33 0 32 4096
TBS_DATA LARGE 200 198 0 32768
TBS_TEMP SYSTEMP 0 0 0 32768
TBS_USERTEMP USRTEMP 0 0 0 32768
TEMPSPACE1 SYSTEMP 0 0 0 4096
USERSPACE1 LARGE 32 0 31 4096


10 條記錄已選擇。
[db2inst2@localhost ~]$

表空間標識 = 4
名稱 = TBS_DATA
類型 = 數據庫管理空間
內容 = 所有持久數據。大型表空間。
狀態 = 0x0000
詳細解釋:
正常
總計頁數 = 6400
可用頁數 = 6336
已用頁數 = 6336
可用頁數 = 0
高水位標記(頁) = 6336
頁大小(以字節計) = 32768
擴展數據塊大小(頁) = 32
預取大小(頁) = 64
容器數 = 2


DMS表空間添加容器:

alter tablespace tbs_data extend (file '/db2inst2/data_tb/cont0' 100M, file '/db2inst2/data_tb/cont1' 500M)


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved