我正在將數據庫從DB2 10.1 for Windows x86_64遷移到DB2 10.1 for Linux x86_64 - 這是操作系統和機器類型的組合,它們不兼容備份文件格式,這意味着我不能只做一個備份和恢復。使用db2move和db2look遷移DB2物化查詢表(MQT)的正確方法
相反,我使用db2move
從Windows備份數據庫並在Linux上恢復它。但是,db2move
不會移動物化查詢表(MQT)。相反,我需要使用db2look
。這提出了尋找處理該過程的通用方法的挑戰。眼下轉儲的DDL的物化查詢我要運行下面的命令:
db2 connect to MYDATABASE
db2 -x "select cast(tabschema || '.' || tabname as varchar(80)) as tablename from syscat.tables where type='S'"
這將返回的MQT如列表:
MYSCHEMA.TABLE1
MYSCHEMA.TABLE2
MYOTHERSCHEMA.TABLE3
然後我就可以採取所有這些價值觀和飼料他們到db2look
爲每個表生成DDL並將輸出發送到mqts.sql
。
db2look -d MYDATABASE -e -t MYSCHEMA.TABLE1 MYSCHEMA.TABLE2 MYOTHERSCHEMA.TABLE3 -o mqts.sql
然後我將文件複製mqts.sql
到目標計算機,這是我之前已經恢復了所有的非的MQT,並運行以下命令來恢復的MQT:
db2 -tvf mqts.sql
是這個標準的遷移MQT的方法?這裏有一個更簡單的方法,我在這裏失蹤。