Verifies the integrity of a database backup or restores a full or incremental backup of a database.

Syntax

prorest -help db-namedevice-name{ -vp | -vf | -list } 
                             [ -dbrestrict restrict-type][ -newinstance ][-verbose ]

Parameters

-help
Displays syntax for utility and specified subcommands. If the syntax displayed ends with ellipses, type the command shown followed by -help to view subcommand syntax.
db-name
Specifies the database where you want to restore the backups.
device-name
Identifies the directory pathname of the input device (for example, a tape drive) or a standard file from which you are restoring the data. If device-name identifies a block or character special device, PROREST assumes the device has removable media, such as a tape or a floppy diskette.
-vp
Specifies that the restore utility reads the backup volumes and computes and compares the backup block cyclic redundancy checks (CRCs) with those in the block headers. To recover any data from a bad block, you must have specified a redundancy factor when you performed the database backup. See Backing Up a Database for more information about error correction blocks and data recovery.
-vf
Specifies that the restore utility only compares the backup to the database block for block.
-list
Provides a description of all application data storage areas contained within a database backup. Use the information to create a new structure description (.st) file and database so you can restore the backup.
-dbrestrict restrict-type

Protects the restored database from updates by other users by putting the database in a restricted access mode where restrict-type is one of the following values:

  • datamove — Indicating that the next allowable activity on this database is moving data with the datamove utility
  • partitioncopy — Indicating that the next allowable activity on this database is copying data with the partitionmanage copy utility

Adding -dbrestrict enables the same restrictions as PROUTIL DBRESTRICT. See PROUTIL DBRESTRICT qualifier for details of the restrictions.

-newinstance
Specifies that a new GUID be created for the target database.
-verbose

Displays additional information as the restore is performed, such as:

  • If the target of the restore doesn't exist, -verbose lists the target area size information.
  • For restore full verify (-vf) and restore partial verify (-vp), -verbose displays periodic updates that include the number of blocks verified, the elapsed time, and an estimate of the time remaining given the current rate of progress.

Notes

  • Restore a backup with the same OpenEdge release that you used to perform the backup. In most cases, you can restore a backup with any minor release within the same major release, with the following exceptions:
    • If you enabled a feature, you cannot restore your database to a release that does not support that feature, without first disabling the feature from your database. For example, if your database has Change Data Capture enabled, you cannot restore a backup of that database to an OpenEdge release that does not support Change Data Capture. Be aware that New VST tables are enabled by default starting in Release 11.5, and are a feature under this restriction. Use PROUTIL DESCRIBE to list the features enabled for your database.
    • For online backup ONLY, if you do not specify “bibackup all”, online backup is not backward compatible to releases prior to OpenEdge Release 11.3.0. The “bibackup” qualifier indicates whether to backup the active BI clusters or all the BI clusters. By default, only the active clusters are backed up.
  • When restoring a backup, the target database must contain the same physical structure as the backup version. For example, it must have the same number of storage areas, records per block, and block size.
  • For systems running with an Enterprise license, performing PROREST on an existing database will result in a target database with large file support enabled. For systems running with a sub-Enterprise license, performing PROREST on an existing database will result in a target database with large file support disabled.
    Note: PROREST does not ensure that the target database is sized to hold all the restored data. In the event that the target database is too small, the behavior of PROREST is unchanged, it exits with an error.
  • The -keeptargetlfe parameter is no longer supported. Running PROREST with -keeptargetlfe will no longer have any effect on the resulting database as it did in releases prior to OpenEdge Release 12.0.
  • PROREST creates storage areas that match the information provided by the -list qualifier. However, if you do not create and apply a structure definition (.st) file to your target database, PROREST creates one variable-length extent per area. To have multiple extents, you must create and apply a structure definition file to your target database before performing the restore.

    The following figure shows an example of the output generated by the -list qualifier.

    Table 1. Sample PROREST -list output
    OpenEdge Release 12
                  Area Name: Schema Area
                  Size: 11264, Records/Block: 32, Area Number: 6, Cluster Size: 1
                  Area Name: Info Area
                  Size: 1024, Records/Block: 32, Area Number: 7, Cluster Size: 1
                  Area Name: Customer/Order Area
                  Size: 6656, Records/Block: 32, Area Number: 8, Cluster Size: 8
                  Area Name: Primary Index Area
                  Size: 112, Records/Block: 1, Area Number: 9, Cluster Size: 8
                  Area Name: Customer Index Area
                  Size: 256, Records/Block: 1, Area Number: 10, Cluster Size: 64
                  Area Name: Order Index Area
                  Size: 8192, Records/Block: 32, Area Number: 11, Cluster Size: 64
                  Area Name: Encryption Policy Area
                  Size: 20448, Records/Block: 32, Area Number: 12, Cluster Size: 64
                  Area Name: Audit Area
                  Size: 4608, Records/Block: 32, Area Number: 20, Cluster Size: 8
                  Area Name: Audit Index
                  Size: 8704, Records/Block: 32, Area Number: 22, Cluster Size: 8

    Use the output of PROREST -list to calculate the size of each restored area as follows:

    area-size = (Size / records-per-block) * database-block-size

    For example, the size of the restored schema area is:

    area-size = (Size / records-per-block) * database-block-size
                        1,441,792 = (11264 / 32) * 4096

    If you do not know your database block size, the output of PROREST -vp or -vf provides the information.

  • PROREST restores transaction log (TL) extents.
  • If your database is enabled for transparent data encryption, you must restore your key store file (dbname.ks). You must back up and restore your key store independent of your database using operating system utilities. The key store is not backed up by PROBKUP or restored by PROREST.
  • Before you restore a database, you might want to verify that your backup does not contain any corrupted blocks. You can use the PROREST utility to verify the integrity of a full or incremental backup of a database by using the Partial Verify or Full Verify parameters.
  • The Partial Verify or Full Verify parameters do not restore or alter the database. You must use the PROREST utility separately to restore the database.
  • You can use the Partial Verify parameter with both online and offline backups.
  • Use the Full Verify parameter immediately after performing an offline backup to verify that the backup is correct.
  • PROREST supports the use of internationalization startup parameters such as -cpinternalcodepage and -cpstreamcodepage. See Database Startup Parameters for a description of each database-related internationalization startup parameter.