プライマリ・コンテンツに移動
Oracle® GoldenGate Oracle GoldenGateリファレンスfor Windows and UNIX
12c (12.1.2)
E49845-08
  目次へ移動
目次

前
 
次
 

SOURCECHARSET

適用対象

Replicat

説明

SOURCECHARSETパラメータでは、Replicatによるソース・キャラクタ・セットからターゲット・キャラクタ・セットへのデータの変換を制御します。デフォルトでは、Replicatはリリース11.2.1以上のキャラクタ・セットを変換しますが、次の場合には操作が必要になることがあります。

  • 11.2.1より前のリリースのExtractによって書き込まれたデータの正確な変換を有効にする場合。11.2.1より前のリリースのExtractは、トレイルにソース・キャラクタ・セットに関する情報を書き込まないため、直接Replicatにその情報を提供する必要があります。11.2.1以上のリリースのExtractは、Replicatで使用するために、トレイルにソース・キャラクタ・セットに関する情報を書き込むため、SOURCECHARSETの指定はすべて無視されます。

  • ターゲット・キャラクタ・セットに変換しない場合。SOURCECHARSETPASSTHRUオプションとともに使用して、キャラクタ・セットの変換を回避します。PASSTHRUは、変換によってデータがターゲットで不正確に伝えられる場合にデータ整合性を確保します。ユースケースの例として、ソース・アプリケーションがバイナリ・データを文字の列に書き込み、ターゲットではバイナリ形式を維持する必要がある場合があります。また、すべてのデータがASCIIであり、文字の列にASCII非互換文字がないことが確実である場合は、PASSTHRUを使用して変換のオーバーヘッドを回避することもできます。

  • トレイル・ファイルに設定されているソース・データベース文字をオーバーライドする場合。SOURCECHARSETOVERRUDEオプションとともに使用して、使用するキャラクタ・セットを指定します。使用例には、データベースをUNICODEに移行したり、ソース・データベースのキャラクタ・セットを無視して、特定のキャラクタ・セット・データベースをガベージ・イン/ガベージ・アウト型の非キャラクタ・セット対応データベースから移行することがあります。

SOURCECHARSETのキャラクタ・セットを使用する際、Replicatは警告メッセージを表示します。

REPLACEBADCHARパラメータでは、無効な文字がソース・データにある、またはターゲットのキャラクタ・セットでソースの文字がサポートされないという検証エラーを処理します。このパラメータには、このようなエラーでは異常終了する、エラーの原因となったレコードをスキップする、文字の代替値を指定するためのオプションがあります。

デフォルト

なし

構文

SOURCECHARSET {source_charset | PASSTHRU | OVERRIDE} [DB2ZOS]
source_charset

11.2.1より前のリリースのExtractによって書き込まれたデータのソース・キャラクタ・セットを指定します。Replicatは、文字型の列をターゲット・キャラクタ・セットに変換する際に、指定されたキャラクタ・セットを使用します。

source_charsetには、ソース・データベースを表す適切なキャラクタ・セット識別子を指定します。サポートされるキャラクタ・セットのリストは、Oracle GoldenGateの管理for Windows and UNIXを参照してください。

Oracleの場合、SOURCECHARSETを指定していないのにターゲットにNLS_LANG環境変数が設定されていると、ReplicatはNLS_LANG値をソース・データベースのキャラクタ・セットとして使用します。SOURCECHARSETNLS_LANGのどちらも指定されていない場合、Replicatは発生する可能性があるデータ破損を回避するため異常終了します。

PASSTHRU

Replicatに、キャラクタ・セットの変換をせずにデータを適用させます。次のように、キャラクタ・セットの相違は無視されます。

  • データベースがOracleの場合、データはトレイルに保管される方法で適用されます。

  • データベースがOracle以外の場合で、データベースでバインドがバイナリ・データとしてサポートされる場合、データはバイナリ・データとして適用されます。そうでないと、データはそのまま適用されます。

PASSTHRUBULKLOADパラメータ(ダイレクト・バルク・ロード)と互換性がありません。

PASSTHRUを指定し、CHAR/VARCHAR/CLOBNCHAR/NVARCHAR/NCLOB間のマッピングがMAP文に存在する場合、Replicatは異常終了します。

Oracle GoldenGateの列マッピング・ファンクションが文字ベースの列に使用される場合、PASSTHRUモードを指定すると、Replicatは警告メッセージを発行し、ファンクションの結果をターゲット列にマップする前に、ターゲット・データベースのキャラクタ・セットに変換します。

PASSTHRUは、ソースとターゲットのキャラクタ・セットに互換性があることが確実である場合のみ使用してください。ご使用の環境でPASSTHRUが適切かどうかが不明な場合、使用する前にOracleサポートに問い合せてください。

OVERRIDE

指定したキャラクタ・セットを使用し、トレイル・ファイルのソース・データベースのキャラクタ・セットをオーバーライドするようにReplicatを強制させます。このオプションでは、次の場合を除き、文字型の列のキャラクタ・セットをオーバーライドします。

  • キャラクタ・セットは、CHARSETおよびCOLCHARSETパラメータによってオーバーライドされます。

  • NCHARNVARCHARおよびNCLOBデータ型の使用。

  • データベースは、列キャラクタ・セットを明示的にオーバーライドし、データベースのキャラクタ・セット以外を設定します。

DB2ZOS

z/OS上のDB2に有効です。

z/OSプラットフォームからのDB2データが含まれるトレイルのバージョンがOracle GoldenGate 9.0または9.5の場合は、必須です。このパラメータにより、Replicatはz/OS上のDB2からのデータを認識できるようになるため、ASCIIとEBCDICの文字形式が混在してもかまいません。

例1   
SOURCECHARSET ISO-8859-9
例2   
SOURCECHARSET PASSTHRU
例3   
SOURCECAHRSET JA16EUC
例4   
SOURCECHARSET OVERRIDE WE8ISO8859P15