ヘッダーをスキップ
Oracle TimesTen In-Memory Databaseインストレーション・ガイド
リリース6.0
B25765-02
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

TimesTen 6.0へのデータ・ストアの移行

TimesTen 6.0は、以前のリリースのTimesTenで作成したデータ・ストアを読み取ることができません。TimesTen 6.0には、ttMigrateとttBulkCpの2つの移行ユーティリティが含まれています。これらのユーティリティを使用すると、以前のリリースのTimesTenのデータ・ストアをTimesTenリリース6.0に移行できます。

これらのユーティリティについては、TimesTenのリファレンス・ガイドのTimesTenユーティリティに関する章を参照してください。

Windowsでは、ttMigrateはODBC Driver Managerを使用します。

UNIX Platformsでは、ttMigrateユーティリティはTimesTen Data Manager ODBCドライバに直接リンクしています。

ttMigrateユーティリティの使用

ttMigrateユーティリティは、TimesTenデータ・ストアに対する表の保存およびリストアをバイナリ・データで行います。ttMigrateを使用すると、データ・ストア全体を単一のデータ・ファイルに保存することができます。データ・ファイルには、表の行、列および索引定義が含まれます。TimesTenは、新しいデータ・ストアに表をリストアする際に、表の索引もリストアします。

注意: ttMigrateユーティリティでは、異なるハードウェア・プラットフォーム間でデータ・ストアを移行することはできません。たとえば、Windowsのデータ・ストアをSolarisデータ・ストアに移行することはできません。また、ttMigrateのリリースは、コピー元またはコピー先となるデータ・ストアのリリースと一致している必要があります。この項の例では、以前のリリースのttMigrateを使用して元のデータ・ストアの表をディスク・ファイルに保存し、新しいリリースのttMigrateを使用して新しいデータ・ストアの表にファイルを移行します。

ttMigrateの構文と使用方法については、TimesTenのリファレンス・ガイドのTimesTenユーティリティに関する章を参照してください。

異なるバージョンのデータ・ストアを移行するには、次の手順を実行します。

  1. ttMigrateを使用して、以前のバージョンのデータ・ストアにある表をディスク・ファイルに保存します。
  2. たとえば、次のような場合を想定します。

  3. Sales450というTimesTen 4.5のデータ・ストアがあります。
  4. 使用するデータ・ファイルはsales.datです。
  5. TimesTen 4.5は、/opt/TimesTen45(UNIX Platformsの場合)またはC:\TimesTen\TimesTen45(Windowsの場合)にインストールされています。
  6. Windowsでは、次のように指定します。

    C:\ > "C:\TimesTen\TimesTen45\bin\ttMigrate"
      -c DSN=Sales450 sales.dat 
     

    UNIXでは、次のように指定します。

    % /opt/TimesTen45/32/bin/ttMigrate -c DSN=Sales450 sales.dat
  7. ttMigrateを使用して、保存した表を新しいデータ・ストアにリストアします。
  8. TimesTen 6.0のデータ・ストア用にSalestt60という新しいデータ・ソース名を作成し、4.5のデータ・ストアをインポートします。
  9. たとえば、次のような場合を想定します。

  10. TimesTen 6.0が/opt/TimesTen/tt60(UNIX Platformsの場合)またはC:\TimesTen\tt60(Windowsの場合)にインストールされているとします。
  11. Windowsでは、次のように指定します。

    C:\ > "C:\TimesTen\tt60\bin\ttMigrate" -r DSN=Salestt60
    sales.dat 
     

    UNIXでは、次のように指定します。

    % /opt/TimesTen/tt60/bin/ttMigrate -rx DSN=Salestt60 sales.dat

ttBulkCpユーティリティの使用

ttBulkCpユーティリティは、TimesTenデータ・ストアとASCIIファイル間で表データのコピーを実行します。ttBulkCpが使用するデータ・ファイルには、単一の表の行のみを含めることができます。また、表の列および索引定義は格納されません。このため、ttBulkCpを使用して、あるTimesTenデータ・ストアから別のデータ・ストアに移行する場合は、まず新しいデータ・ストアに表と索引を手動で作成する必要があります。その後で、ttBulkCpを使用して、元のデータ・ストアから新しいデータ・ストアに行をコピーします。ttBulkCpの構文と使用方法については、TimesTenのリファレンス・ガイドのTimesTenユーティリティに関する章を参照してください。

注意: ttBulkCpのリリースは、コピー元またはコピー先となるデータ・ストアのリリースと一致している必要があります。この例では、リリース4.5のttBulkCpを使用してディスク・ファイルに表を保存し、リリース6.0のttIsqlおよびttBulkCpを使用して新しいデータ・ストアの表にディスク・ファイルをコピーします。

TimesTen4.5で作成したデータ・ストアからデータをインポートするには、次の手順を実行します。

  1. 新しいリリースのTimesTenにコピーする表をすべて特定します。
  2. TimesTenユーティリティttBulkCpを使用して、それぞれの表のデータをディスク・ファイルにコピーします。
  3. 新しいデータ・ストアのデータ・ソース名を定義します。
  4. ttIsqlでCREATE TABLEとCREATE INDEXコマンドを使用して、インポートするそれぞれの表と索引を再作成します。
  5. TimesTenユーティリティttBulkCpを使用して、ディスク・ファイルの内容を新しいデータ・ストアの表にコピーします。たとえば、次の場合を想定してみます。
  6. リリース4.5が/opt/TimesTen4.5/32に、リリース6.0が/opt/TimesTen/tt60にインストールされているとします。
  7. リリース4.5のユーザーDSNはsource450、リリース6.0のユーザーDSNはsource_tt60であるとします。
  8. ユーザー表と索引を作成するcreate.sqlというttIsqlスクリプトがあります。または、ttSchemaユーティリティを使用して、オブジェクトの作成に必要なSQL文を作成します。
  9. source450の表ABLEおよびBAKERをsource_tt60に移行するとします。
  10. このような場合に、表をディスク・ファイルにコピーするには、次のコマンドを実行します。

    % /opt/TimesTen45/32/bin/ttBulkCp -o
     DSN=source450 able able.save 
    % /opt/TimesTen45/32/bin/ttBulkCp -o
     DSN=source450 baker baker.save 
     

    次に、TimesTen 6.0データ・ストア用にsource_tt60という新しいデータ・ソース名を作成して、次のコマンドを実行します。

    % /opt/TimesTen/tt60/bin/ttIsql -connStr DSN=source_tt60 -f create.sql % /opt/TimesTen/tt60/bin/ttBulkCp -i DSN=source_tt60 able able.save % /opt/TimesTen/tt60/bin/ttBulkCp -i DSN=source_tt60 baker baker.save