程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> DB2數據庫從其他系統遷移到LINUX上的實例講解(1)

DB2數據庫從其他系統遷移到LINUX上的實例講解(1)

編輯:DB2教程

本文為您介紹了DB2數據庫從AIX系統遷移到LINUX的詳細方法進行介紹,對在AIX系統上的操作和在Linux上的操作進行了分別說明,供您參考。

假設我們有一個IBM DB2數據庫,這個數據庫裡有很多表(可能上百張甚至更多),又有很多索引、外鍵約束、觸發器。最要命的是還有一些含有自增字段的表(含有GENERATED ALWAYS AS IDENTITY定義的字段的表)。我們也沒有關於這些數據庫對象的准確創建腳本(筆者經常碰到客戶有這種情況)。

現在我們要把這個數據庫遷移到不同的操作系統(比如從AIX到Linux),我們應該怎麼辦呢?因為操作系統不同,所以使用BACKUP/RESTORE命令顯然是不行了。那麼是不是可以使用db2move命令呢?也不行,首先db2move命令沒有辦法遷移索引、外鍵約束、觸發器,更不能遷移含自增字段數據的表。那麼對每張表都進行export/import操作?天哪,這簡直是一場災難,幾百張表要做到什麼時候啊,更何況import命令並不能保證自增字段的數據和原來一模一樣!下面筆者提供一種方案,感覺還是比較奏效的

假設數據庫名為sample,運行在AIX上,我們的目標是遷移到Linux上。為簡單起見,所有數據庫對象都在DB2INST1模式下,db2inst1用戶擁有必須的所有權限,密碼也是db2inst1

(一)AIX系統上的操作:

1) 首先我們用db2look命令得到數據庫對象的DDL腳本:

db2look -d SAMPLE -z DB2INST1 -e -o sample.ddl -i db2inst1 -w db2inst1

2) 使用文本編輯器編輯生成的sample.ddl,將創建表及索引的腳本語句,創建外鍵約束的語句,創建觸發器的語句分開,制作成三個DDL腳本,分別是

sample_tabs.ddl

sample_forIEgnkeys.ddl

sample_triggers.ddl

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