15.4.8 Example 7 (using a UAP, all RDAREAs associated with a table are reinitialized, and data is recovered)

In this example, two user RDAREAs (RDAREA1 and RDAREA2) and three user LOB RDAREAs (RDAREA3, RDAREA4, and RDAREA5) are reinitialized and, at the same time, the capacities of the RDAREAs are increased.

Procedure
  1. Use the pdfstatfs command to determine if the HiRDB file system areas have free space.
  2. Prepare the HiRDB file system areas.
  3. Use the pdhold command to shut down RDAREA1 to RDAREA5.
  4. Use the pdcopy command to back up data.
  5. Create a control statements file for the pdrorg command.
  6. Use the pdrorg command to unload the data from TABLE1.
  7. Use the pdclose command to close RDAREA1 to RDAREA5.
  8. Create a control statements file for the pdmod command.
  9. Use the pdmod command to reinitialize RDAREA1 to RDAREA5.
  10. Use the pdopen command to open RDAREA1 to RDAREA5.
  11. Create a control statements file for the pdrorg command.
  12. Use the pdrorg command to reload data for TABLE1.
  13. Use the pdcopy command to back up data.
  14. Use the pdrels command to release RDAREA1 to RDAREA5 from shutdown status.
The procedure step numbers correspond to the paragraph numbers in the explanation that follows. For example, step 3 above is explained in paragraph (3) below.
Organization of this subsection
(1) Use the pdfstatfs command to determine if the HiRDB file system areas have free space
(2) Prepare the HiRDB file system areas
(3) Use the pdhold command to shut down RDAREA1 to RDAREA5
(4) Use the pdcopy command to back up data
(5) Create the control statements file for the pdrorg command
(6) Use the pdrorg command to unload data from TABLE1
(7) Use the pdclose command to close RDAERA1 to RDAREA5
(8) Create the control statements file for the pdmod command
(9) Use the pdmod command to reinitialize RDAREA1 to RDAREA5
(10) Use the pdopen command to open RDAREA1 to RDAREA5
(11) Create the control statements file for the pdrorg command
(12) Use the pdrorg command to reload data into TABLE1
(13) Use the pdcopy command to back up data
(14) Use the pdrels command to release RDAREA1 to RDAREA5 from shutdown status

(1) Use the pdfstatfs command to determine if the HiRDB file system areas have free space

pdfstatfs /rdarea/area01
pdfstatfs /rdarea/area02
pdfstatfs /rdarea/area03
pdfstatfs /rdarea/area04
pdfstatfs /rdarea/area05

Check all the HiRDB files system areas in the RDAREAs to be initialized.

(2) Prepare the HiRDB file system areas

Assume you determined in step (1) that the HiRDB files system areas have no free space. In order to increase the sizes of the RDAREAs when you reinitialize them, you must use one of the following methods to prepare the HiRDB file system areas:

  1. Allocate new HiRDB file system areas that are larger than the existing HiRDB file system areas.
  2. Allocate new HiRDB file system areas in addition to the existing HiRDB file system areas.
  3. Expand the existing HiRDB file system areas.

This example uses method 1 to prepare the HiRDB file system areas.

pdfmkfs -n 100 -l 10 -k DB -i /rdarea/area11
pdfmkfs -n 100 -l 10 -k DB -i /rdarea/area12
pdfmkfs -n 100 -l 10 -k DB -i /rdarea/area13
pdfmkfs -n 100 -l 10 -k DB -i /rdarea/area14
pdfmkfs -n 100 -l 10 -k DB -i /rdarea/area15

(3) Use the pdhold command to shut down RDAREA1 to RDAREA5

pdhold -r RDAREA1,RDAREA2,RDAREA3,RDAREA4,RDAREA5

(4) Use the pdcopy command to back up data

pdcopy -m /rdarea/mast/mast01 -M r -a -b /pdcopy/backup01 -p /pdcopy/list01

Explanation
-m: Specifies the name of the first HiRDB file in the master directory RDAREA.
-M: Specifies the backup acquisition mode.
-a: Specifies that all RDAREAs are to be backed up. When an RDAREA is reinitialized, other RDAREAs are also updated as explained in 6.3 RDAREAs to be backed up together. Therefore, you must also back up other RDAREAs as shown in section 6.3. In this example, all RDAREAs are backed up.
-b: Specifies the name of the backup file.
-p: Specifies the output destination of the pdcopy command's processing results listing.

(5) Create the control statements file for the pdrorg command

A control statements file (/pdrorg/unld01) is created for the unload statement of the pdrorg command. The following are the contents of the control statements file:

unload /unld/unldfile

Explanation
Specifies the name of the unload file.

(6) Use the pdrorg command to unload data from TABLE1

pdrorg -k unld -j -t TABLE1 /pdrorg/unld01

Explanation
-k: Specifies unld for unloading.
-j: Specifies that one of the following types of tables is to be unloaded:
  • Table containing a LOB column
  • Table in which an abstract data type with the LOB attribute is defined
-t: Specifies the name of the table that is to be unloaded.
/pdrorg/unld01: Specifies the name of the control statements file for the pdrorg command created in step (5).

(7) Use the pdclose command to close RDAERA1 to RDAREA5

pdclose -r RDAREA1,RDAREA2,RDAREA3,RDAREA4,RDAREA5

(8) Create the control statements file for the pdmod command

A control statements file (/pdmod/init01) is created for the initialize rdarea statement of the pdmod command. The following are the contents of the control statements file:

initialize rdarea RDAREA1                               1
  with reconstruction                                  2
  file name "/rdarea/area11/file01"                    3
     initial 3000 segments;                            4
initialize rdarea RDAREA2
  with reconstruction
  file name "/rdarea/area12/file01"
     initial 3000 segments;
initialize rdarea RDAREA3
  with reconstruction
  file name "/rdarea/area13/file01"
     initial 3000 segments;
initialize rdarea RDAREA4
  with reconstruction
  file name "/rdarea/area14/file01"
      initial 3000 segments;
initialize rdarea RDAREA5
  with reconstruction
  file name "/rdarea/area15/file01"
      initial 3000 segments;

Explanation
The newly created HiRDB file system areas are allocated for the RDAREAs being reinitialized.
  1. Specifies the RDAREAs being initialized.
  2. Because the file structure is being changed from what it was before reinitialization, specify with reconstruction.
  3. Specifies the HiRDB file comprising the RDAREA.
  4. Specifies the number of HiRDB file segments.

(9) Use the pdmod command to reinitialize RDAREA1 to RDAREA5

pdmod -a /pdmod/init01

Explanation
-a: Specifies the name of the control statements file for the pdmod command created in step (8).
Reference note
When RDAREA1 is reinitialized, the KFPX14255-W, KFPX24231-W, and KFPX24242-W messages are issued, warning of an invalid RDAREA. However, because you are reinitializing RDAREA2 through RDAREA5 at the same time, this does not pose a problem. In addition, when RDAREA2, RDAREA4, and RDAREA5 are being reinitialized, the abstract data type with the LOB attribute is denied access to the index, because the index is incomplete. However, reloading the data in step (12) releases these RDAREAs, so this does not pose a problem either.

(10) Use the pdopen command to open RDAREA1 to RDAREA5

pdopen -r RDAREA1,RDAREA2,RDAREA3,RDAREA4,RDAREA5

(11) Create the control statements file for the pdrorg command

A control statements file (/pdrorg/reld01) is created for the unload, index, and sort statements of the pdrorg command. The following are the contents of the control statements file:

unload /unld/unldfile                      1
index INDEX1 /unld/index_inf               2
sort /tmp/sotwork/,8192                    3

Explanation
  1. Specifies the name of the unload log file.
  2. Specifies an index identifier (INDEX1) and the name of the index information file (/unld/index_inf).
  3. Specifies the name of the work directory for sorting.

(12) Use the pdrorg command to reload data into TABLE1

pdrorg -k reld -j -t TABLE1 /pdrorg/reld01

Explanation
-k: Specifies reld for reloading.
-j: Specifies that one of the following types of tables is to be reloaded:
  • Table containing a LOB column
  • Table in which an abstract data type with the LOB attribute is defined
-t: Specifies the name of the table that is to be reloaded.
/pdrorg/unld01: Specifies the name of the control statements file for the pdrorg command created in step (11).

(13) Use the pdcopy command to back up data

pdcopy -m /rdarea/mast/mast01 -M r -a -b /pdcopy/backup02 -p /pdcopy/list02

When an RDAREA is reinitialized, other RDAREAs are also updated as explained in 6.3 RDAREAs to be backed up together. Therefore, you must also back up other RDAREAs as shown in section 6.3. In this example, all RDAREAs are backed up.

(14) Use the pdrels command to release RDAREA1 to RDAREA5 from shutdown status

pdrels -r RDAREA1,RDAREA2,RDAREA3,RDAREA4,RDAREA5

It is recommended that after the command has executed you check whether or not the execution results are correct. For details on how to check command execution results, see the manual HiRDB Version 8 Command Reference.