When a transaction log is marked to be copied, it is placed in a queue, and the copying performed by a separate process, but still running within the SQL Backup Agent service. The details of the target location is stored at that point in time.
When you changed the target location, it does not update the details of the files already in the queue that are still waiting to be copied. That is why SQL Backup attempts to copy the files to the previous target location. After 24 hours, SQL Backup gives up trying to copy the files.
To address this, you will need to update the target location details manually. You can find details of the files in the backupfiles_copylist table, in the SQL Backup local database (a SQL Server Compact database). You can use the sqbdata extended stored procedure to view the contents e.g.
Those entries with a status of 'P' (Pending) means they have not been copied yet, and copyto indicates the target location. Assuming that your previous location was 'g:\backups\copies\' and you now want to copy to 'h:\sqlbackup\copies\', you can use the REPLACE function via sqbdata to perform the change e.g.
When you changed the target location, it does not update the details of the files already in the queue that are still waiting to be copied. That is why SQL Backup attempts to copy the files to the previous target location. After 24 hours, SQL Backup gives up trying to copy the files.
To address this, you will need to update the target location details manually. You can find details of the files in the backupfiles_copylist table, in the SQL Backup local database (a SQL Server Compact database). You can use the sqbdata extended stored procedure to view the contents e.g.
Code: |
EXEC master..sqbdata 'SELECT * FROM backupfiles_copylist' |
Those entries with a status of 'P' (Pending) means they have not been copied yet, and copyto indicates the target location. Assuming that your previous location was 'g:\backups\copies\' and you now want to copy to 'h:\sqlbackup\copies\', you can use the REPLACE function via sqbdata to perform the change e.g.
Code: |
sqbdata 'UPDATE backupfiles_copylist SET copyto = REPLACE(copyto, ''g:\backups\copies\'', ''h:\sqlbackup\copies\'') WHERE status = ''P''' |