前のトピック: dbmgr -export 機能 - データベースを定義するスクリプトの作成次のトピック: dbmgr -util 機能 - 既存のデータベースの管理


dbmgr -migrate 機能 - フラット ファイルへのデータのコピー

dbmgr ‑migrate は、既存のデータベースにあるユーザ レコードおよびプログラム レコードのデータをフラット ファイル(バイナリ形式)にコピーする機能です。 フラット ファイルのデータを新しいデータベースにコピーすることもできます。 データのインポート元のデータベースは、バージョン 1.21 以上である必要があります。

フラット ファイルから新しいデータベースにデータをコピーする場合は、フラット ファイルを作成したバージョンと同じバージョンのコピー機能を使用する必要があります。 バージョンが複数ある場合は、最新バージョンを使用することを強くお勧めします。

注:セキュリティ上の理由から、古いデータベースから新しいデータベースにデータをコピーした後に、古いデータベース、新しいデータベースの作成に使用したスクリプト、およびこの機能を使用して作成したフラット ファイルを削除してください。

重要: この機能を使用する前に、必ずデータベースのバックアップを作成してください。

このコマンドの形式は以下のようになります。

dbmgr {migrate|‑m} {-r|-w|-h} [-s] filename ¥
[-v versionNumber] [-f fileName]
-migrate|-m

dbmgr ユーティリティのデータベース移行機能を実行します。

filename

データのコピー元またはコピー先のフラット ファイルを指定します。

‑f filename

標準出力デバイスではなく、指定されたファイルに出力を送信します。

‑h

この機能のヘルプを表示します。

‑r

現在のディレクトリにあるデータベースを読み取り、filename で指定されたフラット ファイルに特定のデータをコピーします。

‑s

データベースを直接読み取るのではなく、CA ControlMinder サーバを使用してデータベースの情報を読み取ります。 このオプションは、‑r スイッチと同時に指定した場合のみ有効です。

このオプションを使用するには、端末に対する管理者権限と、R(読み取り)および W(書き込み)のアクセス権が必要です。

このオプションを指定しない場合、現在のディレクトリにあるデータベースに対して読み取りまたは書き込みが行われます。

-v versionNumber

旧バージョンで作成されたフラット ファイルを読み取ります。 このオプションは、-w スイッチと同時に指定した場合にのみ有効です。 このオプションをファイル名の後に入力し、バージョン番号を指定します。

‑w

filename で指定されたフラット ファイルを読み取り、現在のディレクトリにあるデータベースにデータをコピーします。

例: 既存のデータベースから新しいデータベースへのデータのコピー

以下の手順では、既存のデータベースから新しいデータベースにデータをコピーする方法を示します。 古いデータベースは /tmp/old_db ディレクトリにあるとします。 新しいデータベースは ACInstallDir/seosdb ディレクトリにあるとします(ACInstallDir は CA ControlMinder のインストール ディレクトリです)。

注: この手順では UNIX のパス名を使用していますが、パス名を適切に変更することで Windows にも適用できます。

  1. スーパーユーザとしてログインします。
  2. CA ControlMinder デーモンが実行中の場合は、以下のコマンドを入力して停止します。
    secons ‑s
    
  3. 古いデータベースを別の場所またはバックアップ用のメディアにコピーして、バックアップを作成します。
  4. データベースを /tmp/old_db にコピーします。次に、古いデータベースに対して dbmgr ユーティリティを実行して、古いデータベースを複製するスクリプトを作成します。
    cd /tmp/old_db
    /opt/CA/AccessControl/bin/dbmgr ‑export ‑l -f lang_script
    
  5. 新しいデータベースを作成します。
    cd /opt/CA/AccessControl/seosdb
    /opt/CA/AccessControl/bin/dbmgr -c -cq
    
  6. 前の手順で生成されたスクリプトを実行して、新しいデータベースを作成します。
    cd /opt/CA/AccessControl/seosdb
    /opt/CA/AccessControl/bin/selang ‑l /tmp/old_db/lang_script
    
  7. dbmgr ユーティリティを実行して、古いデータベースのデータを保存するフラット ファイルを作成します。
    cd /tmp/old_db
    /opt/CA/AccessControl/bin/dbmgr ‑migrate ‑r flat_file
    
  8. 新しいデータベースにフラット ファイルのデータをロードします。
    cd /opt/CA/AccessControl/seosdb
    /opt/CA/AccessControl/bin/dbmgr ‑migrate ‑w /tmp/old_db/flat_file