About this task
You can use the Rational® Synergy pack and unpack commands
to duplicate an existing DCM database. The database that is to be
packed must be initialized to use DCM. Also, there must be an active
server and sufficient disk space where the database is to be unpacked.
You cannot pack a database from a Windows® server and unpack it on a UNIX® server.
The
pack operation includes the generate_directory and receive_directory.
Therefore, all outstanding transfers or receives must be resolved
before packing the database.
Note: When a Rational Synergy database is
unpacked or copied, the project work area paths of new database are
the same as the work area paths in the original database. To avoid
possible conflicts, these paths must be changed before the new database
is used.
To create a DCM database using
the pack and unpack commands:
- Make sure there are no active sessions running on
the database that is to be packed.
- Protect the database that is to be packed.
- Pack the DCM database:
>
ccmdb pack database_path /to packfile
For Windows, database_path must
be a UNC path.
The resulting packed file is called database_name.cpk.
- Unpack the DCM database, and give it a new name:
> ccmdb unpack database_name.cpk /t new_database_path\new_database_name
/s server_name
For Windows, new_database_path must
be a UNC path.
- Change the work area paths.
- Change the DCM database ID:
- Start a session on the new database as ccm_admin.
- Protect the new database.
- Open the Change DCM database ID or Delimiter dialog.
- Select the option Change database ID
without updating any objects.
- Change the database ID to an ID that is unique in
the DCM cluster.
- Click OK.
- Exit from the session.
- Set up the original database to send transfer packages
to the new database:
- Unprotect the original database.
- Start a session on the original database.
- Protect the original database so that no one else
can start a session on it.
- Create a destination database definition for the
new database.
- Create and add objects to transfer sets for any
transfer packages to be sent from the original to the new database.
- Initialize the new transfer sets.
- Generate transfer packages for each new transfer
set, with Last Generated Time set to Current Time.
This operation prevents unnecessary transfers (that is, objects in
the newly unpacked database is not sent by the original database).
Moreover, only objects that have changed since the original database
was unprotected are eligible to be transferred to the new database.
- Exit from the session.
- Unprotect the new database.
- Set up the new database to send transfer packages
to the original database (optional).
- Start a session on the new database.
- Protect the new database so that no one else can
start a session.
- Create a destination database definition for the
original database.
- Create and add objects to transfer sets for any
transfer packages to be sent from the new to the original database.
- Initialize the new transfer sets.
- Generate transfer packages for each new transfer
set, with Last Generated Time set to Current
Time. This operation prevents unnecessary transfers (that
is, objects that were obtained from the original database are not
sent back to it). Moreover, only objects that have changed since the
new database was unprotected are eligible to be transferred to the
original database.
- Exit from the session.
- Unprotect the new database.
- Unprotect the original database.