# SQL2428N 归档日志缺失导致在线备份失败

### Issue

"SQL2428N  The BACKUP did not complete because one or more of the requested log files could not be retrieved"

### Solution

Excluding the log backup from the database backup is the only solution that DB2 offers.Moving the log backup to different media is the only work-around that NB can offer

This condition exists because

* Some of the logs were previously backed up to media and removed from disk.

* The database backup was then started and is backing up to the same media.

* Once the database is backed up, DB2 wants to backup the logs that are no longer on disk.

* So DB2 starts a restore which needs the media that is already held by the backup.

Hence you can avoid this problem in three ways.

* Don't do an independent backup of the logs, just back them up with the database.

* Exclude the logs from the database backups (since they are backed up independently).

* Backup the logs to different media than the database.  suggestion backing up to DSU  as long as it stages or duplicates to different media.

Here is the detailed explanation:

As you are backing up DB2 using the NetBackup DB2 agent. Upon a backup job you are seeing that during the backup a restore request kicks in and takes precedence. This in turn causes your backups to fail as the media for the backups is being used for the restore of a log file.

With the introduction of DB2 version 8.2, you were able to if you would like have a cut of the archive logs in the same backup set. However you would have to include in the backup command the following statement "include logs".

From 9.5 the behavior changed in DB2, where now by default the logs are included which says same in the below article

So where in your backup command you have the following:

CMD_LINE="db2 BACKUP DATABASE $MY_DB2$MY_SCHED LOAD \$MY_LIB OPEN 4 SESSIONS BUFFER 1024"

Pre 9.5 you would have to include the logs variable for the backup to include the logs in the backup set. Now it will automatically do this.

What is happening now is, that you are backing up your database and it is by default including a archive log backup to be included in this backup set.

DB2 may decide that another log is required for this backup to complete and hence will restore the log file in order to include it in the backup set.

You have 3 options here:

1. Change the volume pool for the archive logs to be different to the one it is presently in (its in the same as the backup one)

2. Backup your logs to a Disk storage unit.

3. Not use the include logs options (as you were not using it pre 9.5 anyway). To do this you will need to specify the EXCLUDE LOGS parameter in the backup command.

Article URL http://www.symantec.com/docs/TECH170357