Removing a DPM recovery point
We had a situation where we needed to delete a recovery point. Of course there is no way to do it using the GUI and Technet has an awesome (useless) explanation on how to do it using powershell
After a little searching I found this blog entry which works perfectly. In short here are the steps for removing a recovery point. As some point I may write an interactive script to simplify everything. I modified the code from the original blog posting to add the array number in front of the output to make things a little easier.
Get a list of protection groups and display them.
$pgList = get-protectiongroup SERVERNAME
$i=0;foreach($pg in $pgList){write-host (“{0} : {1}” -f $i, $pg.friendlyname);$i++}
Get a list of data sources for the protection group you want (replace the x with the number next to the protection group) and display them.
$dsList = get-datasource $pglist[x]
$i=0;foreach($ds in $dsList){write-host (“{0} : {1}” -f $i, $ds.name);$i++}
Next, get a list of recovery points for the data source (replace the x again).
$rpList = get-recoverypoint $dslist[x]
$i=0;foreach($rp in $rpList){write-host (“{0} : {1}” -f $i, $rp.representedpointintime);$i++}
Now we are at the point where we can actually remove the recovery point.
remove-recoverypoint -recoverypoint $rpList[x] -confirm
Thanks again to the original blog poster.
This is very helpful, however, note that this only includes recovery points on local disk. To examine recovery points stored online in Azure, you need to include the -Online parameter to the Get-RecoveryPoint cmdlet. Ditto for tape (no pun intended)… you’ll need to use the -Tape parameter. What I do not know and haven’t been able to test is if the Remove-DPMRecoveryPoint will work for online recovery points. The help for the cmdlet explicitly mentions “tape or disk”, and does not make any mention of “online”.