Redgate Backup - Won't Delete All Files Before Backing Up
JoshDBGuy
Posts: 16
I am running backups to a location with limited storage. Because these backups aren't exactly critical, I only need one backup file. I am setting the program to run and delete existing backup files except for the latest "1" and also with "delete prior to start of backup" enabled. However, when I run this, it keeps the last backup and causing space issues on the drive. How can I change the program to delete all backup files before the program runs? Can i change the step in the job within sql and set it to 0b instead of 1b?
Thanks
Thanks
Comments
You can adjust database/server names for confidentiality.
I know we had an issue with this some time back, but in recent versions no problems.
Be sure to pay attention to any TAPE backup that may be picking up(locking) the previously created file.
You should be able to rename the file as a test to see if it is locked.
DECLARE @exitcode int
DECLARE @sqlerrorcode int
EXECUTE master..sqlbackup '-SQL "BACKUP DATABASES [DB1,DB2,DB3] TO DISK = ''C:\Backup\Full\<database>\<AUTO>.sqb'' WITH ERASEFILES_ATSTART = 1b, PASSWORD = ''<ENCRYPTEDPASSWORD>xxxxxxxxxxx</ENCRYPTEDPASSWORD>'', CHECKSUM, DISKRETRYINTERVAL = 30, DISKRETRYCOUNT = 10, KEYSIZE = 256, THREADCOUNT = 23"', @exitcode OUT, @sqlerrorcode OUT
IF (@exitcode >= 500) OR (@sqlerrorcode <> 0)
BEGIN
RAISERROR ('SQL Backup failed with exit code: %d SQL error code: %d', 16, 1, @exitcode, @sqlerrorcode)
END
I also double checked and no tape backups are running or did run at the same time.
This assumes we are running a daily backup (every 24 hours) and wish to always have at least 1 complete backup available on disk.
If you wish to essentially overwrite the previous backup you can simply set this value to less than your expected backup schedule.
So if you are running a daily backup, try