Kbase 13867: How to move the location of an extent in a multi-volume db.
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  5/10/1998 |
|
How to move the location of an extent in a multi-volume db.
How Can I Move One of the Extents In Our Multi-Volume Database?
If you are attempting to move one or more of the extents in
your multi-volume database, you have two options. Since the
pathname to each extent is hard coded in the dbname.db file,
you cannot simply move the extent to its new location.
** For version 7.3A or higher, there is an undocumented repair feature
offered for the prostrct utility. For more information on this
feature, please refer to a separate kbase entry on "prostrct repair".
1. If the extent you are trying to move is the LAST extent
AND it does not and never has contained any data, then you
can do the following:
A. Remove the last extent in your multi-volume structure:
prostrct remove <dbname> <type>
where <type> is either "d" for a data extent or "bi" for
a bi extent.
B. Create a structure file that contains only the extent(s)
you are going to add.
Example - new.st:
d /usr1/dev/dbname.d7
This will add a variable length extent to /usr1/dev.
C. Add the extent(s) to your current structure:
prostrct add <dbname> new.st
D. Verify that the extent has been successfully added by
typing:
prostrct list <dbname>
This will rewrite the original <dbname>.st file with
the current structure of the multi-volume database.
2. If the last extent has had data at some point, or if you
are trying to move an extent other than the last one, or if
you are trying to move more than one extent, you have two
options:
A. If you have enough disk space for two copies of your
database, you should:
1. Create a new structure file: newdb.st
2. Type: prostrct create newdb
3. Procopy your original database into the new structure.
procopy olddb newdb
B. If you don't have enough disk space for two copies of
your database, you should:
1. Create a backup of your original database using
probkup: probkup dbname /dev/device
2. Create a second backup of your database using tar
or cpio (in the event that there is any problem
with the first backup).
3. Delete your current database from the system including
all of its extents.
4. Create a new structure file: newdb.st
5. Type: prostrct create newdb
6. Restore your probkup copy of your database into the new
database structure: prorest newdb /dev/device
revised 7/17/96-rve
Progress Software Technical Support Note # 13867