源 DB2 數據庫含數百張表、大量索引/外鍵/觸發器,且有自增列(GENERATED ALWAYS AS IDENTITY)表。無現成準確創建腳本。跨平台(AIX→Linux)無法用 BACKUP/RESTORE;db2move 不支持索引/外鍵/觸發器/自增列;逐表 export/import 不現實且無法保證自增列一致性。本文提供經驗證有效方案。
sample,運行於 AIX,目標遷移至 Linux。DB2INST1 模式,用戶 db2inst1 擁有全權限,密碼同用戶名。db2look 獲取對象 DDL:
db2look -d SAMPLE -z DB2INST1 -e -o sample.ddl -i db2inst1 -w db2inst1sample.ddl 為三個腳本:
sample_tabs.ddl:創建表與索引語句。sample_foreignkeys.ddl:創建外鍵約束語句。sample_triggers.ddl:創建觸發器語句。(後續數據導出導入與目標端操作見續篇。)