ソースカーセット
有効な対象
Replicat
摘要
SOURCECHARSETパラメータでは、Replicatによるソース文字セットからターゲット文字セットへのデータの変換を制御します。デフォルトでは、Replicatはリリース11.2.1以上の文字セットを変換しますが、次の場合には操作が必要になることがあります。
-
11.2.1より前のリリースのExtractによって書き込まれたデータの正確な変換を有効にする場合。11.2.1より前のリリースのExtractは、トレイルにソース文字セットに関する情報を書き込まないため、直接Replicatにその情報を提供する必要があります。11.2.1以上のリリースのExtractは、Replicatで使用するために、トレイルにソース文字セットに関する情報を書き込むため、
SOURCECHARSETの指定はすべて無視されます。 -
トレイル・ファイルに設定されているソース・データベース文字セットをオーバーライドする場合。
SOURCECHARSETをOVERRIDEオプションとともに使用して、使用する文字セットを指定します。使用例には、データベースをUNICODEに移行したり、ソース・データベースの文字セットを無視して、特定の文字セット・データベースをガベージ・イン/ガベージ・アウト型の非文字セット対応データベースから移行することがあります。
SOURCECHARSETの文字セットを使用する際、Replicatは警告メッセージを表示します。
REPLACEBADCHARパラメータでは、ソース・データに無効な文字があるか、またはターゲットの文字セットがソース文字をサポートしていないという検証エラーを処理します。このパラメータには、これらのエラーで異常終了する、エラーの原因となったレコードをスキップする、または文字に代替値を指定するためのオプションがあります。
デフォルト
なし
構文
SOURCECHARSET {<source_charset> | PASSTHRU | OVERRIDE} [DB2ZOS]
<source_charset>
11.2.1 より前のリリースのExtractによって書き込まれたデータのソース文字セットを指定します。Replicatは、文字型の列をターゲット文字セットに変換する際に、指定された文字セットを使用します。
<source_charset>には、ソース・データベースを表す適切な文字セット識別子を指定します。
Oracleの場合、SOURCECHARSETを指定していないのにターゲットにNLS_LANG環境変数が設定されていると、ReplicatはNLS_LANG値をソース・データベースの文字セットとして使用します。SOURCECHARSETとNLS_LANGのどちらも指定されていない場合、Replicatは発生する可能性があるデータ破損を回避するため異常終了します。
PASSTHRU
PASSTHRU
Replicatに、文字セットの変換をせずにデータを適用させます。次のように、文字セットの相違は無視されます。
-
データベースがOracleの場合、データはトレイルに保管される方法で適用されます。
-
データベースがOracle以外の場合で、データベースでバインドがバイナリ・データとしてサポートされる場合、データはバイナリ・データとして適用されます。そうでないと、データはそのまま適用されます。
PASSTHRUを指定し、CHAR/VARCHAR/CLOBとNCHAR/NVARCHAR/NCLOB間のマッピングがMAP文に存在する場合、Replicatが異常終了します。
Oracle GoldenGateの列マッピング・ファンクションが文字ベースの列に使用される場合、PASSTHRUモードを指定すると、Replicatは警告メッセージを発行し、ファンクションの結果をターゲット列にマップする前に、ターゲット・データベースの文字セットに変換します。
PASSTHRUは、ソースとターゲットの文字セットに互換性があるということが確実である場合のみ使用してください。ご使用の環境でPASSTHRUが適切かどうかが不明な場合、使用する前にOracleサポートに問い合せてください。
OVERRIDE
指定した文字セットを使用し、トレイル・ファイルのソース・データベースの文字セットをオーバーライドするようにReplicatを強制させます。このオプションでは、次の場合を除き、文字型の列の文字セットをオーバーライドします。
-
文字セットは、
CHARSETおよびCOLCHARSETパラメータによってオーバーライドされます。 -
NCHAR、NVARCHARおよびNCLOBデータ型の使用。 -
データベースは、列文字セットを明示的にオーバーライドし、データベースの文字セット以外を設定します。
DB2 for z/OS
Db2 for z/OSに有効です。
z/OSプラットフォームからのDb2データが含まれるトレイルのバージョンがOracle GoldenGate 12.1以下の場合は、必須です。このパラメータにより、Replicatはz/OS上のDb2からのデータを認識できるようになるので、ASCIIとEBCDICの文字形式が混在していてもかまいません。
例
例1
SOURCECHARSET ISO-8859-9
例2
SOURCECHARSET PASSTHRU
例3
SOURCECAHRSET JA16EUC
例4
SOURCECHARSET OVERRIDE WE8ISO8859P15