Restore to another server

PowerShell script exchange

Restore to another server

Veeam Logoby userbit » Thu Jun 02, 2016 10:58 pm

What I need to do might have already been discussed here but I couldnt find it

Im not new to SQL or Powershell, but im going through the example here.
However, I am new to Veeam.
https://helpcenter.veeam.com/backup/pow ... store.html

Need to simply restore one or more db's from a production backup to an instance on a development or test server.

Normally I do this:
- connect to the dev server as my own domain account (i have sysadmin rights)
- copy down the backup from the production server to a folder on the dev server
- set to single user mode
- restore/replace the target db using the backup file
- reset to multiuser mode

So my questions are:
- am I correct, ill need to run the powershell script from the server where Veeam is installed? (or run remote on this server from my workstation?)
- in the example above, what is meant by a "restore point", cant I just get the most recent full backup?
- how can I specify the restore to use my domain credentials, seeing as myself or anyone running a powershell script to do this will likely also be a sysadmin on sql
- will sql credentials also be required even if im wanting to do this in the context my my domain account?
- regarding both credential(s) questions, can I just specify "my_domain\my_login" in both to get both credential types?

So a "complete" script might be something like this, assuming I get the "restore point" part figured out, also I dont care about specific point in time, just the previous day's full backup.
So maybe, Ill need a step that gets that?
Code: Select all
$crmdb = Get-VBRApplicationRestorePoint -SQL -Name "CRM-db" | Sort -Descending | Select -First 1
$guestcreds = Get-VBRCredentials -Name "domain\name"
$sqlcreds = Get-VBRCredentials -Name "domain\name"
$target-server = "DEV-SERVER1"
Start-VBRSQLDatabaseRestore -Database $locations -ServerName $target-server -GuestCredentials $guestcreds -SqlCredentials $sqlcreds -ToPointInTime "10/28/2015 12:33:39 PM"
userbit
Lurker
 
Posts: 1
Liked: never
Joined: Thu Jun 02, 2016 10:34 pm

Re: Restore to another server

Veeam Logoby v.Eremin » Fri Jun 03, 2016 10:07 am

- am I correct, ill need to run the powershell script from the server where Veeam is installed? (or run remote on this server from my workstation?)

You can run it either locally or remotely. In the later case leverage Connect-VBRServer commandlet.

- in the example above, what is meant by a "restore point", cant I just get the most recent full backup?

As mentioned in the User Guide, this cmdlet returns restore points of backups that were created with the VSS-aware image processing enabled.

The most recent restore points can be found in the following manner:

Code: Select all
Get-VBRApplicationRestorePoint -SQL -Name "CRM-db" | Sort-Object creationtime -Descending | Select -First 1


- how can I specify the restore to use my domain credentials, seeing as myself or anyone running a powershell script to do this will likely also be a sysadmin on sql
- will sql credentials also be required even if im wanting to do this in the context my my domain account?
- regarding both credential(s) questions, can I just specify "my_domain\my_login" in both to get both credential types?

You have to provide both credentials to authenticate with the target server and credentials to authenticate with the target SQL instance. Otherwise, those would be taken from backup job settings.

The same account can be used twice, if it has required permissions.

Thanks.
v.Eremin
Veeam Software
 
Posts: 13295
Liked: 973 times
Joined: Fri Oct 26, 2012 3:28 pm
Full Name: Vladimir Eremin


Return to PowerShell



Who is online

Users browsing this forum: No registered users and 9 guests