Serena製品技術情報(FAQ)


プロジェクトデータベースの移動(コマンドラインを使用)

PVCSのプロジェクトデータベースは、作成されたときの絶対パスに結び付けられています。プロジェクトデータベースを移動させる場合、単純にファイルのコピーや移動では正しく移動できません。

プロジェクトデータベースを移動させる場合、次の方法が使用できます。

このページでは、コマンドラインツールを使用してプロジェクトデータベースを別の環境に移動させる方法を記述します。

重要:パックアップの取得 プロジェクトデータベースの移動は、複雑で危険な操作です。お客様の資産を守るため、プロジェクトデータベース全体のバックアップを必ず取得してください。

移動時に破損したプロジェクトデータベースを元に戻すことはできません。バックアップは非常に重要な操作です。


コマンドラインツールを使用した移動について

プロジェクトデータベースの規模が大きい、移行元環境と移行先のフォルダが異なり、かつ、移行元に移行先と同じフォルダが用意できないなどの場合に使用できます。高速で、システムに対する資源の要求も少なく、自由度が高い方法ですが、作業量は多くなります。


メリット

  • プロジェクトデータベースの規模が大きくても問題が発生しない
  • 移行が高速
  • 要求する資源が少ない
  • 全ての情報が移行できる

デメリット

  • 作業が複雑
  • 設定ファイルの編集を誤ると作業が失敗する

移行手順

  1. データベースをテキストファイルに変換
    移行元の環境で、プロジェクトデータベースをテキストファイルにエクスポートします。エクスポートされたデータには、プロジェクトデータベースの設定などが含まれた、serファイルの情報も含まれています。
     
    pcli exportpdb -pr"データベースパス" -idユーザー名:パスワード -z -f出力先ファイル名.txt
     
    コマンドは一行で入力します。ユーザー名とパスワードは、PVCSのスーパーユーザーの権限が必要です。
    ここで作成されるファイルを、これ以降の説明では、「エクスポートファイル」と記します。
     
  2. プロジェクトデータベースの複製
    移動先の環境に、移動元のプロジェクトデータベース全体をコピーしておきます。コピーが終わったら、プロジェクトデータベースのフォルダにあるserファイルなど、archivesフォルダ、workフォルダ以外を削除しておきます。
     
    最終的に、移動先のプロジェクトデータベースは次のようなフォルダとファイルが格納されるようにします。archivesサブフォルダ、workサブフォルダはコピーした内容をそのまま残します。
     
    移行先のデータベースフォルダ
     +-archives 
      |  +- pdbconfig.cfg
      |  +- pdbaccess.cfg
      |    +-プロジェクトフォルダ
     |  |    +-サブプロジェクトフォルダ
     |  |    |     +-xxx.xxx-arcファイル群
     |  |    |        :
     |  |    +-xxx.xxx-arcファイル群
     |  |        :
     |    +- プロジェクトフォルダ
     |     +--サブプロジェクトフォルダ
     |      +-- xxx.xxx-arcファイル群              
     :
     |              :
     |
     +ー work
           +-プロジェクトフォルダ
        |    +-サブプロジェクトフォルダ
        |    |     +-xxx.xxxファイル群
        |    |        :
        |    +-xxx.xxxファイル群
        |        :
          +- プロジェクトフォルダ
             +--サブプロジェクトフォルダ
               +-- xxx.xxxファイル群                
                    :
  3. パスマップの作成(ファイルサーバー使用時)
    移動先の環境で、移動先のデータベースフォルダにあわせて、パスマップを作成しておきます。
  4. エクスポートファイルのコピーと編集 移動先の環境に、エクスポートファイルをコピーします。
     
    メモ帳でエクスポートファイルを開き、新しい環境に合わせて編集します。
     
    エクスポートファイルで、パスを示す項目を、移行先のパスマップにあわせて書き直します。移行元のパスマップでファイル全体を検索するなどの方法で書き換えを行います。
     
    たとえば、次のような内容だった場合、RootPathやWorkPath、ArchiveLocation、ConfigPathなどが変更の必要な箇所です。
     
    [PDB]
    Version=1.0
    RootPath=\\OLD_SERVER\PVCS\ProjectDB
    RootName=ProjectDatabase
    RootType=file
    [/]
    Type=ProjectRoot
    WorkPath=\\ OLD _SERVER\PVCS\ProjectDB\work
    ArchiveLocation=\\OLD_SERVER\PVCS\ProjectDB\archives
    Name=ProjectDatabase
    VersionSelection=0
    ConfigFlags=3
    ConfigPath=\\OLD_SERVER\PVCS\ProjectDB\archives\cqhqu1t1.cfg
    WorkPathNamespace=0
         :
     
  5. コンフィグレーションファイルの変更
    移動先の環境で、前の手順でコピーしたディレクトリ全体から、拡張子cfgを検索し、メモ帳で内容を確認します。
     
    コンフィグレーションファイル中、ACCESSDB、VCSDIRのエントリを新しい環境のパスマップに書き換えます。
    たとえば、次のような部分です。\\OLD_SERVERとなっている部分が書き換えの必要な箇所です。
     
    ACCESSDB = "\\OLD_SERVER\PVCS\ProjectDB\archives\pdbaccess.db "
    VCSDIR = ;"\\OLD_SERVER\PVCS\ProjectDB\archives/*"
    ~
  6. エクスポートファイルのインポート
    移動先の環境で、書き換え済みのエクスポートファイルをインポートします。
     
    pcli importpdb -pr<新しいデータベースパス> -idユーザー名:パスワード -f エクスポートファイル
     
      例 : pcli importpdb -pr"\\NEW\SAMPLE" -iduser1:user1 -fexport.txt

 
コマンドは一行で入力します。ユーザー名とパスワードは、PVCSのスーパーユーザーの権限が必要です。

これで作業は終了です。PVCSのクライアントから動作を確認します。

この方法では、途中で構成ファイルの手動による変更などが発生します。また、移行のステップは長く複雑です。必ず、事前にテスト環境などで動作を確認し、また、実施前には必ずバックアップの取得を行ってください。