永久ジャーナル データをソース データベースからターゲット データベースにコピーするには、Teradata ARCが必要です。Teradata PT APIまたはTeradata DSAを使用してジャーナル データをコピーしようとすると、エラーが発生します。
ジャーナルを含むデータベースをクエリーすると、ジャーナル情報がXMLに表示されます。 次の例では、<journal>要素のselection="included"属性で、ジャーナルをコピーする必要があることを指定しています。 その他のパラメータは、次のテーブルのとおりです。
<journals> <journal selection="included"> <journal_database>west1000</journal_database> <name>MyJournal</name> </journal> <journal selection="included"> <journal_database>MyDatabase1</journal_database> <name>MyDBJournal1</name> </journal> </journals>
パラメータ | 説明 |
---|---|
journal selection | 値
|
journal_database | ジャーナルが存在するデータベースまたはユーザー。 |
name | ジャーナルの名前。 |
ジャーナルをコピーするとき、ジャーナル全体がターゲット システムにコピーされるわけではありません。 ジョブの一部としてコピーされるテーブルのジャーナル情報のみが、ターゲット システムにコピーされます。 ジョブの一部として、JournalABCというジャーナルを使用するTableAとJournalABCをコピーすると、TableAに関連するジャーナル情報のみがJournalABCからターゲットにコピーされます。 JournalABCのジャーナル テーブル全体はターゲットにコピーされません。
ジャーナルのコピーに関するルール
- ジャーナル テーブルがターゲットに存在する場合は、テーブルに関連するジャーナル データをコピーせずに、ジャーナルを使用するデータ テーブルをコピーできます。例えば、TableAがJournalABCというジャーナルを使用していて、JournalABCがターゲットに存在する場合、JournalABCをコピーせずにTableAをコピーできます。
- ジャーナル テーブルをコピーする場合は、そのジャーナルを使用する、少なくとも1つのテーブルと共にコピーする必要があります。そうでない場合、ジョブの作成時にエラーが発生します。
- ターゲットのテーブルを上書きする場合は、既存のターゲット テーブルが、ソース テーブルと同じジャーナルを使用している必要があります。そうでない場合、そのテーブルのジャーナル データをコピーするときにエラーが発生します。 例えば、ソースのTableAがJournalQQQというジャーナルを使用し、ターゲットのTableAがJournalYYYというジャーナルを使用している場合、TableAをソースからターゲットにコピーすると、ターゲットのTableAは上書きされますが、既存のターゲット テーブルで使用していたJournalYYYが使用されます。このテーブルのJournalQQQのジャーナル データをコピーしようとすると、エラーが発生します。
- 既存のターゲット テーブルがジャーナル テーブルを使用していない場合は、ジャーナルを持たない新しいターゲット テーブルが作成されます。ジャーナルを使用しないテーブルのジャーナル データをコピーしようとすると、エラーが発生します。
- ターゲット システムのハッシュ バケット サイズがソース システムと一致しない場合は、永久ジャーナル データの復元はサポートされません。
- ソース システムのバージョンが古いメジャー リリースの場合は、ジャーナル データをコピーできません。
- 32ビット システムと64ビット システム間でデータをコピーする場合は、2つのシステム間でジャーナル行の形式が異なるため、ジャーナル データをコピーできません。