データベースの複製
次の形式のttRepAdminを使用すると、マスター・データベースと同じコンテンツを持つ新しいデータベースを作成できます。
ttRepAdmin -duplicateを実行するには、次の条件を満たす必要があります。
-
インスタンス管理者のみが
ttRepAdmin -duplicateを実行できます。 -
ttRepAdmin -duplicateを実行するには、インスタンス管理者のオペレーティング・システム・ユーザー名がソース・コンピュータとターゲット・コンピュータで同じである必要があります。 -
-UIDオプションおよび-PWDオプションを使用して、ソース・データベースに対してADMIN権限を持つ内部ユーザーのユーザー名およびパスワードを指定する必要があります。 -
ターゲット・ホストに対して
ttRepAdminを実行する必要があります。 -
DSNの指定は、サーバーDSNではなく、ダイレクトモードDSNである必要があります。
ttRepAdmin -duplicateコマンドを実行する前に、ttStatusを使用して、ソース・データベースに対してレプリケーション・エージェントが起動していることを確認します。
ttRepAdmin -duplicate -from srcDataStoreName -host srcDataStoreHost [-localIP localIPAddress] [-remoteIP remoteIPAddress] [-setMasterRepStart | -noSetMasterRepStart] [-ramLoad] [-delXla] -UID userId (-PWD pwd | -PWDCrypt encryptedPwd) [-drop { [owner.]table ... | [owner.]sequence |ALL }] [-truncate { [owner.]table ... | ALL }] [-compression 0 | 1] [-bandwidthmax maxKbytesPerSec] [ ( -activeDataGuard [-cacheUid cacheUid [-cachePwd cachePwd]] | -initCacheDr [-cacheUid cacheUid [-cachePwd cachePwd]] [-noDRTruncate] [-nThreads] | ( -keepCG [-cacheUid cacheUid [-cachePwd cachePwd]] ( [-recoveringNode | -deferCacheUpdate] ))| -nokeepCG ) ] [-remoteDaemonPort portNo] [-verbosity {0|1|2}] [-localhost localHostName] [-open | -close] {destDSN | -connStr connection_string}
オプション
ttRepAdmin -duplicateには、次のオプションがあります。
| オプション | 説明 |
|---|---|
|
|
ユーザー接続に対してデータベースをクローズします。 データベースがユーザー接続に対してクローズされると、新しい接続の試行は失敗しますが、既存の接続に影響はありません。 |
|
|
複製処理によって |
|
|
複製処理中の圧縮を有効または無効にします。デフォルトは |
|
|
複製先データベースの接続文字列(データベースの場所、ドライバ、および必要に応じてその他の接続属性設定を指定するODBC接続文字列)を指定します。 |
|
|
複製処理の一部として、すべてのXLAブックマークを削除します。このオプションは、複製データベースにブックマークをコピーしない場合に使用します。 |
|
|
新しいデータベースのデータソース名を示します。 |
|
|
|
|
|
ネットワーク間でデータベースの内容を転送するために、指定したデータベースの複製をレプリケーションを使用して作成します。『Oracle TimesTen In-Memory Databaseレプリケーション・ガイド』の「データベースの複製」を参照してください。 |
|
|
|
|
|
送信側データベース(またはマスター・データベース)のホスト名または |
|
|
障害時リカバリを初期化します。キャッシュ管理者のユーザーIDとパスワードを指定する必要があります。
パスワードを指定しなかった場合、 |
|
|
パスワードを指定しなかった場合、 Oracle Databaseに接続できない場合またはOracle Databaseが停止している場合は、 |
|
|
|
|
|
使用するローカル・ネットワーク・インタフェースの別名またはIP( |
|
|
|
|
|
|
|
|
ユーザー接続に対してデータベースをオープンします。 作成時、デフォルトでデータベースはユーザー接続に対してオープンです。 |
|
|
|
|
|
|
|
|
複製処理の完了時に、メモリー内にデータベースを保持します。このオプションによって、大規模なデータベースをコピーする場合にデータベースのアンロードとリロードのサイクルが回避され、複製処理のパフォーマンスが改善されます。複製オプションの後、データベースのRAMポリシーは |
|
|
リモート・メイン・デーモンのポート番号。 このオプションの引数に指定された値が0(ゼロ)以外の場合、その値をポート番号として使用します。値が0(ゼロ)の場合は、デフォルトの動作を使用してポート番号を決定します。
|
|
|
使用するリモート/接続先ネットワーク・インタフェースの別名またはIP( |
|
|
これはデフォルトでオンになっています。
この動作を行わない場合は、 |
|
|
|
|
|
|
|
|
ソース・データベースに対して |
|
|
複製処理で実行される通信段階の詳細を表示し、複製の転送の進捗情報をレポートします。
|
例
データベースの複製
ソース・データベースで、次のように入力してユーザーを作成し、そのユーザーにADMIN権限を付与します。
CREATE USER sampleuser IDENTIFIED BY sampleuser; User created. GRANT admin TO sampleuser;
インスタンス管理者のユーザー名が、複製元と複製先のインスタンスで同じである必要があります。インスタンス管理者としてログインして、server1のds1データベースをds2データベースに複製します。
% ttRepAdmin -duplicate -from ds1 -host "server1"
-UID sampleuser -PWD sampleuser
-connStr "dsn=ds2;UID=sampleuser;PWD=sampleuser" キャッシュ・グループを持つデータベースの複製
データベースを複製するときにキャッシュ・グループ表を保持するには、-keepCGオプションを使用します。-cacheuidオプションおよび-cachepwdオプションで、キャッシュ管理ユーザーIDおよびパスワードを指定します。キャッシュ管理ユーザーのパスワードを指定しなかった場合は、ttRepAdminからパスワードの入力が求められます。
キャッシュ管理ユーザーIDがorauserで、パスワードがorapwdである場合、host1のデータベースdsn1を複製します。
% ttRepAdmin -duplicate -from dsn1 -host host1 -uid sampleuser -pwd sampleuser
-keepCG -cacheuid orauser -cacheuid orapwd "DSN=dsn2;UID=;PWD="
dsn2のUIDおよびPWDは、インスタンス管理者である現在のオペレーティング・システム・ユーザーとして接続が確立されるように、接続文字列でNULL値として指定されます。インスタンス管理者のみがttRepAdmin -duplicateを実行できます。dsn2がPWDではなくPWDCryptで構成されている場合は、接続文字列がDSN=dsn2;UID=;PWDCrypt=となります。
ソース・データベースのレプリケーション状態の設定
-setMasterRepStartオプションによって、srcDataStoreNameデータベースのレプリケーション状態がネットワーク間でコピーされる前にStart状態に設定され、メモリーにデータベースが保持されます。これにより、複製処理後にマスターに対して行われた更新がサブスクライバに確実にコピーできます。
ローカル・ホストをホスト名またはIPアドレスで識別するには、-localhostオプションを使用します。これらのオプションを使用すると、複製処理後にリモート・データベースで行われたすべての更新が、新しく作成またはリストアされたローカル・データベースにレプリケートされます。
ttRepAdmin -duplicate -from srcDataStoreName -host srcDataStoreHost -setMasterRepStart -ramLoad -UID timesten_user -PWD timesten_user] -localhost localHostName [destDSN | -connStr connection_string ]
ノート
このユーティリティでは、データベースに一時表定義は複製できますが、一時表の内容はレプリケートしません。
このユーティリティを使用して、TimesTenのメジャー・リリースをまたいでデータベースを複製することはできません。