DB2_LOAD_COPY_NO_OVERRIDE and controlling non-recoverable load operations
https://www.ibm.com/support/pages/db2loadcopynooverride-and-controlling-non-recoverable-load-operations
Question & Answer
Question
This document addresses the question of whether there is a way to restrict users from using NONRECOVERABLE loads. It also describes the usage of the DB2_LOAD_COPY_NO_OVERRIDE registry variable.
Answer
Is there a way to restrict users from using NONRECOVERABLE loads?
No. The DB2_LOAD_COPY_NO_OVERRIDE registry can be set on the server to automatically convert:
- COPY NO Loads to NONRECOVERABLE loads, or
- COPY NO Loads to COPY YES loads.
How to use DB2_LOAD_COPY_NO_OVERRIDE registry variable
The DB2_LOAD_COPY_NO_OVERRIDE can be set on the server as follows:
db2set DB2_LOAD_COPY_NO_OVERRIDE="COPY YES to <path name>"
... where <path name> is a path that the instance owner has permission on.
Here is an example of how the registry variable can be used:
- Create a directory named /TMP/myinstance that the instance owner has write access to.
- Run the following commands:
db2sampl
db2 update db cfg for sample using LOGRETAIN ON
db2 terminate
db2 backup db sample
db2stop
db2set DB2_LOAD_COPY_NO_OVERRIDE="COPY YES to /TMP/myinstance"
db2start
db2 connect to sample
db2 "export to employee.del of del select * from employee"
db2 "load from employee.del of del modified by coldel, replace into employee COPY NO"
You will note that the COPY NO load above gets converted to a COPY YES and the COPY YES load would be placed on /TMP/myinstance.
Note: The registry variable can be set to any valid COPY YES syntax. Refer to the LOAD command for an example of the COPY YES syntax.