Backup Restorations

  • Quick question. 

    So I know to do a point in time restoration you need to restore the Full, then a differential then every Log up to the poin tin time. 

    BUT  if a customer takes one full backup a week, then a differential 2 times a day and i needed to restore.  Do i need to need to run every diff backup up to the latest, or do i need to just apply the latest diff.  I believe that the diff is everything up until the latest full backup?

    Just wanted to confirm. 

    For a project I require the ability to keep the db up to date everyday of the week for testing purposes,  am i able to restore the diffs every day up until the weekly full?

    Cheers

  • Andrew.weckermann - Tuesday, March 19, 2019 12:52 PM

    Quick question. 

    So I know to do a point in time restoration you need to restore the Full, then a differential then every Log up to the poin tin time. 

    BUT  if a customer takes one full backup a week, then a differential 2 times a day and i needed to restore.  Do i need to need to run every diff backup up to the latest, or do i need to just apply the latest diff.  I believe that the diff is everything up until the latest full backup?

    Just wanted to confirm. 

    For a project I require the ability to keep the db up to date everyday of the week for testing purposes,  am i able to restore the diffs every day up until the weekly full?

    Cheers

    You are correct. Just the latest differential. If you are keeping a database up to date and you have restored it with recovery and want to apply a new later differential, you need to restore the last full before the differential and then the latest differential.

    Sue

  • Thanks sue, what if I am attempting to restore a large database and I want to reduce the time it takes to bring up it up to speed for a migration at the end of the week. Could I restore a full backup with no recovery and then restore daily differentials until the last day and then the last diff I can restore with recovery to bring it online? Would that work?

  • Andrew.weckermann - Tuesday, March 19, 2019 2:19 PM

    Thanks sue, what if I am attempting to restore a large database and I want to reduce the time it takes to bring up it up to speed for a migration at the end of the week. Could I restore a full backup with no recovery and then restore daily differentials until the last day and then the last diff I can restore with recovery to bring it online? Would that work?

    Yes. Or just the last differential since you are restoring that anyway at the end. But as long as it's in the correct order and you are restoring with norecovery (or standby) and no other full backups happened in between the differentials, you can restore those differentials. 

    Sue

  • Sue_H - Tuesday, March 19, 2019 2:30 PM

    Andrew.weckermann - Tuesday, March 19, 2019 2:19 PM

    Thanks sue, what if I am attempting to restore a large database and I want to reduce the time it takes to bring up it up to speed for a migration at the end of the week. Could I restore a full backup with no recovery and then restore daily differentials until the last day and then the last diff I can restore with recovery to bring it online? Would that work?

    Yes. Or just the last differential since you are restoring that anyway at the end. But as long as it's in the correct order and you are restoring with norecovery (or standby) and no other full backups happened in between the differentials, you can restore those differentials. 

    Sue

    So could i just confirm,  If i restore a Diff it is the differences from the Last Full,  if I restore a diff after i have restored an earlier diff does it just restore the differences from the last diff or will it do all of the differences from the full again?  the reason i am asking is that if it restores everything from the last Full then i am going to gain no benefit from restoring diffs everyday i may as do the last diff i need if there is going to be no time saving?

  • Andrew.weckermann - Wednesday, March 20, 2019 3:44 AM

    Sue_H - Tuesday, March 19, 2019 2:30 PM

    Andrew.weckermann - Tuesday, March 19, 2019 2:19 PM

    Thanks sue, what if I am attempting to restore a large database and I want to reduce the time it takes to bring up it up to speed for a migration at the end of the week. Could I restore a full backup with no recovery and then restore daily differentials until the last day and then the last diff I can restore with recovery to bring it online? Would that work?

    Yes. Or just the last differential since you are restoring that anyway at the end. But as long as it's in the correct order and you are restoring with norecovery (or standby) and no other full backups happened in between the differentials, you can restore those differentials. 

    Sue

    So could i just confirm,  If i restore a Diff it is the differences from the Last Full,  if I restore a diff after i have restored an earlier diff does it just restore the differences from the last diff or will it do all of the differences from the full again?  the reason i am asking is that if it restores everything from the last Full then i am going to gain no benefit from restoring diffs everyday i may as do the last diff i need if there is going to be no time saving?

    It is everything since the last full backup.

    Thanks

  • But it's not everything after the DIF.  That's what transaction log files are used for... to decrease the RPO.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.
    "Change is inevitable... change for the better is not".

    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)
    Intro to Tally Tables and Functions

  • Andrew.weckermann - Wednesday, March 20, 2019 3:44 AM

    Sue_H - Tuesday, March 19, 2019 2:30 PM

    Andrew.weckermann - Tuesday, March 19, 2019 2:19 PM

    Thanks sue, what if I am attempting to restore a large database and I want to reduce the time it takes to bring up it up to speed for a migration at the end of the week. Could I restore a full backup with no recovery and then restore daily differentials until the last day and then the last diff I can restore with recovery to bring it online? Would that work?

    Yes. Or just the last differential since you are restoring that anyway at the end. But as long as it's in the correct order and you are restoring with norecovery (or standby) and no other full backups happened in between the differentials, you can restore those differentials. 

    Sue

    So could i just confirm,  If i restore a Diff it is the differences from the Last Full,  if I restore a diff after i have restored an earlier diff does it just restore the differences from the last diff or will it do all of the differences from the full again?  the reason i am asking is that if it restores everything from the last Full then i am going to gain no benefit from restoring diffs everyday i may as do the last diff i need if there is going to be no time saving?

    Each diff has the changes since the last full so each diff gets larger and larger. You wouldn't save time by restoring each diff since you are restoring the last one.
    For some larger databases to save time like you are doing and to be current when you cut over, you can just restore last full, restore last diff and then restore the transaction logs since the last diff. You can restore multiple diffs after the last full but I'm not sure why you would.

    Sue

Viewing 8 posts - 1 through 7 (of 7 total)

You must be logged in to reply to this topic. Login to reply