国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

為DB2數(shù)據(jù)庫(kù)創(chuàng)建表空間過(guò)程

瀏覽:6日期:2023-11-07 19:05:16

DB2數(shù)據(jù)庫(kù)中的表空間(tablespace) 是一個(gè)邏輯層,一些數(shù)據(jù)庫(kù)對(duì)象(比如表、視圖和索引)駐留在這里。一個(gè)數(shù)據(jù)庫(kù)可以有多個(gè)表空間。在首次創(chuàng)建數(shù)據(jù)庫(kù)時(shí),DB2 會(huì)自動(dòng)地創(chuàng)建一組表空間。

在 Control Center 中,展開(kāi) HELLOWLD 并點(diǎn)擊 Table Spaces。應(yīng)該會(huì)在 Control Center 右邊的窗口中看到三個(gè)表空間,如圖 7 所示:

圖 7. Control Center Table Spaces 視圖

為DB2數(shù)據(jù)庫(kù)創(chuàng)建表空間過(guò)程

這些表空間是 DB2 在創(chuàng)建數(shù)據(jù)庫(kù) HWLD 時(shí)創(chuàng)建的。SYSCATSPACE 和 TEMPSPACE1 都是系統(tǒng)表空間,不能刪除或重新創(chuàng)建它們。SYSCATSPACE 是系統(tǒng)編目表空間,用來(lái)存儲(chǔ)關(guān)于數(shù)據(jù)庫(kù)的元信息。TEMPSPACE1 在某些數(shù)據(jù)庫(kù)操作期間用來(lái)存儲(chǔ)臨時(shí)結(jié)果。USERSPACE1 是默認(rèn)的用戶表空間,用來(lái)存儲(chǔ)表、視圖和索引等用戶數(shù)據(jù)。任何具有足夠權(quán)力的 DB2 用戶都可以刪除和重新創(chuàng)建 USERSPACE1 或者創(chuàng)建其他用戶表空間。

SMS 或 DMS 表空間

在創(chuàng)建表空間時(shí),可以選擇表空間是 SMS 表空間還是 DMS 表空間。SMS 代表 System Managed Space,DMS 代表 Database Managed Space。在 SMS 表空間中,空間由操作系統(tǒng)的文件系統(tǒng)管理,會(huì)根據(jù)需要分配空間。SMS 表空間需要的初始設(shè)置比較少,管理方面需要考慮的因素少,而且一般更容易創(chuàng)建和使用,因?yàn)榭臻g會(huì)在需要時(shí)自動(dòng)地分配。在 DMS 表空間中,空間由 DB2 管理。DMS 表空間需要在創(chuàng)建時(shí)預(yù)先分配空間,所以需要進(jìn)行比較多的初始設(shè)置工作,管理方面也有更多需要考慮的因素。但是,它為用戶提供了更大的靈活性,可以更好地控制數(shù)據(jù)的布局并改進(jìn)數(shù)據(jù)訪問(wèn)的性能。在一般情況下,經(jīng)過(guò)良好設(shè)計(jì)和調(diào)優(yōu)的 DMS 表空間可以提供比相似的 SMS 表空間更好的性能。

在 Table Spaces 視圖中,點(diǎn)擊每個(gè)表空間。查看在右下方的窗口中顯示的詳細(xì)信息。SYSCATSPACE 和 USERSPACE1 都是 DMS 表空間,TEMPSPACE1 是 SMS 表空間。您還可以創(chuàng)建自己的表空間。

緩沖池

緩沖池(bufferpool) 是一個(gè)內(nèi)存塊的集合,這些內(nèi)存塊采用頁(yè)面的形式。在首次創(chuàng)建數(shù)據(jù)庫(kù)時(shí),同時(shí)創(chuàng)建了一個(gè)默認(rèn)的緩沖池 IBMDEFAULTBP。可以在創(chuàng)建表空間時(shí),或者在 Buffer Pools 視圖中使用 Create New Bufferpool 向?qū)В瑒?chuàng)建新的緩沖池。

緩沖池最重要的作用是,在數(shù)據(jù)庫(kù)讀寫(xiě)硬盤上的數(shù)據(jù)時(shí)幫助減少 I/O 開(kāi)銷。這是通過(guò) I/O 預(yù)獲取和頁(yè)面清理器實(shí)現(xiàn)的。預(yù)獲取能夠減少讀取頁(yè)面的 I/O 開(kāi)銷,其原理是:預(yù)先判斷特定查詢可能需要的頁(yè)面,然后將這些頁(yè)面讀入緩沖池,因此當(dāng)查詢需要它們時(shí),它們已經(jīng)準(zhǔn)備好了。頁(yè)面清理器確保將事務(wù)不再需要的已經(jīng)更新的頁(yè)面首先寫(xiě)到硬盤上,然后從緩沖池中清除它們。這確保緩沖池中有足夠的干凈空間可以讀取頁(yè)面。

DB2 支持不同的頁(yè)面大小:2K、4K、8K、16K 和 32K。IBMDEFAULTBP 使用 4K 的頁(yè)面大小。如果希望創(chuàng)建采用其他頁(yè)面大小的表空間,那么首先要確保數(shù)據(jù)庫(kù)中有采用這種頁(yè)面大小的緩沖池。多個(gè)表空間可以使用同一個(gè)緩沖池。在創(chuàng)建或更改表空間時(shí),可以指定要使用哪個(gè)緩沖池。選擇和創(chuàng)建適當(dāng)?shù)木彌_池對(duì)于數(shù)據(jù)庫(kù)性能很重要。可以根據(jù)需要?jiǎng)?chuàng)建新的緩沖池或更改現(xiàn)有的緩沖池。

在 Control Center 中,點(diǎn)擊 Buffer Pools。可以看到數(shù)據(jù)庫(kù)中的所有緩沖池。選擇創(chuàng)建新的緩沖池或更改現(xiàn)有的緩沖池。

圖 8. Control Center Bufferpool 視圖

DB2 系統(tǒng)目錄表和視圖

在創(chuàng)建新數(shù)據(jù)庫(kù)時(shí),DB2 會(huì)在編目表空間中創(chuàng)建多個(gè)系統(tǒng)編目表和視圖。這些系統(tǒng)編目表和視圖用來(lái)跟蹤數(shù)據(jù)庫(kù)管理程序需要知道的關(guān)于數(shù)據(jù)庫(kù)對(duì)象、訪問(wèn)控制信息和工具的重要信息。系統(tǒng)編目視圖基于基本系統(tǒng)編目表。用戶在一般情況下通過(guò)查詢系統(tǒng)編目視圖來(lái)查看感興趣的系統(tǒng)編目表數(shù)據(jù)。

在 Control Center 中,在 All Database 視圖下面,展開(kāi) HELLOWLD,然后選擇 Table Spaces。選擇右上窗口中顯示的 SYSCATSPACE。可以在右下窗口中看到這個(gè)表空間的概況:

圖 9. Control Center —— Tablespaces 視圖

點(diǎn)擊 Show Related Objects。會(huì)出現(xiàn)一個(gè)新頁(yè)面,其中顯示表空間 SYSCATSPACE 中的所有表和索引,以及它們的模式 SYSIBM。點(diǎn)擊 Indexes,列出 SYSCATSPACE 中的所有索引。Show SQL 顯示用來(lái)獲得這個(gè)表空間中的表或索引列表的 select 命令。

表、索引、模式和視圖都是重要的 DB2 對(duì)象,本教程后面都會(huì)詳細(xì)討論。但是,首先試試手工創(chuàng)建表空間:

在 Control Center 中點(diǎn)擊 Create New Tablespace,啟動(dòng) Create Table Space 向?qū)А]斎?TBSP_DATA1 作為表空間名,在 comment 中輸入 DMS tablespace to hold data。 選擇 Regular 來(lái)選擇要使用的表空間類型并點(diǎn)擊 Next。出現(xiàn) Specify a buffer pool 面板,在這里選擇這個(gè)表空間要使用的緩沖池。 使用默認(rèn)的 IBM 緩沖池,但是也可以使用 Create 按鈕創(chuàng)建新的緩沖池。點(diǎn)擊 Next。

圖 10. 創(chuàng)建新的表空間 —— 指定緩沖池

4. 這個(gè)面板允許指定表空間是由數(shù)據(jù)庫(kù)管理(DMS),還是由系統(tǒng)管理(SMS)。選擇 Database-managed space (high performance)。點(diǎn)擊 Next。Containers 頁(yè)面出現(xiàn)。

5. 在 Containers 頁(yè)面上,可以指定容器的數(shù)量。容器(Container) 可以是存儲(chǔ)表空間數(shù)據(jù)的目錄、文件或設(shè)備。可以為每個(gè)表空間創(chuàng)建多個(gè)容器,而且在創(chuàng)建表空間之后,可以刪除現(xiàn)有的容器或添加更多的容器。點(diǎn)擊 Add,Define Container 頁(yè)面出現(xiàn),可以在這里為新的表空間定義容器。

6. 可以為新的表空間定義多個(gè)容器。不同的容器可以位于不同的物理節(jié)點(diǎn)或路徑。按照?qǐng)D 11 所示添加容器,然后點(diǎn)擊 OK。

圖 11. 創(chuàng)建新的表空間 —— 添加容器

7. 用相同的操作添加相同路徑上的另一個(gè)容器 tbsp_data1_c02。

8. 應(yīng)該會(huì)看到添加的兩個(gè)容器,見(jiàn)圖 12。每個(gè)容器的大小是 5MB,總共 10MB。如果對(duì)已經(jīng)定義的容器不滿意,那么點(diǎn)擊 Change 或 Remove。點(diǎn)擊 Next 繼續(xù)。

圖 12. 創(chuàng)建新的表空間 —— 容器頁(yè)面

9. 下一個(gè)頁(yè)面幫助您定義這個(gè)表空間使用的區(qū)間和預(yù)獲取大小。一個(gè)區(qū)間(extent)包含一系列連續(xù)的頁(yè)面。頁(yè)面的數(shù)量稱為區(qū)間的大小。一般來(lái)說(shuō),希望一次分配多個(gè)頁(yè)面,從而減少空間分配的開(kāi)銷。預(yù)獲取大小是指在啟用預(yù)獲取時(shí)預(yù)獲取器讀取的頁(yè)面數(shù)量。預(yù)獲取的概念在前面討論過(guò)。選擇 Less than 25MB 來(lái)改變表的平均大小,建議的區(qū)間大小會(huì)自動(dòng)地改為適當(dāng)?shù)脑O(shè)置。

10. 點(diǎn)擊 Summary 顯示 Summary 頁(yè)面。點(diǎn)擊 Show SQL 并將 SQL 保存在 C:DB2hellowldcrt_tbsp.clp 中。點(diǎn)擊 Finish 讓 Create Tablespace 向?qū)瓿刹僮鳌?/p>

11. 在 Control Center Table Spaces 視圖中,應(yīng)該能夠找到新的表空間 TBSP_DATA1。如果對(duì)新創(chuàng)建的表空間 TBSP_DATA1 不完全滿意,那么點(diǎn)擊 Alter Tablespace 來(lái)修改這個(gè)表空間。如果希望創(chuàng)建 SMS 表空間,那么點(diǎn)擊 Create New Tablespace。

圖 13. Control Center —— Tablespace 視圖

12. 將索引、大對(duì)象(Large Object,LOB)和大字段(Long Field,LF)或 XML 數(shù)據(jù)與表數(shù)據(jù)分開(kāi)存儲(chǔ)是有好處的。但是,在本教程中沒(méi)有 LOB/LF 數(shù)據(jù),所以不需要為它們創(chuàng)建表空間。XML 數(shù)據(jù)存儲(chǔ)在與其他數(shù)據(jù)相同的表空間 TBSP_DATA1 中,所以也不需要為它創(chuàng)建表空間。后面幾節(jié)將討論索引。

13. 在 DB2 命令行上,輸入 cd C:DB2HELLOWLD 來(lái)創(chuàng)建表空間。如果目錄 HELLOWLD 還不存在,需要首先創(chuàng)建它。然后,運(yùn)行以下命令 notepad crt_tbsp.clp。在 notepad 中,編輯 Create Tablespace 語(yǔ)句,將它改為以下代碼: CREATE LARGE TABLESPACE TBSP_INDEX1 PAGESIZE 4 K MANAGED BY DATABASE USING

(FILE 'C:DB2NODE0000hellowlddbdirtbsp_index1_c01' 5120,

FILE 'C:DB2NODE0000hellowlddbdirtbsp_index1_c02' 5120)

EXTENTSIZE 8 OVERHEAD 10.5 PREFETCHSIZE 8 TRANSFERRATE 0.14 BUFFERPOOL IBMDEFAULTBP;

14. 將 COMMENT 語(yǔ)句改為: COMMENT ON TABLESPACE TBSP_INDEX1 IS 'tablespace to hold index data';

現(xiàn)在 crt_tbsp.clp 中的命令應(yīng)該是下面這樣:CONNECT TO HELLOWLD; CREATE LARGE TABLESPACE TBSP_INDEX1 PAGESIZE 4 K MANAGED BY DATABASE USING (FILE 'C:DB2NODE0000hellowlddbdirtbsp_index1_c01' 5120, FILE 'C:DB2NODE0000hellowlddbdirtbsp_index1_c02' 5120 ) EXTENTSIZE 8 OVERHEAD 10.5 PREFETCHSIZE 16 TRANSFERRATE 0.14 BUFFERPOOL IBMDEFAULTBP ; COMMENT ON TABLESPACE TBSP_INDEX1 IS 'tablespace to hold index data'; CONNECT RESET; 15. 保存并退出 notepad。

16. 在 DB2 命令行窗口中運(yùn)行 db2 -tvf crt_tbsp.clp 命令,應(yīng)該會(huì)看到成功地創(chuàng)建了這個(gè)表空間。DB2 命令行選項(xiàng) -tvf 允許運(yùn)行來(lái)自文件的 DB2 命令。

17. 進(jìn)入 Control Center,點(diǎn)擊 Control Center 主菜單中的 Selected,然后點(diǎn)擊下拉菜單中的 Refresh,查看到目前為止創(chuàng)建的所有表空間。

標(biāo)簽: DB2 數(shù)據(jù)庫(kù)
相關(guān)文章:
主站蜘蛛池模板: 在线观看一区二区三区四区 | 免费播放欧美毛片欧美aaaaa | baby在线观看免费观看 | 国产欧美日韩综合精品一区二区 | 性做久久久久久久免费观看 | 日本免费高清一区 | 国产成人免费网站在线观看 | 美女网站色免费 | 国产成人精品免费视频网页大全 | 久久亚洲精品中文字幕三区 | 欧美国产日韩久久久 | 99在线免费 | 波多野结衣在线观看免费区 | 成人a一级毛片免费看 | 国产免费a级片 | 成年人网站免费视频 | 久久精品国产一区二区三区不卡 | 欧美黄色成人 | 自拍视频在线观看视频精品 | 国产高清一级毛片在线不卡 | 九九在线观看精品视频6 | 韩国精品一区二区三区四区五区 | 日本三级午夜 | 欧美日韩综合精品一区二区三区 | 久久久久18 | 亚洲国产成人久久综合一区 | 亚洲欧美另类专区 | 国产r67194吃奶视频 | 嫩草影院成人 | 欧美成人免费午夜影视 | 97国产成人精品免费视频 | 99热久久国产精品一区 | 国产成人免费在线 | 美女美女大片黄a大片 | 亚洲精品国精品久久99热 | 天干天干天啪啪夜爽爽色 | 99国产精品九九视频免费看 | 一区二区三区在线播放 | 91无套极品外围在线播放 | 亚洲国产日韩成人综合天堂 | 国产一线视频在线观看高清 |