mkreplica

複製を作成します。

適用性

製品名 コマンド タイプ
MultiSite multiutil サブコマンド
プラットフォーム
UNIX
Windows

概要

  • 既存のデータベースを複製し、新規の複製オブジェクトと複製作成パケットを生成します。
    mkrep/lica

    -exp/ort[
    -cl/an clan-name ] [ -site site-name ] -fam/ily family-name
    -u/ser username [-p/assword ] password
    [-max/size size ] [-c/omments comments ]
    [-size id-block-size ] [ -thres/hold id-block-threshold ]
    {
    {-sh/ip | -fsh/ip} -wor/kdir temp-dir-pname
    [-sc/lass storage-class ]
    [ -pex/pire date-time ]
    [-not/ify e-mail-addr ]
    | -out packet-file-pname } hostname:site-name ...

  • 複製作成パケットをインポートして、新規のユーザー データベースの複製と新規のスキーマ リポジトリの複製を作成します。
    mkrep/lica

    -imp/ort
    { -site site-name-repo/sitory db-info [ -vendor
    vendor-type ] db-params
    }
    { [ -data/base db-info [ -vendor vendor-type ] db-params
    [ -c/omments comments ] { packet-file-pname|packet-dir-path }...

  • 複製作成パケットをインポートして、現在のサイト内の既存のスキーマ リポジトリと同じ所属に新規複製を作成します。
    mkrep/lica

    -imp/ort {
    [-cl/an clan-name ] [ -site site-name ] -u/ser username
    [-p/assword ] password { -data/base db-info
    [ -vendor vendor-type ] db-params
    [ -c/omments comments ] { packet-file-pname|packet-dir-path }...

説明

注: 所属の最初のデータベースの複製を作成する前に、所属させるデータベース セットをまず活動化する必要があります。最新バージョンのスキーマを使用するように、複製するデータベースをアップグレードする必要もあります。

mkreplica -export コマンドは、時間がかかることがあります。エクスポートを処理中は、データベースとスキーマ リポジトリはロックされます。mkreplica -export を実行する前に、すべてのユーザーがログアウトしていることを確認してください。

新規複製の作成は、3 つのフェーズのプロセスです。

  1. mkreplica -export コマンドは、指定されたユーザー データベースとその関連スキーマ リポジトリの内容を複製します。これにより、1 つ以上の他のサイトに送信するための、単一論理複製作成パケットが生成されます。1 つの論理パケットを複数の物理ファイルに分割できます。(-fship-ship を使用すると、mkreplica は、各物理パケットの発送オーダー ファイルも生成します。)
    注: 1 つの mkreplica -export コマンドで複数の複製を作成するほうが、複数の mkreplica -export コマンドを使用するより効率的です。
  2. パケットが 1 つ以上の他のサイトに送信されます。
  3. 各受信サイトで、同じオペレーティング システム コード ページを実行しているシステムから、複製作成パケットがエクスポートされたことを、mkreplica -import コマンドで最初に確認します。エクスポート側とインポート側のコード ページが一致しない場合、新規複製は作成されません。 不一致がない場合、-import コマンドでは複製作成パケットを使用して、新規複製が作成されます。新規複製は、スキーマ リポジトリとユーザー データベースの、2 つの複製データベースから構成されます。このコマンドは、既存のスキーマ リポジトリの同じ所属内のファミリーにユーザー データベースの複製を追加する場合は、異なります。

空の製造元データベースの作成

新規の各サイトで、管理者は複製データ用の空の製造元データベースを作成する必要があります。これが新規サイト内の最初の複製の場合、スキーマ リポジトリの複製用に 1 つと、ユーザー データベースの複製用に 1 つの、少なくとも 2 つの空の製造元データベースが必要です。

注: 新規ユーザー データベースの複製を既存のサイトに追加する場合、スキーマ リポジトリ用の製造元データベースを作成する必要はありません。新規のユーザー データベースの複製をサイト内の既存のスキーマ リポジトリと関連付けることができます。

Oplog 情報

データベースの複製を初めて作成するときに、データベースの操作ログ (oplog) が有効に設定されます。複製されるすべての操作が oplog に記録されます。操作のロギングは、すべての複製が削除されて、元のデータベース セットのみが残るまで継続されます。追加複製の作成は、oplog 項目に記録されます。既存の複製は、標準同期メカニズムを使用して新規複製を確認します。

注: mkreplica -export コマンドを入力する前に、MultiSite ライセンスが元のサイトにインストールされていることを確認してください。元のデータベース セットを活動化すると、開発者は、MultiSite ライセンス (Rational® ClearQuest® ライセンスに加え) がないと、データベース セットにアクセスできません。MultiSite ライセンスは mkreplica -export の実行にも必要です。

複製への ID ブロックの割り振り

MultiSite は、各複製に割り振られるレコード ID 番号の数を管理します。この割り振りは、ID ブロック (ID のグループ) を使用して行われます。

デフォルトでは、各複製には作成時に、4096 個の ID の ID ブロックが付与されます。 複製が 1024 の残存 ID 数のしきい値に達すると、4096 個の ID の別の ID ブロックが割り振られて、すべての ID がユニークであるようにします。ID ブロックの割り振りは、同期中に作業スキーマ リポジトリによって内部的に処理されます。

複製ファミリーのアクティビティ レベルにより、複製に割り振られる ID ブロックのサイズを増加するのに役立つ場合があります。例えば、デフォルトの設定では、多数の問題点を送信する場合、初めの 4096 は正常に送信されますが、その後の送信は失敗します。

複製に割り振られる ID の数は、mkreplica -export コマンドで複製を作成するときに、-size オプションを -threshold オプションと組み合わせて使用して管理することができます。この設定は、chreplica コマンドで変更できます。

複製作成パケット

mkreplica -export を呼び出すたびに、単一の論理複製作成パケットが作成されます。(これは、1 つの mkreplica コマンドで複数の新規複製を作成する場合にも当てはまります。)各パケットには 1 つ以上の複製仕様が含まれていて、それぞれが新規複製の名前と新規複製に関連した同期サーバーを指示します。

ユーザー データベースとスキーマ リポジトリは、エクスポート フェーズ中、ロックされています。

-maxsize オプションは、転送メディアの制限に準拠するように、単一論理パケットを複数の物理パケットに分割します。

失敗したインポートからの回復

複製のインポートが何らかの理由で中断または失敗した場合 (例えば、停電など)、製造元データベースを削除し、失敗したインポート操作用に製造元データベースを新たに作成して、mkreplica -import を再実行する必要があります。

スキーマ リポジトリは正常にインポートする可能性がありますが、ユーザー データベースの複製のインポートは失敗します。この場合、ユーザー データベースの複製用に意図していた製造元データベースを削除して、再作成する必要があります。

使用済みパケットのクリーンアップ

複製作成パケットはインポート後、削除されません。mkreplica -import を使用して複製作成パケットをインポートした後、そのパケットを削除する必要があります。

パケット配信障害のエラー処理

パケットを配信できない場合は、ストア アンド フォワード機能を使用して、元の複製のサイトの管理者に送り返します。メール メッセージがストア アンド フォワード管理者に送信されます。これは、パケットを繰り返し配信しようとして失敗し、割り当てられた時間が経過した後に発生します。また、宛先ホストが不明かまたはデータ ファイルが存在しない場合にも発生することがあります。ストア アンド フォワード設定で、有効期限、管理者の電子メール アドレス、通知プログラムを指定します。

制限

ロック: このコマンドは、データベースがロックされている場合 (例えば、アップグレード処理中)、または、別の Rational ClearQuest MultiSite 操作が実行されている場合は、失敗します。

その他: 異なるバージョンの MultiSite を実行するホストにデータベースを複製することはできません。 mkreplica -export はどのサイトでも実行できますが、常に作業スキーマ リポジトリのサイトで実行して、同じ名前で複数のサイトを作成しないようにする必要があります。

オプションと引数 : エクスポート フェーズ

所属、サイト、ファミリーの指定

デフォルト
所属: このサイトで複製された最初の所属です。このホストに複数のデータベース セット接続が登録されている場合は、-clan を指定する必要があります。

サイト: 現在のサイトです。このホストに複数のサイトがある場合は、-site を指定する必要があります。

ファミリー: デフォルトはありません。ファミリーを指定する必要があります。

-cl/an clan-name
複製の所属の名前。
-site site-name
複製のサイトの名前。
-fam/ily family-name
ユーザー データベース ファミリー: ユーザー データベースの作成時に付けられたデータベース名。

スキーマ リポジトリ ファミリー: 適用されない。mkreplica を実行する場合、指定したユーザー データベース ファミリーの関連スキーマ リポジトリが、複製作成パケットに組み込まれます。

デフォルト: なし。

ユーザー名とパスワードの指定

デフォルト
ユーザー名とパスワードを指定する必要があります。
-u/ser user
スーパー ユーザー権限を持つユーザーの名前です。
-p/assword password
指定したユーザーに関連付けられたパスワードです。

複製作成パケット サイズの指定

デフォルト
-maxsize を指定しない場合、使用する発送方法によってデフォルトのパケット サイズが異なります。
  • -ship-fship を指定して作成されたパケットは、MultiSite コントロール パネルで指定された最大パケット サイズを超えることはありません。
  • -out を指定して作成されたパケットの大きさは、2 GB を超えることはありません。

    mkreplica コマンドは、使用するシステムでサポートされるサイズより大きなパケットを作成しようとすると失敗します。

-max/size size
物理パケットの最大サイズ。以下のように、数値の後に単一文字を続けて表現します。
500k
500 キロバイト
20m
20 メガバイト
1.5g
1.5 ギガバイト

コメントの指定

デフォルト
なし。
-c/omments comments
複製の情報と共に保管するコメント。

ID ブロック割り振りの指定

デフォルト
ID ブロック サイズは 4096 で、ID ブロックしきい値は 25 パーセントです。
-size id-block-size
ID ブロックのサイズ。1 から 1023 までの任意の数値を入力できます。id-block-size の値を 100 倍すると、実際の ID ブロック サイズとなります。例えば、30,000 の ID ブロックを指定するには、数値 300 を使用します。25,000 の ID ブロックを指定するには数値 250 を使用します。
-thres/hold id-block-threshold
複製に割り振られたレコード ID 番号の数。id-block-threshold は、パーセントを表す整数で指定します。1 から 63 までの任意の数値を入力できます。使用される残存 レコード ID 数が現在の ID ブロック サイズの指定されたパーセンテージより下がった場合、追加ブロックが割り振られます。

複製作成パケットの処理

デフォルト
なし。mkreplica -export で作成された複製作成パケットの保管および他のサイトへの送信方法を指定する必要があります。
-shi/p -fsh/ip
複製作成パケットを、ストア アンド フォワード記憶ベイ内の 1 つ以上のファイルに保管します。各物理パケットには別個の発送オーダー ファイルが付随して、配信する時期と場所を指示します。

-fship (強制配送) は shipping_server を起動して、複製作成パケットを送信します。-ship は記憶ベイにパケットを配置します。パケットを送信するには、shipping_server を起動します。

記憶ベイが配置されているディスク パーティション (送信ホストと受信ホスト上) には、複製作成パケットのサイズ以上の使用可能なスペースが必要です。

-wor/kdir temp-dir-name
mkreplica によって一時ワークスペースとして使用されるディレクトリ。mkreplica が完了すると削除されます。このディレクトリは、事前に存在していてはなりません。
-sc/lass storage-class
パケットと発送オーダーの記憶クラスを指定します。mkreplica は MultiSite コントロール パネル (Windows) または shipping.conf ファイル (LINUX および UNIX) から記憶クラスを検索して、使用する記憶ベイの場所を判別します。

デフォルト: mkreplica は、cq_default クラスに指定された記憶ベイにパケットを入れます。

-out packet-file-pname
最初の物理複製作成パケットの名前。追加パケットは、packet-file-pname_2packet-file-pname_3、(以下同様) の名前のファイルに格納されます。

複製作成パケットは自動的に配信されません。配信するには適切な方法を使用します。-out を指定してパケットを作成し、その後ストア アンド フォワード機能を使用して配信できます。

パケット配信のエラー処理

デフォルト
パケットを配信できない場合、ストア アンド フォワード機能を使用して、元の複製のサイトの管理者に送信されます。メール メッセージがストア アンド フォワード管理者に送信されます。これは、パケットを繰り返し配信しようとしてすべて失敗し、割り当てられた時間が経過した後に発生します。また、宛先ホストが不明かまたはデータ ファイルが存在しない場合にも発生することがあります。ストア アンド フォワード設定で、有効期限、管理者の電子メール アドレス、通知プログラムを指定します。
-pex/pire date-time
ストア アンド フォワード機能がパケットの配信を停止して、エラーのメール メッセージを生成する時間を指定します。このオプションは、shipping.conf ファイル (Linux および UNIX) または MultiSite コントロール パネル (Windows) で記憶クラスに指定した有効期限を無効にします。

date-time 引数は、以下のどの形式でもかまいません。

date.time | date | time | now
ここで
date:
= day-of-week | long-date
time:
= h[h]:m[m][:s[s]] [UTC [ [ + | - ]h[h][:m[m] ] ] ]
day-of-week:
= today |yesterday |Sunday | ... |Saturday |Sun | ... |Sat
long-date:
= d[d]-month[-[yy]yy]
month:
= January |... |December |Jan |... |Dec

time は、現地のタイム ゾーンに合わせた 24 時間形式で指定します。time を省略した場合、デフォルト値は 00:00:00 です。date を省略した場合、デフォルト値は today です。世紀、年、特定の日付を省略した場合は、最新のものが使用されます。タイム ゾーンに関係なく同じ時刻を適用する場合は、UTC を指定します。UTC 時間に対して正のオフセットを指定するにはプラス (+) 演算子を、負のオフセットを指定するにはマイナス (-) 演算子を使用します。時間や分のオフセットを付けないで UTC を指定すると、デフォルト設定はグリニッジ標準時 (GMT) になります。(協定世界時 (UTC) 1970 年 1 月 1 日以前の日付は無効です。)

  • 22-November-2002
  • sunday
  • yesterday.16:00
  • 0
  • 8-jun
  • 13:00
  • today
  • 9-Aug.10:00UTC
-not/ify e-mail-address
配信エラー メッセージが、指定された電子メール アドレスに送信されます。

電子メール通知が無効の Windows ホストでエラーが発生した場合、メッセージは Windows イベント ビューアに表示されます。メッセージには、このオプションで指定された e-mail-address 値と、操作の状態をこのユーザーに通知することを要求する注記が含まれています。

複製仕様

デフォルト
なし。
hostname:site-name...
1 つ以上の引数。それぞれの引数がこのパケットから別のサイト作成される 1 つの新規複製を示します。
hostname
新規複製の同期サーバー。hostname は、異なるドメイン内のホストで使用できる必要があります。ストア アンド フォワード メカニズムで、更新パケットを複製にルーティングする方法を判別するために使用されます。ただし、サイトでストア アンド フォワードを使用しない場合でも、この情報は正確に保持してください。

hostname は、ホストの IP アドレスでもコンピュータ名 (例えば、minuteman) でもかまいません。 IP ドメイン名 (例えば、minuteman.purpledoc.com) を付加する必要がある場合があります。

Linux 版および UNIX システム版では、uname -n コマンドを使用して、コンピュータ名を表示します。Windows 版では、コンピュータ名は [コントロール パネル] の [システム] アイコンからアクセスできます。 Windows 2000 版では、[ネットワーク ID] タブをクリックします。Windows NT Server 2003 版では、[コンピュータ名] タブをクリックします。

site-name
複製が multiutil コマンドで識別される名前。 サイト名は識別子でなければならず、長さは最大 50 文字です。この名前はそれぞれの所属内でユニークでなければなりません。同じ所属に参加する 2 つのサイトが同じ名前であってはなりません。

オプションと引数 : スキーマ リポジトリとユーザー データベースの場合のインポート フェーズ

サイトとデータベース情報の指定

デフォルト
なし。
-site site-name
複製がインポートされるサイトの名前。サイト名は、複製がエクスポートされるときに、複製に指定されています。サイト名が不明の場合は、エクスポート サイトの管理者にお問い合わせください。
-repo/sitory db-info
使用する製造元データベースのデータベース情報。
製造元データベース
dbinfo 値
DB2®
データベース名
Oracle
SID (Oracle システム ID)
SQL Server
物理データベース名
-vendor vendor-type
使用するデータベースの種類。サポートされる製造元タイプは、DB2、ORACLE、SQL_SERVER です。
db-params
必須のデータベース パラメータは、任意の Rational ClearQuest データベースに接続するのに必要なパラメータと同じです。複製をインポートする先の製造元データベースを作成する場合は、これらのパラメータをメモします。

複製をインポートする場合は、スキーマ リポジトリの複製用の製造元データベースとユーザー データベースの複製用の製造元データベースのデータベース パラメータを指定する必要があります。複製パケットをインポートする前に、これらのデータベースを作成する必要があります。

製造元データベース
db-params 値
DB2
-server server-name -dbologin dbo-name [ dbo-pwd ] [-connectopts connect-options ]
Oracle
-server server-name -dbologin dbo-name dbo-pwd [-connectopts connect-options ]
SQL Server
-server server-name -dbologin dbo-name [ dbo-pwd ] [-connectopts connect-options ]
-data/base db-info
使用する製造元データベースのユーザー データベース情報。
製造元データベース
dbinfo 値
DB2
データベース名
Oracle
SID (Oracle システム ID)
SQL Server
物理データベース名
-c/omments comments
複製の情報と共に保管するコメント。

複製作成パケットの場所の指定

デフォルト
なし。
packet-file-pname | packet-dir-path ...
複製作成パケットのパス名を指定します。複数のディスク ファイルにまたがる論理パケットの場合、mkreplica は、packet-file-pname が含まれるディレクトリから関連する物理パケットをスキャンします。

1 つ以上の packet-dir-path 引数も指定する場合、mkreplica はこれらのディレクトリから追加パケットを検索します。

オプションと引数 : ユーザー データベースのインポートのみの場合のインポート フェーズ

ユーザー データベース ファミリーを既存の所属に追加する場合、ユーザー データベースの複製用のみの製造元データベースを作成する必要があります。

所属とサイトの指定

デフォルト
所属: このサイトで複製された最初の所属です。このホストに複数のデータベース セット接続が登録されている場合は、-clan を指定する必要があります。

サイト: 現在のサイトです。このホストに複数のサイトがある場合は、-site を指定する必要があります。

-cl/an clan-name
複製の所属の名前。
-site site-name
複製のサイトの名前。

ユーザー名とパスワードの指定

デフォルト
ユーザー名とパスワードを指定する必要があります。
-u/ser user
スーパー ユーザー権限を持つユーザーの名前です。
-p/assword password
指定したユーザーに関連付けられたパスワードです。

データベース情報の指定

-data/base db-info
使用する製造元データベースのユーザー データベース情報。
-vendor vendor-type db-params
使用するデータベースの種類を入力します。サポートされる製造元タイプは、DB2、ORACLE、SQL_SERVER です。
if -vendor == DB2,
db-info := データベース エイリアス (IBM® ドライバ) またはデータベース名 (DataDirect ドライバ)
db-params := -server server-name
-dbo/login dbo-name [ dbo-pwd ]
[ -con/nectopts connect-options ]
if -vendor == ORACLE,
db-info := Oracle SID
db-params := -server server-name
-dbo/login dbo-name [ dbo-pwd ]
[ -con/nectopts connect-options ]
if -vendor == SQL_SERVER,
db-info := 物理データベース名
db-params := -server server-name
-dbo/login dbo-name [ dbo-pwd ]
[ -con/nectopts connect-options ]

DB2、Oracle、Microsoft SQL Server の db-infodb-params の指定

データベース製造元ごとに デフォルトのポート番号があります。

表 1. データベース製造元のデフォルトのポート番号
製造元 デフォルト ポート
DB2 50000
Oracle 1521
Microsoft SQL Server 1433

ご使用のデータベースが別のポートを使用する場合は、 connect-options パラメータを使用してそのポートを指定してください。例えば、 ポート 1526 に Oracle データベースを使用する場合は、次のコマンドを入力します。

multiutil mkreplica -imp -site SITEA -repo CQDEV -server cqsvr3 -vendor ORACLE -dbo admin_1 admin_1 -con PORT=1526 -data CQDEV -server cqsvr3 -vendor ORACLE -dbo admin_2 admin_2 -con PORT=1526 C:¥TEMP¥admin¥mk_SITEA.xml

重要: 各製造元データベース ごとのサポートされる値について詳しくは、ヘルプの「Rational ClearQuest の管理」セクションにある「製造元データベースのプロパティ」のトピックを 参照してください。

-c/omments comments
複製の情報と共に保管するコメント。このコメントはインポート サイトのスキーマ リポジトリ データベースに保管され、Rational ClearQuest Designer の [データベースのプロパティ] ウィンドウに表示されます。

複製作成パケットの場所の指定

packet-file-pname|packet-dir-path ...
複製作成パケットのパス名を指定します。複数のディスク ファイルにまたがる論理パケットの場合、mkreplica は、packet-file-pname が含まれるディレクトリから関連する物理パケットをスキャンします。

1 つ以上の packet-dir-path 引数も指定する場合、mkreplica はこれらのディレクトリから追加パケットを検索します。

デフォルト: なし。

以下の例では、読みやすいように行を分けてあります。各コマンドは、1 行に入力しなければなりません。

エクスポート

  • 複製 boston_hub で、ファミリー DEV に関する複製作成パケットを生成して sanfran_hub という名前の新規複製を作成します。 新規複製の同期サーバーは goldengate です。

    multiutil mkreplica -export -clan telecomm -site boston_hub -family DEV
    -u susan -p passwd -out c:¥cqms¥boston_hub.xml goldengate:sanfran_hub

    Multiutil: パケット ファイル `c:¥cqms¥boston_hub.xml' が生成されました

  • 複製 boston_hub で、複製 sanfran_hub でインポートされたときに、ファミリー LAB のデータベースの複製を作成するパケットを生成します。

    multiutil mkreplica -export -clan telecomm -site boston_hub -family LAB
    -user susan -p passwd -out c:¥cqms¥lab.xml goldengate:sanfran_hub

    Multiutil: パケット ファイル `c:¥cqms¥lab.xml' が生成されました

  • 複製 tokyo で、複製 sydney 用の複製作成パケットを生成し、-fship を使用してそのパケットを即時に転送します。

    multiutil mkreplica -export -clan testing -site tokyo -family TEST
    -user masako -p passwd -fship -workdir c:¥cqms¥working -sclass
    cq_default taronga:sydney

    Multiutil: パケット ファイル `c:¥cqms¥working¥mk_TOKYO_29-January-02_09-47-27.xml' が生成されました
    multiutil: Shipping order
    "C:¥temp¥cqms¥ms_ship¥outgoing¥sh_o_mk_TOKYO_29-January-02_09-47-27.xml"
    generated.
    multiutil: Attempting to forward/deliver generated packets...
    multiutil:   -- Forwarded/delivered packet
    C:¥temp¥cqms¥ms_ship¥outgoing¥mk_TOKYO_29-January-02_09-4

  • 前述の例と同様ですが、パケット ファイルは、後でストア アンド フォワード機能によって後で発送するために記憶ベイに入れられます。

    multiutil mkreplia -export -clan telecomm -site boston_hub -family DEV
    -user susan -password passwd -c "make a new replica for sanfran_hub"
    -ship -workdir c:¥temp¥working -sclass cq_default
    -pexpire 22-November-2003
    goldengate:sanfran_hub

インポート

  • 新規データベースの複製 sanfran_hub とその関連スキーマ リポジトリの複製を SQL Server データベースにインポートします。

    multiutil mkreplica -import -site sanfran_hub
    -repository sanfran_schemarepo
    -vendor SQL_SERVER -server sb_server -dbologin jcole passwd
    -database sanfran_userdb -vendor SQL_SERVER
    -dbologin jcole passwd

  • 所属 testing のサイト sydney の一部である新規ユーザー データベースの複製をインポートします。新規ユーザー データベースの複製は SQL Server データベースにインポートされます。

    multiutil mkreplica -import -clan testing -site sydney -user bfife
    -p passwd -database syd_userdb -vendor SQL_SERVER
    -dbologin bfife passwd


フィードバック