ヘッダーをスキップ
Oracle TimesTen In-Memory Database APIおよびSQLリファレンス・ガイド
リリース6.0
B25770-02
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

ttMigrate

説明

TimesTenデータ・ストアからバイナリ・データファイルへの移行オブジェクトの保存、またはバイナリ・データファイルからTimesTenデータ・ストアへの移行オブジェクトのリストアを行います。移行オブジェクトには、表、キャッシュ・グループ定義、ビューおよび順序が含まれます。

メジャー・リリースはバイナリ互換でないため、ttMigrateユーティリティは、TimesTenのメジャー・リリースのアップグレード時に使用されます。例については、『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』を参照してください。

プラットフォーム依存のバイナリ・ファイルを生成します。たとえば、Windowsで生成されたバイナリ・ファイルはWindowsにリストアする必要があります。プラットフォーム間でデータをコピーするには、ttBulkCpユーティリティを使用します。

ttMigrateユーティリティは、同じアーキテクチャ内のビット・レベル間でデータをコピーする場合に使用できます。たとえば、32-bitのSolaris Systemから64-bitのSolaris Systemにデータを移動する場合に使用できます。-noRepUpgradeオプションは、ビット・レベルを変更する場合に使用する必要があります。この場合、データ・ストアは、レプリケーション・スキームに含まれないようにしてください。

UNIXでは、このユーティリティはTimesTen Data Manager DSNで使用できます。TimesTenクライアントDSNでは、ttMigrateCSユーティリティを使用します。

アクセス制御

アクセス制御がTimesTenのインスタンスに対して有効である場合、このユーティリティにはSELECT権限か表を移行するための表の所有権、およびデータ・ストア全体を移行するためのADMIN権限が必要です。接続文字列またはDSNに認証情報が指定されない場合、続行する前にユーザーIDおよびパスワードの入力が求められます。

このユーティリティでは、アクセス制御がTimesTenの新しいインスタンスまた古いインスタンスに対して有効であるかどうかにかかわらず、付与された権限が移行されません。アクセス制御がTimesTenの新しいインスタンスに対して有効である場合は、移行したデータ・ストアに明示的にユーザーを作成し、権限を付与する必要があります。

構文
ttMigrate [-h | -help | -?] 
ttMigrate [-V | -version] 
ttMigrate  {-a | -c} [-vverbosity] [-nf] [-nr] [-fixNaN]
{-connStr connection_string | DSN} dataFile
[objectOwner.]objectName 
ttMigrate -r -noRepUpgrade [-inline rule] [-vverbosity] [-fixNaN]
[-nf] [-nr] [-C chkPtFreq] [-rename oldOwner:newOwner]
[-cacheUid uid [-cachePwd pwd]] {-connStr connection_string |
DSN} dataFile [objectOwner.]objectName 
ttMigrate -r -repUpgrade [-vverbosity] [-fixNaN] [-nf] [-nr]
[-C chkPtFreq] [-rename oldOwner:newOwner]
[-cacheUid uid [-cachePwd pwd]] {-connStr connection_string |
DSN} dataFile [objectOwner.]objectName 
ttMigrate {-l | -L | -d | -D} dataFile [owner.name ...] 
オプション

ttMigrateには次のオプションがあります。

-a  
追加モードを選択します。
-c 
作成モードを選択します。
-cacheUid 
AUTOREFRESHおよびASYNCHRONOUS WRITETHROUGHキャッシュ・グループのリストア時に使用するキャッシュ管理ユーザーID。
-cachePwd 
AUTOREFRESHおよびASYNCHRONOUS WRITETHROUGHキャッシュ・グループのリストア時に使用するキャッシュ管理パスワード。コマンドラインにキャッシュ管理ユーザーIDを入力したが、キャッシュ管理パスワードを入力しなかった場合は、ttMigrateによってパスワードの入力が要求されます。
-connStr 
connection_string 
データ・ストア名、サーバー名とDSN(必要に応じて)および関連する接続属性を含むODBC接続文字列。
-d 
説明モードを選択します。
-D 
詳細説明モードを選択します。
dataFile 
移行オブジェクトの保存先または移行オブジェクトのリストア元のデータファイルのパス名です。
DSN 
移行するデータ・ストアのODBCデータソース名を指定します。
-fixNaN
移行オブジェクト内で検出されたNaN、INF、-INFの値をすべて0.0に変換します。
-h
-help
-?
使用方法のメッセージを出力して終了します。
-inline rule 
リストア・モードで可変長列をINLINEに変換するために使用するルールを指定します。このルールの値は次のいずれかです。
preserve: ttMigrateは、各列の元のINLINE属性を保存します。これがデフォルトです。-repUpgradeが使用されている場合は必須です。
dsDefault: ttMigrateは、リストアされた列のINLINE属性を設定するためにデータ・ストアのデフォルトのルールを使用します。
maxlen: ttMigrateは、maxlen以下の長さのすべての可変長列をINLINEとしてリストアし、maxlenより長いすべての可変長列をNOT INLINEとしてリストアします。maxlenが0(ゼロ)の場合は、すべての列をNOT INLINEとしてリストアします。
このオプションを移行中に使用する場合は、INLINE列がサポートされていないTimesTenバージョンのデータ・ストアでデータ・ストアをレプリケートしないでください。INLINE可変長列は、NOT INLINE列には正常にレプリケートできません。
-l 
リスト・モードを選択します。
-L 
詳細リスト・モードを選択します。
-r 
リストア・モードを選択します。
name 
保存またはリストアするデータ・ストア・オブジェクトの名前。
-nf 
通常の(キャッシュされていない)表の保存またはリストア時に、ttMigrateが外部キー情報の保存またはリストアを行わないことを指定します。
-noRepUpgrade 
保存/リストアした表と元の表のレプリケーションとの互換性は保障されません。このオプションを使用することにより、リストアした表のサイズは少し小さくなり、アクセス速度が若干向上する場合があります。-cまたは-aオプションが指定されている場合、このオプションは無視されます。元の表とリストアした表とのレプリケーションは適切に行われない場合があるため、このオプションの使用には注意が必要です。
-nr 
通常の(キャッシュされていない)表の保存またはリストア時に、ttMigrateが表の行の保存またはリストアを行わないことを指定します。
owner 
移行オブジェクトの所有者です。
-rename
oldOwner:newOwner 

oldOwnerが以前所有し、newOwnerが所有することになるすべてのデータ・ストアをリストアします。TimesTenシステム表(TTREPまたはSYSが所有)の所有権は変更できません。

このオプションの使用には、一定の注意が必要です。表の所有者および表名がデータ・ストア内の別の表と同じになるように所有者名を変更すると、その表は正常にリストアされません。また、ビューによって参照されている表の所有者名を変更する場合は、ビューを削除して再作成する必要がある場合があります。最後に、レプリケートされた表の所有者を変更する場合は、更新を正常にレプリケートするために、すべてのレプリケーション・ピアの表の所有者を変更する必要があります。

-repUpgrade 
レプリケーションのアップグレードのための表のリストア時に、保存/リストアした表と元の表のレプリケーションでの互換性が保障されます。-cまたは-aオプションが指定されている場合、このオプションは無視されます。
ttMigrateユーティリティは、リストア・モードではデフォルトで-repUpgradeに設定されます。ttMigrateデータファイルからデータをリストアするとき、ファイルが-repUpgradeオプションをサポートしていないttMigrateのバージョンで作成されている場合、またはファイルの作成時に明示的に-noRepUpgradeを指定した場合(5.1より前のttMigrateバージョンで)、移行オブジェクトがレプリケーションの互換性により作成できなかったことを示すエラーが発生します。
-vverbosity 
ttMigrateがデータ・ストアの保存またはリストアを行うときに出力されるメッセージの冗長レベルを指定します。
メッセージの冗長レベルは、次のいずれかです。
0: エラーおよび警告のみを表示します。
1: 表の保存またはリストア時に、各表の名前を出力します。
2: 表や索引の保存またはリストア時に、各表または索引の名前を出力します。
3: (デフォルト)表や索引の保存またはリストア時に、各表または索引の名前を出力し、10,000行が保存またはリストアされるごとにドット(.)を出力します。
リスト、詳細リスト、説明および詳細説明の各モードでは、-vは無視されます。
-V | -version 
ttMigrateのリリース番号を出力して終了します。

次のオプションは、リストア・モードにかぎり使用可能です。

-C chkPtFreq  
chkPtFreqの値(MB)のデータをリストアするたびに、ttMigrateがデータ・ストアのチェック・ポイントを行うことを指定します。0(ゼロ)の値(デフォルト)は、ttMigrateがデータ・ストアのチェック・ポイントを行わないことを指定します。

モード

作成モード(-c)と追加モード(-a)

作成モードでは、ttMigrateが移行オブジェクトをTimesTenデータ・ストアから新規のバイナリ・データファイルに保存します。データファイルが存在しない場合には、ttMigrateによって作成されます。それ以外の場合は、ttMigrateは既存のファイルを上書きして、その内容を破棄します。

追加モードでは、ttMigrateは移行オブジェクトをTimesTenデータ・ストアから既存のデータファイルに追加します。データファイルが存在しない場合には、ttMigrateによって作成されます。

様々なリリースのTimesTenの移行オブジェクトを、1つのデータファイルに保存できます。

通常の(キャッシュされていない)各表について、ttMigrateは次のものを保存します。

注意: データ・ストアのリストアにttMigrateを使用した後は、ソース・データ・ストアでのAUTOREFRESH STATEの設定方法に関係なく、リストアされたデータ・ストアのすべての自動リフレッシュ・キャッシュ・グループでAUTOREFRESH STATEがOFFに設定されます。ALTER CACHE GROUP文を使用して、AUTOREFRESH STATEをONにリセットしてください。
注意: ttMigrateユーティリティは、-nrオプションを指定しなかった場合でも、キャッシュされた表の行をデータファイルに保存しません。キャッシュされた表の外部キー定義は、キャッシュ・グループの整合性を保つために必要となるため、-nfオプションの使用にかかわらず、常に保存されます。

デフォルトでは、ttMigrateは、表、ビュー、キャッシュ・グループ、順序およびレプリケーション・スキームなどの、データ・ストア内のすべてのデータ・ストア・オブジェクトをデータファイルに保存します。また、レプリケーション・スキームを除き、保存するデータ・ストア・オブジェクトのリストをコマンドラインに指定することもできます。このリスト内の名前には、ワイルド・カード文字の%(1文字以上に一致)と_(単一の文字に一致)を含めることができます。ttMigrateは、指定されたパターンのいずれかに一致する、すべてのデータ・ストア・オブジェクトを保存します。名前を完全修飾する必要はありません。所有者なしで名前を指定すると、ttMigrateは指定された名前またはパターンに一致するすべてのデータ・ストア・オブジェクトを所有者にかかわらず保存します。

キャッシュされた表は、キャッシュ・グループから独立して保存できません。キャッシュされた表をコマンドラインで表示しても、対応するキャッシュ・グループを表示しないと、ttMigrateはエラーを発行します。

-vオプションを使用して、保存の処理中にttMigrateによって出力される情報を制御します。

リストア・モード(-r)

リストア・モードでは、ttMigrateはすべてのデータ・ストア・オブジェクトをデータファイルからTimesTenデータ・ストアにリストアします。

通常の(キャッシュされていない)各表について、ttMigrateは次のものをリストアします。

注意: ttMigrateユーティリティは、-nrオプションを指定しなかった場合でも、キャッシュされた表の行をリストアしません。キャッシュされた表の外部キー定義は、キャッシュ・グループの整合性を保つために必要となるため、-nfオプションの使用にかかわらず、常にリストアされます。

デフォルトでは、ttMigrateはデータファイル内のすべての表とキャッシュ・グループをリストアします。デフォルトでは、リストア中に-repUpgradeオプションが設定されます。また、リストアする特定の表とキャッシュ・グループをコマンドラインで表示することもできます。このリスト内の名前は完全修飾する必要があり、ワイルド・カード文字は使用できません。

キャッシュされた表は、それらのキャッシュ・グループから独立してリストアできません。キャッシュされた表をコマンドラインで表示しても、対応するキャッシュ・グループを表示しないと、ttMigrateはエラーを発行します。

-vオプションを使用して、リストアの処理中にttMigrateによって出力される情報を制御します。

-inlineオプションを使用すると、可変長列をINLINEまたはNOT INLINEのどちらとしてリストアするかを制御できます。詳細は、「データ型の仕様」を参照してください。デフォルト・モード(-inline preserve)では、ttMigrateはすべての可変長列を、それらが保存されたときと同じINLINEまたはNOT INLINE設定でリストアします。その他の2つのモード(-inline dsDefaultおよび-inline maxlen)では、ttMigrateはしきい値長以下の可変長列をINLINEとしてリストアし、他の可変長列をすべてNOT INLINEとしてリストアします。-inline dsDefaultでは、このしきい値はTimesTenデータ・ストアのデフォルトの自動INLINE長です。-inline maxlenモードでは、maxlenのユーザー定義のしきい値長を持つ可変長列は、INLINEとしてリストアされ、その他のすべての可変長列は、INLINEとして保存されている場合にも、NOT INLINEとしてリストアされます。maxlenが0の場合、すべての可変長列はNOT INLINEとしてリストアされます。

リスト・モード(-l)と詳細リスト・モード(-L)

リスト・モードでは、ttMigrateは、キャッシュされた表およびレプリケーション・スキームTTREP表などの、指定したデータファイル内のデータ・ストア・オブジェクトの名前を表示します。

詳細リスト・モードでは、ttMigrateは、キャッシュされた表およびレプリケーション・スキームTTREP表などの、データファイル内のデータ・ストア・オブジェクトの名前を、各表の行数と各表の索引定義、各ビューを定義する問合せ、および各順序の仕様とともに表示します。

デフォルトでは、ttMigrateは、レプリケーション・スキーム名およびファイル内のすべてのデータ・ストア・オブジェクトを表示します。また、コマンドラインにデータ・ストア・オブジェクトの名前のリストを表示することもできます。このリスト内の名前は完全修飾する必要があり、ワイルド・カード文字は使用できません。

説明モード(-d)

説明モードでは、ttMigrateは、指定したファイル内のデータ・ストア・オブジェクトに関する簡単な説明を提供します。

各表について、ttMigrateは表名、表の行数、表の列定義、主キーおよび外部キーを表示します。キャッシュされた表については、表の属性(PROPAGATEまたはREADONLY)および表のWHERE句(存在する場合)も表示します。

ビューについて、ttMigrateはビューを定義する問合せも表示します。

キャッシュ・グループについて、ttMigrateはキャッシュ・グループ名、キャッシュ・グループ内の表の数、キャッシュ・グループの持続時間を表示し、キャッシュ・グループ内のキャッシュされた各表について説明します。

レプリケーション・スキームについて、ttMigrateは、レプリケーション・スキーム名およびすべてのTTREPレプリケーション・スキーム表をユーザー表と同様の方法で表示します。

デフォルトでは、ttMigrateは、ファイル内のデータ・ストア・オブジェクトをすべて示します。また、コマンドラインにデータ・ストア・オブジェクトの名前のリストを表示することもできます。このリスト内の名前は完全修飾する必要があり、ワイルド・カード文字は使用できません。

詳細説明モード(-D)

詳細説明モードでは、ttMigrateは指定したファイル内のデータ・ストア・オブジェクトに関する詳細な説明を提供します。

各表について、ttMigrateは表名、表の行数、表の列定義、主キー、外部キーおよび索引定義を表示します。キャッシュされた表については、表の属性(PROPAGATEまたはREADONLY)および表のWHERE句(存在する場合)も表示します。

キャッシュ・グループについて、ttMigrateはキャッシュ・グループ名、キャッシュ・グループ内の表の数、キャッシュ・グループの持続時間を表示し、キャッシュ・グループ内のキャッシュされた各表について説明します。

順序について、ttMigrateは順序の現在の値に加えて、その順序の定義に使用されたすべての値を表示します。

レプリケーション・スキームについて、ttMigrateは、すべてのTTREPレプリケーション・スキーム表をユーザー表と同様の方法で表示します。

デフォルトでは、ttMigrateは、ファイル内のデータ・ストア・オブジェクトをすべて示します。また、コマンドラインにデータ・ストア・オブジェクトの名前のリストを表示することもできます。このリスト内の名前は完全修飾する必要があり、ワイルド・カード文字は使用できません。

次のコマンドでは、すべてのデータ・ストア・オブジェクトが、データ・ストアSalesDSからファイルsales.ttmにダンプされます。sales.ttmがすでに存在している場合は、ttMigrateによって上書きされます。

ttMigrate -c DSN=SalesDS sales.ttm 
 

次のコマンドでは、ユーザーMARYが所有するSalesDSデータ・ストア内のすべてのデータ・ストア・オブジェクトをsales.ttmに追加します。

ttMigrate -a DSN=SalesDS sales.ttm MARY.%

次のコマンドでは、sales.ttmのすべてのデータ・ストア・オブジェクトをSalesDSデータ・ストアにリストアします。

ttMigrate -r DSN=SalesDS sales.ttm

次のコマンドでは、sales.ttmのMARY.PENDINGおよびMARY.COMPLETEDをSalesDSデータ・ストアにリストアします(移行オブジェクトでは大/小文字は無視されます)。

ttMigrate -r DSN=SalesDS sales.ttm MARY.PENDING  MARY.COMPLETED

このコマンドでは、sales.ttmに保存されたすべての移行オブジェクトを表示します。

ttMigrate -l sales.ttm
注意

ttMigrateユーティリティは、デフォルトで-repUpgradeオプションを設定します。-repUpgradeオプションをサポートしていないttMigrateのバージョンを使用した場合、または移行ファイルの作成時に-noRepUpgradeを明示的に指定した場合、レプリケーションの互換性により移行オブジェクトを作成できなかったことを示すエラーが発生します。移行元のTimesTenリリースの-repUpgradeオプションをサポートするttMigrateのバージョンを取得するか、-noRepUpgradeがサポートされている場合は、デフォルトで-repUpgradeが設定されるTimesTenのバージョンにファイルを移行する際に、-noRepUpgradeを指定します。

INLINE可変長列を含むTimesTen表を、5.1より前のリリースのTimesTenに移行する場合は、明示的に-noRepUpgradeオプションを使用する必要があります。デフォルトの-repUpgradeオプションを使用すると、エラーが発生します。列のINLINE属性は、-inlineオプションを使用して他の指定をしないかぎり保持されます。

リストア・モードでは、表間に外部キーの依存性が存在することで、子表がその親表よりも前にリストアされないことを保証するために、ttMigrateは表を再配置する必要がある場合があります。このような依存性では、親表のいずれかがリストアされなかった場合に、子表がリストアされるのを回避することもできます。たとえば、表Bに対して外部キーの依存性を持つ表Aをリストアする場合、ttMigrateは最初に表Bがデータ・ストアに存在することを確認します。表Bが検出されない場合、ttMigrateは表Bがリストアされるまで表Aのリストアを遅らせます。表BがttMigrateセッションの一部としてリストアされない場合、TimesTenは未解決の依存性により表Aをリストアできなかったことを示すエラー・メッセージがTimesTenによって出力されます。

ttMigrateによって使用されるデータファイル形式は、TimesTenのいずれのリリースからも独立しているため、あるTimesTenリリースから別のリリースへデータを移行する場合にttMigrateを使用できます。

レプリケート済データ・ストアの完全な移行を実行する前に、移行元データ・ストアと移行先データ・ストアのホスト名とデータ・ストア名が同じであることを確認する必要があります。

-renameオプションを使用する場合は、次の点に注意してください。

関連項目

ttBackupttBackup)。ttBackupユーティリティは、データ・ストアをバックアップします。これは特定の状態でデータ・ストアのスナップショットを作成するのに役立ちます。

ttBulkCpttBulkCp)。ttBulkCpユーティリティは、表をASCIIファイルに保存します。これは表への行の追加、プラットフォーム間でのTimesTenデータ・ストアの移行、他のアプリケーションからのデータ・ストアのインポートで役立ちます。

ttRestorettRestore)。ttRestoreユーティリティは、ttBackupユーティリティを使用してバックアップされたデータ・ストアをリストアします。