脫氮
注意:請務必依照 Oracle GoldenGate 程式小節中的說明設定環境變數,才能使用 DEFGEN 公用程式。
使用 DEFGEN 公用程式可產生來源表格描述資料定義,Replicat 可用來從 Oracle GoldenGate 12.2 之前的格式版本中讀取,但不包含來源表格描述資料之歷程檔。DEFGEN 程式安裝在 Oracle GoldenGate 的本位目錄 bin 目錄中。
Windows、UNIX 與 Linux 的語法
defgen PARAMFILE <parameter_file>
[NOEXTATTR]
[PAUSEATEND | NOPAUSEATEND]
[REPORTFILE <report_file>]
[UPDATECS <characterset> ]
PARAMFILE <parameter_file>
必要項目。指定正在執行之 DEFGEN 程式的參數檔相對或絕對路徑名稱。參數檔必須手動建立,並會列出表格定義輸出、資料庫連線資訊以及要產生定義的表格 defs 檔案。
NOEXTATTR
可以用來支援與 11.2.1 版以前的 Oracle GoldenGate 版本的回溯相容性,且不支援 ASCII 以外的字元集,也不支援區分大小寫或加上空格的物件名稱。NOEXTATTR 可防止 DEFGEN 包含支援 Oracle GoldenGate 11.2.1 版中導入之全域化功能的資料庫地區設定和字元集。如果表格或資料欄名稱具有多位元組或特殊字元 (例如空格),則指定 NOEXTATTR 時,DEFGEN 不包括表格定義。如果在參數檔中使用 APPEND 模式,則會忽略 NOEXTATTR,而新的表格定義會以現有的檔案格式附加,無論是否具有額外屬性。
PAUSEATEND |
NOPAUSEATEND (預設) |
(僅限 Windows) 處理作業停止時,需要 Oracle GoldenGate 使用者查看主控台輸出,然後刪除任何金鑰來清除它。同時指出處理程序是正常結束還是異常結束。
REPORTFILE <report_file>
將指令輸出傳送至指定的報表檔案。若未使用 reportfile 選項,則會在螢幕上列印指令輸出。
defs_file UPDATECS <charset>
如果檔案傳輸至具有不相容字元集的作業系統,請將定義檔案的字元集轉換成不同的字元集。此程序會將定義檔的名稱和目標字元集當作輸入。例如:defgen source.def UPDATECS UTF-8。
UPDATECS 有助於日文 Windows 上的日文表格名稱以 Windows CP932 寫入資料定義檔案,然後將定義檔案傳輸至日文 UNIX。除非在 PCK 地區設定中設定 UNIX,否則無法使用此檔案。因此,您必須使用 UPDATECS,將定義檔案的編碼轉換為正確的格式。
範例
以下為範例 DEFGEN 參數檔 defgenparam.prm。如需詳細資訊,請參閱 DEFSFILE 參數。
DEFSFILE /home/oracle/ogg/ora/bin/ora.defs, PURGE
USERIDALIAS oracle_source
TABLE hr.employees;
使用下列命令來執行 DEFGEN 程式:
$OGG_HOME/bin/defgen PARAMFILE defgenparam.prm