データベースレベルのアーカイブ:
ARCHIVE DATA TABLES (SYSDBA), RELEASE LOCK, FILE=ARCHIVE;
データベースレベルのアーカイブからのデータベースレベルの選択パーティション復元:
RESTORE DATA TABLES (SYSDBA) (EXCLUDE TABLES (TransactionHistory)), (SYSDBA.TransactionHistory) ( PARTITIONS WHERE (! TransactionDate = DATE ‘2004-03-15’ !) ), RELEASE LOCK, FILE=ARCHIVE;
この形式のRESTORE文は、同一のRESTORE文の同一のデータベース オブジェクトを使用して、データベースレベルの復元をPPIテーブルのテーブルレベルの選択パーティション復元と組み合わせます。 場合によっては、この形式のRESTORE文の実行は、次のようなエラーで失敗する場合があります。
*** Failure ARC0805:Access Module returned error code 34:Error BAM1300: 5:The sequence of calls is incorrect.このエラーは、文の2番目の部分を正しく処理できなかったことを示しています。 この文を処理するには、Teradata ARCで、データベース オブジェクトを2度処理し復元を完了させる必要があります。 最初の処理で、Teradata ARCは、PPIテーブルを除いてデータベース オブジェクトのオブジェクトすべてを復元します。 次に、Teradata ARCは、PPIテーブルを再検索するためにデータベース オブジェクトに対する2回目の処理を行なう必要があります。これによりPPIテーブルのテーブルレベルの選択パーティション復元が行なえます。 2回目の処理を実行するには、Teradata ARCはデータベース オブジェクトを再び読み込むため、データベース オブジェクトの先頭に位置を戻す必要があります。 元の位置に戻る動作が試行されたとき、「The sequence of calls is incorrect(コールのシーケンスが正しくありません)」エラーが表示される場合があります。
このエラー(または同様のエラー)が表示された場合、この復元処理は、2つの独立した復元手順に分割する必要があります。
- 最初に、データベースレベルのRESTORE文を実行し、PPIテーブルを除外してデータベースレベルのオブジェクトを復元する必要があります。
- 次に独立したテーブルレベルのRESTORE文を実行し、PPIテーブルの選択パーティション復元を行ないます。
これら2つのRESTORE文は同じジョブに含まれるか2つの独立したジョブに分けられます。