Db2 LUW:支援的資料類型、物件及作業
本節包含 Db2 LUW 上 Oracle GoldenGate 支援的資料類型、物件及作業相關資訊。
支援的 Db2 LUW 資料類型
Oracle GoldenGate 支援所有 Db2 LUW 資料類型,但不支援的 Db2 LUW 資料類型中所列的資料類型除外。
支援限制
Oracle GoldenGate 具有下列支援 Db2 LUW 資料類型的限制:
-
Oracle GoldenGate 支援多位元組字元資料類型,以及儲存在字元資料欄中的多位元組資料。類似組態僅支援多位元組資料。多位元組字元資料不支援轉換、篩選以及其他類型的操控。
-
BLOB和CLOB資料欄的定義中必須要有LOGGED子句。 -
由於 IBM DB2READLOG 介面的限制,Oracle GoldenGate 不支援在 Db2 資料庫分割功能 (DPF) 環境中協調節點間的交易。在 DPF 中,視資料的分割方式而定,交易可能會跨多個節點。
不過,如果您需要從中擷取,可以針對特定限制進行擷取。請查看 Oracle Support 注意事項 Oracle GoldenGate 是否支援 DB2 LUW 資料分割功能 (DPF)? (DocID 2763006.1)。
-
GRAPHIC和VARGRAPHIC資料欄必須位於字元集為 UTF16 的資料庫中。任何其他字元集都會導致 Oracle GoldenGate 中止。 -
浮點數的支援範圍和精確度取決於主機機器。一般而言,精確度為 16 個有效位數,但您應複查資料庫文件以決定預期的近似值。Oracle GoldenGate 會捨入或截斷超過支援精確度的值。
-
當輸出歷程檔格式為 19.1 或更新版本時,Extract 完全支援擷取並套用
TIMESTAMP(0)到TIMESTAMP(12)。否則 Extract 會將資料從TIMESTAMP(10)截斷到TIMESTAMP(12)奈秒 (最長 9 位數的分數時間),並對報表檔案發出警告。 -
Oracle GoldenGate 支援從 0001/01/03:00:00:00 到 9999/12/31:23:59:59 的時戳資料。如果時間戳記是從 GMT 轉換成當地時間,這些限制也會套用至產生的時間戳記。視時區而定,轉換可能會增加或減去時數,這可能會導致時間戳記超過支援的下限或上限。
-
Oracle GoldenGate 不支援篩選、資料欄對應或操控大於 4K 的大型物件。您可以將 Oracle GoldenGate 的完整功能用於 4K 或更小的物件。
-
支援使用相同字元集在來源資料庫與目標資料庫之間複寫 XML 資料欄。如果來源和目標資料庫字元集不同,則 XML 複製可能會因資料庫錯誤而失敗,因為目標資料庫字元集中的某些字元可能無法辨識 (或有效)。
-
Oracle GoldenGate 不會證明擷取來自 Db2 LUW 資料欄組織表格的變更。
-
DECFLOAT資料類型支援NaN、sNaN、Infinity/-Infinity特殊數值。如需有關支援特殊值之資料庫的資料類型詳細資訊,請參閱資料庫資料類型支援的特殊值。
非支援的 Db2 LUW 資料類型
不支援的 Db2 LUW 資料類型為:
-
XMLType(擷取) -
使用者定義的類型
-
負數日期
Db2 LUW 支援的物件與作業
Db2 LUW 支援的物件和作業如下:
-
Oracle GoldenGate Extract 支援跨端擷取,其中資料庫和 Oracle GoldenGate 在不同的位元組順序伺服器上執行。系統會自動偵測 Db2 LUW 版本 10.5 或更新版本的位元組順序。如果不需要在 Db2 LUW 10.5 資料庫上自動偵測 Db2 資料庫,您可以指定
TRANLOGOPTIONS MIXEDENDIAN [ON|OFF]參數來覆寫資料庫。對於 Db2 LUW 版本 10.1,此參數必須用於跨端擷取的 Extract 參數檔中。請參閱 TRANLOGOPTIONS 以取得詳細資訊。 -
支援 Db2 pureScale 環境。
-
Oracle GoldenGate 支援資料庫所支援之每個表格的資料欄數目上限和資料欄大小上限。
-
TRUNCATE TABLE. -
多維叢集化表格 (MDC)。
-
具體化查詢表格。Oracle GoldenGate 不會複製 MQT 本身,而只會複製基本表格。目標資料庫會根據 Replicat 套用至基本表格的變更,自動維護 MQT 的內容。
-
含有
ROW COMPRESSION的表格。在 Db2 LUW 版本 10.1 和更新版本中,支援COMPRESS YES STATIC,並支援COMPRESS YES ADAPTIVE。 -
預設啟用延伸列大小功能。它支援使用
FETCHCOLS的解決方法。對於VARCHAR或VARGRAPHIC資料類型且從資料庫的資料列儲存的任何資料欄值,您必須使用擷取參數檔中TABLE參數的FETCHCOLS選項來指定這些資料欄,以擷取這些擴充資料列。若設定此選項,當資料欄值超出資料列時,Oracle GoldenGate 將會擷取其值。如果值超出且未指定FETCHCOLS,則會異常中止 Extract,以避免遺失任何資料。如果不想使用此功能,請將extended_row_size參數設為DISABLE。預設啟用延伸列大小功能。在 Db2 LUW 10.1 中使用
FETCHCOLS來支援解決方法。對於VARCHAR或VARGRAPHIC資料類型且從資料庫的資料列儲存的任何資料欄值,您必須使用 Extract 參數檔中TABLE參數的FETCHCOLS選項指定這些資料欄,以擷取這些擴充資料列。若設定此選項,當資料欄值超出資料列時,Oracle GoldenGate 會擷取其值。如果值超出且未指定FETCHCOLS,則 Extract 會中止以防止任何資料遺失。如果不想使用此功能,請將extended_row_size parameter設為DISABLE。對於 Db2 LUW 10.5 和更高的資料列值,會由 Extract 順暢擷取。FETCHCOLS不再需要從這些資料庫版本的資料列資料欄擷取。 -
支援 Db2 LUW 10.1 FixPack 2 和更新版本的時間表格。此為 Replicat 的預設值。
-
不支援在系統期間的時間表和應用程式期間的時間表之間複製。
-
不支援從非時間表格複寫至時間表格。
-
不支援使用
INSERTALLRECORDS參數複製時序表格。 -
只有預設複製才支援雙向複製。
-
不支援雙向複製中的 CDR。
-
支援應用程式期間時序表格中的 CDR。
-
-
SEND EXTRACT SHOWTRANS\SKIPTRANS\FORCETRANS指令支援的選項如下:SHOWTRANS指令支援的選項SHOWTRANS [transaction_ID] [COUNT n] [DURATION duration unit] [TABULAR][FILE file_name] |選項包含
SKIPTRANS和FORCETRANS。SKIPTRANS transaction_ID [FORCE] FORCETRANS transaction_ID [FORCE] -
「自動活動訊號表」支援的限制如下:
-
不支援
[THREAD n][DETAIL]。 -
接受 Oracle GoldenGate 活動訊號參數頻率和永久清除頻率 (秒和天)。不過,Db2 LUW 工作排程器只接受 cron 格式的排程,因此 Oracle GoldenGate 的 cron 格式輸入值可能會導致部分準確性遺失。舉例而言:
-
ADD HEARTBEATTABLE, FREQUENCY 150, PURGE_FREQUENCY 20
This example sets the `FREQUENCY` to 150 seconds, which is converted to the closest minute value of 2 minutes, so the heartbeat table is updated every 120 seconds instead of every 150 seconds. Setting `PURGE_FREQUENCY` to 20 means that the history table is purged at midnight on every 20th day.
-
下列為活動訊號排定任務要執行的必要步驟:
-
將
DB2_ATS_ENABLE登錄變數設為db2set DB2_ATS_ENABLE=YES。 -
如果
SYSTOOLSPACE表格空間不存在,請加以建立:
CREATE TABLESPACE SYSTOOLSPACE IN IBMCATGROUP MANAGED BY AUTOMATIC STORAGE EXTENTSIZE 4-
確定執行處理擁有者有資料庫管理授權 (DBADM):
GRANT DBADM ON DATABASE TOinstance_owner_name
-
Db2 LUW 不支援的物件與作業
Oracle GoldenGate 不支援的 Db2 LUW 物件和作業如下:
-
含有尾端空格的綱要、表格或資料欄名稱
-
資料庫的多個執行處理
-
擷取或複製 DDL (資料定義語言) 作業
-
產生的資料欄 (
GENERATE ALWAYS子句) -
DB2 不支援資料分割功能 (DPF)。DPF 無法提供在分割區中所有節點間以協調方式讀取日誌記錄的方式。因此,無法確保即使所有節點都以個別的 Extract 進行複製,也能夠確保所有交易的所有記錄都以正確的時間順序套用。這可能會因為一些因素 (包括資料庫中的快取和基礎作業系統) 而導致,無法讓 Extract 檢視是否有任何快取和尚未顯示的項目,這些項目可能會影響所有分割區的記錄作業順序。由於這種不確定性,無法確保能夠以一致的方式複製跨分割區或主索引鍵更新的交易。
系統綱要
除非在沒有萬用字元的情況下明確指定下列綱要或物件,否則 Oracle GoldenGate 不會自動複製這些綱要或物件。
-
"SYSIBM" -
"SYSCAT" -
"SYSSTAT" -
"SYSPROC" -
"SYSFUN" -
"SYSIBMADMIN" -
"SYSTOOLS" -
"SYSPUBLIC"
支援的物件名稱
如需物件名稱中支援的字元清單,請參閱支援的資料庫物件名稱。