
7. 在比較嚮導中選擇 Schema 行,點擊比較嚮導中的 Copy from Left to Right 按鈕,您會看到 Schema 下的所有表和其它想關聯的對象 (Buffer Pools 和 Table Spaces) 都從源數據庫拷貝到目標數據庫,請參考圖 15:
圖 15. 源數據庫和目標數據庫同步後的比較嚮導

8. 點擊
比較嚮導中的 Finish 按鈕,將會返回到目標數據庫連接的 Schema 的編輯視圖,並且 Data Studio 將為此次遷移生成一個 Change Plan,點擊視圖右上方綠色的 Review and deloy changes 按鈕。您將會看到預覽部署的對話框彈出,並顯示遷移的 DDL,請參考下圖 16:
圖 16. 產生遷移操作 DDL 的部署預覽視圖

從生成的 DDL 中可看出 Schema 下的表和相關的 TableSpaces 及 BufferPools 都將會在目標數據庫上創建,同時 DDL 中也包含了一些 Grant 語句和表的 Reorg 語句,但是由於一般都會由具有權限的實例用戶執行這些操作,又由於目前只是遷移表結構,不需要對錶進行 Reorg 操作,所以我們可以在執行 DDL 之前去掉這些 Grant 和 Reorg 語句。
9. 點擊 Edit 按鈕編輯產生的 DDL,會打開 SQL 編輯器,在 SQL 編輯器中刪除產生的 Grant 語句和 Reorg 語句,用戶也可以點擊預覽部署對話框右上方的 Advanced Options 按鈕來定製是否產生 Reorg 語句。然後點擊 SQL 編輯器右上方綠色的 Run Sql 按鈕,我們可以在 Status 視圖中看到遷移操作的 DDL 被成功的執行。請參考圖 17:
圖 17. 在 SQL 編輯器中運行編輯生成的 DDL

10. 此時,我們需要做一下清理工作,由於剛才我們並沒有執行為遷移操作產生的 Chang Plan,它處於 Pending 的狀態,我們是轉到了 SQL 編輯器中成功執行了遷移操作。我們最好取消掉這個還未執行的 Change Plan。返回到目標數據庫連接的 Schema 的列表編輯器視圖,點擊視圖右上角紅色的 X 按鈕(Close Change Plan),在彈出的確認關閉對話框中選擇 Discard 就可以了,當然如果我們在 DDL 的部署預覽視圖中直接點擊 Run 按鈕而不進入 SQL Editor 來執行 DDL,那麼這個 Change plan 就會處於 Deployed 狀態而不是 Pending 的狀態了。
實例 2 操作總結:
1. 在用遷移嚮導在不同的 Schema 之間遷移數據庫對象時,一定要在嚮導中做 Schema 映射,相同的 Schema 之間不需要映射操作。
2. 在用遷移嚮導做數據對象的遷移和實際數據的遷移時,我們很有可能需要修改生成的 DDL, 尤其是當兩個數據庫不在同一個物理機器上時,因為 Data Studio 是管理操作數據庫,它不會去管理數據庫所在的服務器。比如,當兩台機器的環境不同,在源數據庫服務器上的要遷移的表空間用到了容器 /home/db2inst1/tabspace.dat, 在遷移時 Data Studio 產生同樣的表空間創建語句,而很有可能目標數據庫的連接用戶並沒有權限去在目標服務器上創建或訪問這個容器指定的目錄,對此 Data Studio 是無法判斷的。

實例三: 在多分區數據庫上的分區組上創建表空間。
本實例講解使用 Data Studio 在一個 DB2 多分區數據庫的分區組 (partition group) 上創建表空間,並將指定表空間在不同分區上的容器。
環境介紹:
筆者事先搭建了一個有 4 個分區的 DB2 數據庫,分區 0 和 1 位於機器 A, 分區 2 和 3 位於機器 B。數據庫服務器都為 Linux 機器,數據庫的名稱為 UOMDB。
操作步驟:
1. 在 Data Studio 中為數據庫 UOMDB 創建一個數據庫連接,在 Administrator Explorer 視圖,展開數據庫 UOMDB 節點,右鍵點擊文件夾 Partition Groups,選擇 Create Partition Group,如下圖 18:
圖 18. 從 Administrator Explorer 視圖中創建分區組

2. 分區組的列表編輯器視圖和屬性視圖會被打開,在打開的屬性視圖中,選擇 General 頁面,給新的分區組命名為 PG1,點擊 Partitions 文本框右邊的 Edit 按鈕,然後在彈出的嚮導中添加分區 0 和 1 和 2。請參考下圖 19:
圖 19. 編輯分區組
以下文章點擊率最高
Loading…