This process restores a database that was backed up by using the db2
backup command. The restored database starts back the same state that it was in when the
online backup was made.
Before you begin
- You must have an existing Db2
Warehouse backup that is accessible on the Cloud Pak for Data system.
- You must identify the Db2
Warehouse catalog node and data nodes and have an SSH
connection open to each node. For more information, see Preparing to back up or restore Db2 Warehouse.
About this task
For a Db2
Warehouse deployment, the db2 restore command can be started
only from the catalog node but each available multiple logical node (MLN) participates in the
restore operation.
Restriction: A full database restore operation can be run only in offline mode.
Procedure
-
From a bash shell on each of the nodes specified in the
db2nodes.cfg
file,
switch to the database instance owner. Confirm that the directory that contains the database backup
exists and is mounted. For example:
su - db2inst1
cd /backup_dir/backup_nnn
Where
backup_dir is the directory that you create to hold backup images and
nnn is an incremental value that was used to put each backup in a separate
subdirectory. The backups can be in any directory on the cluster that is shared by the container
nodes and has sufficient space to hold the backups. If you restore a backup from a different
directory location, alter these commands as necessary.
-
Temporarily disable the built-in HA:
sudo wvcli system disable -m "Disable HA before Db2 maintenance"
-
Connect to the database:
-
On the catalog node, find all the applications that are connected to Db2
Warehouse:
db2 list applications
This command returns a list of all
currently connected applications. You can either stop all the connections by closing the
applications, or you can enter the following command to disconnect all
connections:
db2 force application all
-
Issue the terminate database command:
-
Stop the database:
db2stop force
Ensure that the command completes on all nodes.
-
Ensure that all Db2
Warehouse interprocess communications are cleaned for the
instance:
-
Turn off all communications to the database by setting the value of the DB2COMM variable to
null:
-
Restart the database in restricted access mode:
db2start admin mode restricted access
-
Run the restore operation:
-
Run the following command on the catalog node:
db2_all "<<+0<db2 RESTORE DATABASE BLUDB FROM backup_dir TAKEN AT backup_image_timestamp INTO BLUDB REPLACE EXISTING WITHOUT PROMPTING"
Where backup_dir is the full path to the directory where your backup images
are located, and backup_image_timestamp is the associated timestamp on those
backup image files. The timestamp is displayed after successful completion of a backup operation,
and is part of the path name for the backup image.
-
For multinode configurations, run the following command on each of the other data nodes:
db2_all "<<-0<db2 RESTORE DATABASE BLUDB FROM backup_dir TAKEN AT backup_image_timestamp INTO BLUDB REPLACE EXISTING WITHOUT PROMPTING"
-
After the commands are complete, rollforward the database by running the following command on
the catalog node:
db2 rollforward db BLUDB to end of backup on all dbpartitionnums and stop
-
Stop the database:
db2stop force
Ensure that the command completes on all nodes.
-
Ensure that all Db2
Warehouse interprocess communications are cleaned for the
instance:
- Reinitialize the Db2
Warehouse communication manager to
accept database connections:
-
Restart the database for normal operation:
db2start
The online database restore operation is complete.
-
Activate the database:
-
Re-enable the Wolverine high availability monitoring process:
wvcli system enable -m "Enable HA after Db2 maintenance"
-
Connect to the database:
What to do next
For more information about advanced command options, see the RESTORE DATABASE command