OGG Loading data from file to Replicat 方式不支持 LOB、LONG、UDT 等 >4KB 大字段。若需同步含 LOB 表的部分記錄,必須在 Extract 進程配置 SQLPREDICATE 過濾條件。本文詳細說明適用場景、配置語法及替代方案對比。
impdp remap_table 功能。t1(含 LOB 字段)部分行同步到新表 t1_temp。direct load) 不支持 LOB,只能用 file to Replicat:Extract 落地文件 → Replicat 讀取文件轉 SQL 執行。在 Extract 參數文件中指定過濾條件:
TABLE test.t1_temp, SQLPREDICATE "where xh = '11'";
或使用子查詢動態獲取需同步的主鍵值:
TABLE test.t1_temp, SQLPREDICATE "where xh in (select xh from test.highgo_sync_row_xh)";
test.highgo_sync_row_xh 表預存待同步行的主鍵 xh。WHERE 子句,僅抽取符合條件的行。EXTRACT ext_lob
USERID ggate, PASSWORD ggate
EXTTRAIL ./dirdat/lt
TABLE test.t1_temp, SQLPREDICATE "where xh in (select xh from test.highgo_sync_row_xh)";
| 方案 | 優點 | 缺點 | 適用性 |
|---|---|---|---|
| OGG file to Replicat + SQLPREDICATE | 原生支持、無需額外工具、支持 LOB | 落地文件佔磁盤、延遲較高 | ✅ 本場景首選 |
| OGG file to Database Utility | 調用 SQL*Loader/外部表、批量效率高 | 配置複雜、需控制文件權限 | 大批量同步 |
| HVR (第三方同步工具) | 無落地文件、直接適用 Row 級過濾、延遲極低 | 需購買授權、學習成本 | 企業級高可用 |
| PL/SQL 手動導出導入 | 簡單可控 | 非增量、難以自動化 | 一次性小數據 |
SQLPREDICATE 中的過濾列(如 xh)建議建立索引,提升 Extract 掃描效率。ENABLE STORAGE IN ROW 等)配置得當。LAGREPORT 定期上報。