290
Dell EMC Microsoft Application Agent Version 4.7 SQL Server User Guide 302-005-215 REV 03

Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Dell EMC Microsoft Application AgentVersion 4.7

SQL Server User Guide302-005-215

REV 03

Page 2: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Copyright © 2014-2019 Dell Inc. or its subsidiaries. All rights reserved.

Published January 2019

Dell believes the information in this publication is accurate as of its publication date. The information is subject to change without notice.

THE INFORMATION IN THIS PUBLICATION IS PROVIDED “AS-IS.“ DELL MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND

WITH RESPECT TO THE INFORMATION IN THIS PUBLICATION, AND SPECIFICALLY DISCLAIMS IMPLIED WARRANTIES OF

MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. USE, COPYING, AND DISTRIBUTION OF ANY DELL SOFTWARE DESCRIBED

IN THIS PUBLICATION REQUIRES AN APPLICABLE SOFTWARE LICENSE.

Dell, EMC, and other trademarks are trademarks of Dell Inc. or its subsidiaries. Other trademarks may be the property of their respective owners.

Published in the USA.

Dell EMCHopkinton, Massachusetts 01748-91031-508-435-1000 In North America 1-866-464-7381www.DellEMC.com

2 Microsoft Application Agent 4.7 SQL Server User Guide

Page 3: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The Microsoft application agent for Data Domain Boost with SQL Server generalarchitecture................................................................................................................45The Microsoft application agent for Data Domain Boost with SQL Server - CLRAssembly architecture................................................................................................ 46ProtectPoint with RecoverPoint environment............................................................ 63ProtectPoint with RecoverPoint architecture............................................................ 65ProtectPoint with VMAX on the primary and secondary sites.................................... 69ProtectPoint with multiple VMAX arrays on the same site..........................................70ProtectPoint with VMAX architecture........................................................................ 72ProtectPoint backup to a secondary Data Domain in an SRDF configuration..............73ProtectPoint backup to a primary or secondary Data Domain in an SRDF configuration................................................................................................................................... 74Federated backup command and data flow................................................................ 89Data Domain Boost - Backup-General page............................................................... 101Data Domain connection list and lockbox settings.....................................................103Data Domain - Add Data Domain server details......................................................... 103Data Domain Boost - Backup-Options page.............................................................. 105Data Domain Boost - Backup-Monitor page.............................................................. 107ProtectPoint - Backup-General page......................................................................... 141ProtectPoint - Backup-Options page........................................................................ 143Data Domain connection list and lockbox settings..................................................... 144ProtectPoint - Add Data Domain Server details........................................................ 145Data Domain server name......................................................................................... 145RecoverPoint connection list and lockbox settings....................................................147ProtectPoint - Add RecoverPoint Server details....................................................... 147ProtectPoint - Backup-Monitor page........................................................................ 149Data Domain Boost - Database Restore-General page.............................................. 166Specifying the restore point......................................................................................168Data Domain Boost - Database Restore-Files page................................................... 169Data Domain Boost - Database Restore-Options page............................................... 171Data Domain Boost - Database Restore-Monitor page.............................................. 174Data Domain Boost - Table Restore-General page.....................................................187Data Domain Boost - Table Restore-Options page.................................................... 189Data Domain Boost - Table Restore-Monitor page.................................................... 190ItemPoint Data Wizard: select the source files...........................................................191ItemPoint Data Wizard: select the target server....................................................... 192ProtectPoint - Database Restore-General page........................................................ 201Specifying the restore point..................................................................................... 203ProtectPoint - Database Restore-Files page............................................................ 204Microsoft app agent for Storage Direct - Database Restore-Options page.............. 205ProtectPoint - Database Restore-Monitor page....................................................... 208ProtectPoint - Volume Restore page.........................................................................217ProtectPoint - Volume Restore-Files page................................................................ 219ProtectPoint - Volume Restore-Options page.......................................................... 220ProtectPoint - Volume Restore-Monitor page.......................................................... 222ProtectPoint - Table Restore General page.............................................................. 230Microsoft app agent for Storage Direct: Table Restore-Options page......................232ProtectPoint - Table Restore-Monitor page............................................................. 234ItemPoint Data Wizard: select the source files......................................................... 235ItemPoint Data Wizard: select the target server.......................................................236ItemPoint Data Wizard: select the source files......................................................... 239ItemPoint Data Wizard: select the target server.......................................................240vProxy Engine: Database Restore General page....................................................... 248

1

2

3456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950

FIGURES

Microsoft Application Agent 4.7 SQL Server User Guide 3

Page 4: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifying the restore point..................................................................................... 249vProxy Engine: Database Restore Files page.............................................................251vProxy Engine: Database Restore Options page....................................................... 252vProxy Engine: Database Restore Monitor page.......................................................255vProxy Engine: Table Restore General page............................................................. 263vProxy Engine: Table Restore Options page............................................................. 264vProxy Engine: Table Restore Monitor page.............................................................266ItemPoint Data Wizard: select the source files......................................................... 267ItemPoint Data Wizard: select the target server.......................................................268ItemPoint Data Wizard: select the source files.......................................................... 271ItemPoint Data Wizard: select the target server....................................................... 272

5152535455565758596061

FIGURES

4 Microsoft Application Agent 4.7 SQL Server User Guide

Page 5: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Revision history...........................................................................................................13Style conventions........................................................................................................14General configuration file parameters.........................................................................49Primary system configuration file parameters............................................................ 50Network connection types in a ProtectPoint with RecoverPoint environment........... 64General configuration file parameters.........................................................................65Primary system configuration file parameters............................................................ 66RecoverPoint cluster configuration file parameters.................................................... 67ProtectPoint with VMAX technology..........................................................................68Network connection types in a ProtectPoint with VMAX environment........................71General configuration file parameters......................................................................... 77Primary system configuration file parameters.............................................................77VMAX configuration file parameters........................................................................... 78Supported special characters .................................................................................... 90Supported special characters ................................................................................... 139Restore parameters to point to a secondary DD system............................................199Return codes and description................................................................................... 278Return codes and description................................................................................... 278

123456789101112131415161718

TABLES

Microsoft Application Agent 4.7 SQL Server User Guide 5

Page 6: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

TABLES

6 Microsoft Application Agent 4.7 SQL Server User Guide

Page 7: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

3

5

Preface 13

Configuring the Microsoft Application Agent 17

Configuring the Data Domain System 19Installing and upgrading the Data Domain operating system.......................20Configuring the Data Domain system......................................................... 20

Opening ports in a firewall to enable Data Domain backups........... 20Enabling Data Domain Boost for on a Data Domain system ...........20Configuring the Data Domain Boost server.................................... 23Data Domain replication................................................................. 31Configuring usage limits of Data Domain resources....................... 32

Configuring the Data Domain Cloud Tier for data movement to the cloud....36

Setting up the DD Cloud Tier policy for data movement to the cloud...................................................................................................... 36

Distributed segment processing..................................................................37Distributed segment processing enabled mode..............................38Distributed segment processing disabled mode............................. 38

Advanced load balancing and link failover................................................... 38Configuration restrictions..............................................................39

Encrypted managed file replication.............................................................40Data Domain High Availability..................................................................... 40Validating the Data Domain system............................................................. 41Troubleshooting the Data Domain system................................................... 41

Configuring Data Domain Boost 43Overview of Data Domain Boost with SQL Server...................................... 44Architecture of the Microsoft application agent for Data Domain Boost withSQL Server.................................................................................................45SQL Server transparent data encryption.................................................... 46Configure a user with the required privileges for SQL Server Data DomainBoost operations.........................................................................................47

Required privileges to perform backup and recovery of a standaloneserver............................................................................................ 47Required privileges to perform backup and recovery of an AlwaysOn availability group...................................................................... 48Required privileges to perform backup and recovery of a FailoverCluster Instance or Always On Failover Cluster Instance............... 48Required privileges to view and delete save sets with the DataDomain Boost expiry tool (ddbmexptool) ......................................48Required user privileges to manage save sets and list client andstorage unit information with msagentadmin.exe ..........................49

Figures

Tables

Part 1

Chapter 1

Chapter 2

CONTENTS

Microsoft Application Agent 4.7 SQL Server User Guide 7

Page 8: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Adding a user to a Windows policy.................................................49Create a configuration file.......................................................................... 49Configuring the lockbox.............................................................................. 51

Commands to create and manage the lockbox............................... 51Create a lockbox............................................................................54

Configure prerequisites to back up and restore Always On availability groups...................................................................................................................55Parsing TSQL operational output into multiple tables................................. 57

Configuring ProtectPoint 59Overview of ProtectPoint with SQL Server................................................60Supported configurations of ProtectPoint with SQL Server....................... 61Configuring ProtectPoint with RecoverPoint............................................. 62

ProtectPoint with RecoverPoint overview.....................................62ProtectPoint with RecoverPoint connectivity requirements..........64ProtectPoint with RecoverPoint architecture................................64Create a ProtectPoint with RecoverPoint configuration file..........65

Configuring ProtectPoint with VMAX.........................................................68ProtectPoint with VMAX overview................................................ 68ProtectPoint with VMAX connectivity requirements..................... 70ProtectPoint with VMAX architecture............................................71VMAX replication........................................................................... 72Install and configure the VMAX Solutions Enabler......................... 75Create a ProtectPoint with VMAX configuration file......................76

Configuring the lockbox..............................................................................79Commands to create and manage the lockbox...............................79Create a lockbox............................................................................82

Configure prerequisites to back up and restore Always On availability groups...................................................................................................................83Parsing TSQL operational output into multiple tables................................. 83

Backing Up SQL Server 85

Backing Up SQL Server with Data Domain Boost 87Overview of Data Domain Boost with SQL Server backups........................ 88

Federated backups of Always On availability groups......................88Best practices to back up SQL Server with Data Domain Boost................. 89Naming conventions for backups with Data Domain Boost.........................90Circumstances that promote SQL Server backups to level full ...................91Scheduling backup jobs...............................................................................91

Scheduling SQL Server backups by using SQL Server Agent......... 91Scheduling SQL Server backups by using Windows Task Scheduler..99

Performing manual backups ...................................................................... 99Perform backups with the Microsoft app agent for ApplicationDirect SSMS plug-in.................................................................... 100Back up SQL Server with the Data Domain Boost backup command.....................................................................................................108Perform backups with T-SQL scripts............................................ 115

Listing backups.......................................................................................... 119List backups and save files with the msagentadmin administrationcommand...................................................................................... 119List backups with the Data Domain Boost expiry tool................... 122

Move and recall save sets on a Data Domain Cloud Tier............................ 124

Chapter 3

Part 2

Chapter 4

CONTENTS

8 Microsoft Application Agent 4.7 SQL Server User Guide

Page 9: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Move save sets to the Data Domain Cloud Tier............................ 125Recall save sets from the Data Domain Cloud Tier....................... 125Optional parameters for the msagentadmin administrationcommand..................................................................................... 126

Deleting backups....................................................................................... 127Delete backups with the msagentadmin administration command....127Delete backups with the ddbmexptool expiry tool........................ 129

Backing Up SQL Server with ProtectPoint 135Overview of SQL Server backups with ProtectPoint.................................136ProtectPoint backup workflow..................................................................136

ProtectPoint with RecoverPoint backup workflow.......................136ProtectPoint with VMAX backup workflow.................................. 137

Best practices to back up SQL Server with ProtectPoint.......................... 137RecoverPoint on XtremeIO backup considerations................................... 138Naming conventions for backups with ProtectPoint................................. 139Backing up SQL Server with ProtectPoint................................................ 140

Back up SQL Server with the Microsoft app agent for StorageDirect SSMS plug-in.................................................................... 140Back up SQL Server with the ProtectPoint backup command..... 150Back up SQL Server with T-SQL scripts...................................... 153

List backups with the msagentadmin command........................................ 154Examples of the msagentadmin list command.............................. 155Optional parameters to list backups with the msagentadmincommand .................................................................................... 155

Deleting backups....................................................................................... 157Delete backups with the msagentadmin command....................... 157Delete backups using T-SQL scripts.............................................159

Restoring SQL Server 161

Restoring Data Domain Boost Backups 163Best practices to restore SQL Server with Data Domain Boost.................164Restoring SQL Server databases ..............................................................164

Prerequisites................................................................................ 164Restore a database with the Microsoft app agent for ApplicationDirect plug-in............................................................................... 165Perform database restores with the Microsoft application agent forData Domain Boost recover command..........................................174Perform database restores with T-SQL scripts............................ 182

Performing table-level recovery................................................................ 185Table-level restore workflow........................................................ 186Launching the Microsoft app agent for Application Direct SSMSplug-in.......................................................................................... 186Configure general table restore settings...................................... 186Configure optional table restore settings..................................... 188Monitor the table restore mount operation ................................. 190Restore table-level data using ItemPoint......................................190

Performing SQL Server disaster recovery.................................................193Perform SQL Server disaster recovery.........................................193Perform disaster recovery from the Data Domain Cloud Tier....... 193

Chapter 5

Part 3

Chapter 6

CONTENTS

Microsoft Application Agent 4.7 SQL Server User Guide 9

Page 10: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restoring ProtectPoint Backups 195ProtectPoint restore workflow..................................................................196

ProtectPoint with RecoverPoint restore workflow.......................196ProtectPoint with VMAX restore workflow.................................. 196

Best practices to restore SQL Server with ProtectPoint...........................197Restore a backup from a secondary Data Domain system......................... 198Restoring SQL Server databases..............................................................200

Restoring SQL Server databases using the Microsoft app agent forStorage Direct SSMS plug-in...................................................... 200Restore SQL Server databases using the ProtectPoint restorecommand.....................................................................................209Restore SQL Server databases with T-SQL scripts...................... 214

Performing rollback restores.....................................................................215Considerations for rollback restores.............................................215Relocating volumes to an alternate LUN during a VMAX rollbackrestore......................................................................................... 215Perform rollback restores with the Microsoft app agent for StorageDirect SSMS plug-in.....................................................................216Perform rollback restores with the ProtectPoint restore command...222Restore SQL Server volumes with T-SQL scripts........................ 227Confirming the status of a rollback restore.................................. 227

Restore an availability group to an alternate instance...............................228Restoring SQL Server table-level data......................................................229

Restore SQL Server table-level data with the Microsoft app agentfor Storage Direct SSMS plug-in................................................. 229Restore SQL Server table-level data with ProtectPoint commands...237Managing mounted backups ....................................................... 240

Performing SQL Server disaster recovery with ProtectPoint................... 242

Restoring Virtual Machine Backups with vProxy Engine 245Overview of SQL Server virtual machine restore operations ....................246Prerequisites............................................................................................ 246Restoring SQL Server databases to a virtual machine...............................247

Restore a SQL Server databases with the vProxy Engine SSMSplug-in......................................................................................... 247Restore a SQL Server database with the vProxy Engine recovercommand.....................................................................................256

Performing SQL Server table-level recovery to a virtual machine............. 261Restore SQL Server tables with the vProxy Engine SSMS plug-in....262Restore SQL Server tables with the vProxy Engine recovercommand.....................................................................................269

Troubleshooting 275

Troubleshooting Resources 277Error codes in the msagentadmin administration command output...........278Expiry tool command return (error) codes................................................278

Troubleshooting Data Domain Boost Issues 281SQL Server Management Studio plug-in is hidden....................................282

Chapter 7

Chapter 8

Part 4

Chapter 9

Chapter 10

CONTENTS

10 Microsoft Application Agent 4.7 SQL Server User Guide

Page 11: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Instant file initialization warning appears.................................................. 282

Troubleshooting ProtectPoint Issues 283Troubleshooting mount failures................................................................ 284SQL Server Management Studio plug-in is hidden....................................286Failed to set up SymAPi handle: Unable to list VMax arrays :SYMAPI_C_NO_SYMM_DEVICES_FOUND............................................ 286Rollback restore fails with the error "The process cannot access the file"....286ResyncLuns: SymSnapvxControl failed for Target Device = 01441. Error:The Device(s) is (are) already in the desired state or mode......................287Rollback restore fails when the VMAX LUNs are unavailable.................... 287The log file contains messages about VSS snapshot failure with code0x80042306............................................................................................. 288Registry keys are overwritten when the Solutions Enabler is installed afterthe Microsoft application agent................................................................289Remove the link between the source devices and the backup (FTS) deviceson Data Domain and terminate the snapvx session................................... 290

Chapter 11

CONTENTS

Microsoft Application Agent 4.7 SQL Server User Guide 11

Page 12: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CONTENTS

12 Microsoft Application Agent 4.7 SQL Server User Guide

Page 13: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Preface

As part of an effort to improve product lines, periodic revisions of software andhardware are released. Therefore, all versions of the software or hardware currently inuse might not support some functions that are described in this document. Theproduct release notes provide the most up-to-date information on product features.

If a product does not function correctly or does not function as described in thisdocument, contact a technical support professional.

Note

This document was accurate at publication time. To ensure that you are using thelatest version of this document, go to the Support website https://www.dell.com/support.

PurposeThis document describes how to configure and use the Microsoft application agent toback up and restore Microsoft SQL Server.

AudienceThis document is intended for the user who configures and uses the Microsoftapplication agent to back up and restore Microsoft SQL Server.

Revision historyThe following table presents the revision history of this document.

Table 1 Revision history

Revision Date Description

03 January 15, 2019 Minor updates throughout guide to remove referencesand examples about the Microsoft application agent forExchange Server.

02 January 4, 2019 Removed all references to ProtectPoint for VirtualMachines, of which support is deprecated in thisrelease.

01 December 14, 2018 First release of this document for Microsoft applicationagent 4.7.

Related documentationThe following publications provide additional information:

l Microsoft Application Installation Guide

l Microsoft Application Agent Release Notes

l Microsoft Application Exchange Server User Guide

l ItemPoint for Microsoft SQL Server User Guide

l ItemPoint for Microsoft Exchange Server User Guide

l eCDM Administration and User Guide

l Database Application Agent Installation and Administration Guide

Preface 13

Page 14: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l Database Application Agent Release Notes

l Data Domain Boost for Enterprise Applications Software Compatibility Guide

l Data Domain Operating System documentation

l ProtectPoint Primary and Protection Storage Configuration Guide

l ProtectPoint Solutions Guide

l RecoverPoint documentation

l XtremIO documentation

l VMAX documentation

Special notice conventions that are used in this documentThe following conventions are used for special notices:

NOTICE

Identifies content that warns of potential business or data loss.

Note

Contains information that is incidental, but not essential, to the topic.

Typographical conventionsThe following type style conventions are used in this document:

Table 2 Style conventions

Bold Used for interface elements that a user specifically selects or clicks,for example, names of buttons, fields, tab names, and menu paths.Also used for the name of a dialog box, page, pane, screen area withtitle, table label, and window.

Italic Used for full titles of publications that are referenced in text.

Monospace Used for:

l System code

l System output, such as an error message or script

l Pathnames, file names, file name extensions, prompts, andsyntax

l Commands and options

Monospace italic Used for variables.

Monospace bold Used for user input.

[ ] Square brackets enclose optional values.

| Vertical line indicates alternate selections. The vertical line means orfor the alternate selections.

{ } Braces enclose content that the user must specify, such as x, y, or z.

... Ellipses indicate non-essential information that is omitted from theexample.

You can use the following resources to find more information about this product,obtain support, and provide feedback.

Preface

14 Microsoft Application Agent 4.7 SQL Server User Guide

Page 15: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Where to find product documentation

l https://www.dell.com/support

l https://community.emc.com

Where to get supportThe Support website https://www.dell.com/support provides access to productlicensing, documentation, advisories, downloads, and how-to and troubleshootinginformation. The information can enable you to resolve a product issue before youcontact Support.

To access a product-specific page:

1. Go to https://www.dell.com/support.

2. In the search box, type a product name, and then from the list that appears, selectthe product.

KnowledgebaseThe Knowledgebase contains applicable solutions that you can search for either bysolution number (for example, KB000xxxxxx) or by keyword.

To search the Knowledgebase:

1. Go to https://www.dell.com/support.

2. On the Support tab, click Knowledge Base.

3. In the search box, type either the solution number or keywords. Optionally, youcan limit the search to specific products by typing a product name in the searchbox, and then selecting the product from the list that appears.

Live chatTo participate in a live interactive chat with a support agent:

1. Go to https://www.dell.com/support.

2. On the Support tab, click Contact Support.

3. On the Contact Information page, click the relevant support, and then proceed.

Service requestsTo obtain in-depth help from Licensing, submit a service request. To submit a servicerequest:

1. Go to https://www.dell.com/support.

2. On the Support tab, click Service Requests.

Note

To create a service request, you must have a valid support agreement. For detailsabout either an account or obtaining a valid support agreement, contact a salesrepresentative. To get the details of a service request, in the Service RequestNumber field, type the service request number, and then click the right arrow.

To review an open service request:

1. Go to https://www.dell.com/support.

2. On the Support tab, click Service Requests.

3. On the Service Requests page, under Manage Your Service Requests, clickView All Dell Service Requests.

Preface

15

Page 16: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Online communitiesFor peer contacts, conversations, and content on product support and solutions, go tothe Community Network https://community.emc.com. Interactively engage withcustomers, partners, and certified professionals online.

How to provide feedbackFeedback helps to improve the accuracy, organization, and overall quality ofpublications. You can send feedback to [email protected].

Preface

16 Microsoft Application Agent 4.7 SQL Server User Guide

Page 17: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

PART 1

Configuring the Microsoft Application Agent

This part includes the following chapters:

Chapter 1, "Configuring the Data Domain System"

Chapter 2, "Configuring Data Domain Boost"

Chapter 3, "Configuring ProtectPoint"

Configuring the Microsoft Application Agent 17

Page 18: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Configuring the Microsoft Application Agent

18 Microsoft Application Agent 4.7 SQL Server User Guide

Page 19: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 1

Configuring the Data Domain System

Note

When the Microsoft application agent is deployed with eCDM for centralizedprotection, refer to the eCDM Administration and User Guide for information onconfiguring the Data Domain system. When the Microsoft application agent is addedto an eCDM centralized protection Lifecycle group, eCDM can provision storage onthe Data Domain system and manage replication policies.

This chapter includes the following sections:

l Installing and upgrading the Data Domain operating system.............................. 20l Configuring the Data Domain system................................................................. 20l Configuring the Data Domain Cloud Tier for data movement to the cloud..........36l Distributed segment processing......................................................................... 37l Advanced load balancing and link failover...........................................................38l Encrypted managed file replication.................................................................... 40l Data Domain High Availability.............................................................................40l Validating the Data Domain system.....................................................................41l Troubleshooting the Data Domain system...........................................................41

Configuring the Data Domain System 19

Page 20: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Installing and upgrading the Data Domain operating systemThe Data Domain Operating System Installation Guide provides information about how toinstall and upgrade the Data Domain (DD) operating system.

You require a license to implement many of the features on a Data Domain system.

Note

You require the Data Domain Boost license to use the Microsoft application agentsoftware. You also require a replication license for both the source and destinationData Domain systems to use the replication feature.

Contact the Data Domain sales representative for more information and to purchaselicensed features.

The Data Domain Operating System Administration Guide provides information about allthe licensed features, and how to display and enable Data Domain licenses. The DataDomain Boost for Enterprise Applications Software Compatibility Matrix, which isavailable at http://compatibilityguide.emc.com:8080/CompGuideApp/, lists theversions of Data Domain OS that are supported with the Microsoft application agent.

Configuring the Data Domain systemThis section describes how to configure the Data Domain system.

The Data Domain Operating System Command Reference Guide provides completedescriptions of the commands used in these sections.

Opening ports in a firewall to enable Data Domain backups

Note

This topic is relevant only if you use an Ethernet connection for backup and restoreoperations with the Microsoft application agent.

Ensure that the following ports are open on the firewall to enable the Data DomainBoost backups and optimized duplication.

l TCP 2049 (NFS)

l TCP 2051 (Replication)

l TCP 111 (NFS portmapper)

l TCP xxx (select a port for NFS mountd, where the default MOUNTD port is 2052)

Enabling Data Domain Boost for on a Data Domain systemEvery Data Domain system that supports DD Boost must have a unique name. You canuse the DNS name of the Data Domain system, which is always unique.

Enable DD Boost on a Data Domain system by using one of the following methods:

l The ddboost enable command

l Data Domain System Manager on the Data Management > DD Boost pageThe Data Domain Operating System Administration Guide provides information.

Configuring the Data Domain System

20 Microsoft Application Agent 4.7 SQL Server User Guide

Page 21: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The Data Domain Operating System Command Reference Guide provides moreinformation about the commands used in this procedure.

Procedure

1. On the Data Domain system, log in as an administrative user.

2. Verify whether you have enabled the file system, and the file system is running,by running the following command:

filesys status

To enable the file system, run the following command:

filesys enable

3. Verify whether you have enabled the DD Boost license by running the followingcommand:

license show

To add the DD Boost license by using the license key from the Data Domaininstallation package, run the following command:

license add license-key

4. Configure the DD Boost username and password for the Data Domain system.

You can configure only one user for DD Boost access on a Data Domain systemat a time. The username and password are case-sensitive.

Configure the username and the password by running the following commands:

user add username password password

ddboost set user-name username

5. Enable Data Domain Boost by running the following command:

ddboost enable

Changing Data Domain Boost access rightsWhen you enable the Data Domain Boost service for the first time on a Data Domainsystem, all database servers can access the service by default.

Use the ddboost access command to override this default, and restrict access tospecific database servers.

Configuring the Data Domain System

Enabling Data Domain Boost for on a Data Domain system 21

Page 22: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

For example, to remove the default access permission for all servers and add newaccess permissions for two specific database servers, dbserver1.datadomain.com anddbserver2.datadomain.com, run the following commands:

# ddboost disable# ddboost access del <client_list># ddboost clients add dbserver1.datadomain.com dbserver2.datadomain.com# ddboost enable

The Data Domain Operating System Command Reference Guide provides informationabout these commands.

These commands establish the access controls that enable only thedbserver1.datadomain.com and dbserver2.datadomain.com database servers to accessthe DD Boost service.

Note

Before you configure backups, add the database server host that contains theMicrosoft application agent software to a host access group.

If these commands fail to establish access controls, rerun the ddboost enablecommand to configure the default access control that enables all hosts to access theDD Boost service. If the commands have established access controls, rerunning theddboost enable command enables them. The ddboost enable command doesnot modify the access control list.

Consider the following guidelines when you change the Data Domain Boost accessrights:

l Ensure that no backup operations are running to the Data Domain system. Run theddboost disable command to prevent the backup operations.

Note

When you disable DD Boost, you disable the data access to all database servers.

l Specify only a fully qualified domain name, IP address, or resolvable DNS name forthe client.

l If you have changed or deleted a username, the change in access rights does notaffect any current operation. For example, deleting the current clients from theData Domain Boost access list by running the ddboost access del commanddoes not stop a backup that is in progress. The current operations do not failbecause of the change in access rights.

l After you change the access rights, run the ddboost enable command to re-enable Data Domain Boost and permit operations that are relevant to the changedaccess rights.

Configuring the Data Domain System

22 Microsoft Application Agent 4.7 SQL Server User Guide

Page 23: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

You can run the ddboost clients show config command to verify whichdatabase servers have DD Boost access rights. If the command output is *, alldatabase servers have the access rights. For example:

# ddboost clients show config

DD Boost access allowed from the following clients*

# ddboost clients show config

DD Boost access allowed from the following clients:aehdb2aehdb2.datadomain.comaehdb3aehdb3.datadomain.comaehdb4aehdb4.datadomain.comaehdb5aehdb5.datadomain.com

Verify the active client connections by running the following command:

# ddboost show connections

Configuring the Data Domain Boost serverThe following sections explain how to configure the Data Domain Boost server.

Creating storage unitsCreate one or more storage units on each Data Domain system that you use with theMicrosoft application agent.

Ensure that you use a unique storage unit name on a single Data Domain system.However, you can use the same storage unit name on more than one Data Domainsystem.

Note

Storage unit names are case-sensitive.

You must provide the storage unit name when you perform the backup and restoreoperations with the Microsoft application agent.

You can create a storage unit by using one of the following methods:

l The ddboost storage-unit command

l Data Domain System Manager on the Data Management > DD Boost pageThe Data Domain Operating System Administration Guide provides information.

You must create at least one storage unit on each Data Domain system that you willuse with the Microsoft application agent. You can share a storage unit on a DataDomain system with more than one client system.

Configuring the Data Domain System

Configuring the Data Domain Boost server 23

Page 24: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Procedure

1. Run the following command on the Data Domain system:

ddboost storage-unit create <storage_unit_name>

2. Repeat step 1 for each Data Domain system that is enabled with DD Boost.

3. To list the status of the storage units, run the following command:

ddboost storage-unit show

Deleting storage units

To delete a specified storage unit and its contents, and any DD Boost associations, runthe following command:

# ddboost storage-unit delete <storage_unit_name>

The ddboost destroy command deletes all storage units from the Data Domainsystem and permanently removes all the data files contained in the storage units.

The Data Domain Operating System Command Reference Guide provides informationabout the ddboost commands.

(Optional) Configuring quotas for storage unitsProvision the storage on a Data Domain system through optional quota limits for astorage unit.

You can specify quota limits at either the storage unit level or the MTree level eitherwhen you create a storage unit or later. The Data Domain Operating System CommandReference Guide provides details about the quota and ddboost commands.

l To enable quota limits on the Data Domain system, run the following command:

quota capacity enable

l To verify the quota status, run the following command:

quota capacity status

l To configure quota limits when you create a storage unit, run the followingcommand:

ddboost storage-unit create storage_unit_name [quota-soft-limit n {MiB|GiB|TiB|PiB}] [quota-hard-limit n {MiB|GiB|TiB|PiB}]

l To configure quota limits after you create a storage unit, run the followingcommand:

quota capacity set storage-units storage_unit_list {soft-limit n {MiB|GiB|TiB|PiB}} {hard-limit n {MiB|GiB|TiB|PiB}}

Configuring the Data Domain System

24 Microsoft Application Agent 4.7 SQL Server User Guide

Page 25: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

For example:

quota capacity set storage-units SU_AEHDB5 soft-limit 10 GiB hard-limit 20 GiB

SU_AEHDB5: Quota soft limit: 10240 MiB, hard limit: 20480 MiB

Alternately, you can set the quota limits at the MTree level. For example:

quota capacity set mtrees /data/col1/SU_AEHDB5 soft-limit 10 GiB hard-limit 20 GiB

/data/col1/SU_AEHDB5: Quota soft limit: 10240 MiB, hard limit: 20480 MiB

l To verify the quota limits of a storage unit, run the following command:

quota capacity show storage-units storage_unit_list

Alternately, to verify the quota limits at the MTree level, run the followingcommand:

quota capacity show mtrees mtree_path

Configuring distributed segment processingYou must configure the distributed segment processing option on the Data Domainsystem. The option setting applies to all the database servers and all the software thatuses DD Boost.

You can manage the distributed segment processing by using one of the followingmethods:

l The ddboost command.

l Data Domain System Manager on the Data Management > DD Boost page.The Data Domain Operating System Administration Guide provides information.

To configure the distributed segment processing option, run the following command:

ddboost option set distributed-segment-processing {enabled | disabled}Enabling or disabling the distributed segment processing option does not require arestart of the Data Domain file system.

A host on which you have installed the Data Domain Operating System (DD OS)release 5.2 or later enables the distributed segment processing feature by default. Ifyou upgrade a host from DD OS release 5.0.x or 5.1.x to DD OS release 5.2 or later,the distributed segment processing option remains in its previous state, that is, eitherenabled or disabled.

Configuring advanced load balancing and link failoverThe advanced load balancing feature balances the load of a data transfer anddistributes the load in private network when the Data Domain system receives datafrom the DD Boost client.

The process provides greater throughput, especially for environments that usemultiple 1 GbE connections. The following restrictions apply to the configuration of theadvanced load balancing and link failover:

Configuring the Data Domain System

Configuring the Data Domain Boost server 25

Page 26: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l You can add interfaces to groups only by using an IP address.

l You must use interfaces that have the same link speed in a group. You must notmix 1 GbE interfaces with 10 GbE interfaces in a group.

You can manage advanced load balancing and link failover by using one of thefollowing methods:

l The ddboost ifgroup command.

l Data Domain System Manager on the Data Management > DD Boost page.The Data Domain Operating System Administration Guide provides information.

Create the interfaces by using the net command before you create the interfacegroup.

To create an interface group on the Data Domain system by adding existing interfacesto the group and registering the Data Domain system with the Microsoft applicationagent, perform the following steps:

Procedure

1. Add the interfaces to the group by running the ddboost ifgroup command.For example:

ddboost ifgroup add interface 192.168.1.1

ddboost ifgroup add interface 192.168.1.2

ddboost ifgroup add interface 192.168.1.3

ddboost ifgroup add interface 192.168.1.4

You can create only one interface group and you cannot rename this group.

2. Select one interface on the Data Domain system to register with the Microsoftapplication agent.

3. Create a failover aggregated interface and register that interface with theMicrosoft application agent.

The Data Domain Operating System Administration Guide describes how to createa virtual interface for link aggregation.

You can use an interface that is not part of the ifgroup to register with theMicrosoft application agent. You must register the interface with a resolvablename by using either DNS or any other name-resolution mechanism.

4. Enable the interface group on the Data Domain system by running the followingcommand:

ddboost ifgroup enable

5. Verify the configuration by running the following command:

ddboost ifgroup show config interfaces

Configuring the Data Domain System

26 Microsoft Application Agent 4.7 SQL Server User Guide

Page 27: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

6. Add or delete interfaces from the group.

Results

After setting up the interface group, you can add or delete interfaces from the group.

Configuring DD Boost over fibre channelDD OS release 5.3 and later support fibre channel (FC) communication between theData Domain Boost library and the Data Domain system.

Note

This topic is relevant only if you use fibre channel for backup and restore operationswith the Microsoft application agent.

To use some products, you require the use of fibre channel as the data transfermechanism between the Data Domain Boost library and Data Domain system. TheData Domain Boost over fibre channel transport (DD Boost-over-FC) enables suchproducts to access the DD Boost technology features.

Although fibre channel is specified as a general-purpose data transport mechanism,you can use fibre channel solely as a transport for SCSI device access. Fibre channelhardware and drivers reside solely within the SCSI protocol stacks in host operatingsystems. The DD Boost-over-FC transport must use SCSI commands for allcommunication.

To request access to a Data Domain system, the Microsoft application agent specifiesthe DD Boost-over-FC server name that is configured for the Data Domain system.The DD Boost-over-FC transport logic within the DD Boost library performs thefollowing tasks:

l Examines the set of generic SCSI devices that are available on the databaseserver.

l Uses SCSI commands to identify a catalog of devices, which are pathnames of theSCSI devices that the database server operating system discovers.

l Issues SCSI commands to the identified generic SCSI devices to transfer DataDomain Boost protocol requests and responses between the library and the DataDomain system.

The DD Boost-over-IP advanced load balancing and link failover feature and itsassociated ifgroups require the IP transport. You can achieve load balancing and link-level high availability for the DD Boost-over-FC transport through different means.

The DD Boost-over-FC communication path applies only between the database serveror Data Domain Boost library and the Data Domain system. The DD Boost-over-FCcommunication path does not apply to communication between two Data Domainsystems.

To enable the DD Boost-over-FC service, you must install the supported fibre channeltarget HBAs on the host. The Data Domain Operating System Command Reference Guideand Data Domain Operating System Administration Guide provide information aboutusing the scsitarget command for managing the SCSI target subsystem.

Procedure

1. Enable the DD Boost-over-FC service by running the following command:

# ddboost option set fc enabled

Configuring the Data Domain System

Configuring the Data Domain Boost server 27

Page 28: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

2. (Optional) Set the dfc-server-name by running the following command:

# ddboost fc dfc-server-name set server_name

Alternatively, accept the default name, which is the base hostname of the DataDomain system. A valid dfc-server-name consists of one or more of thefollowing characters:

l lowercase letters (a–z)

l uppercase letters (A–Z)

l digits (0–9)

l underscore (_)

l dash (–)

Note

The dot or period character (.) is not valid within a dfc-server-name. Youcannot use the fully qualified domain name of a Data Domain system as thedfc-server-name.

3. Create a DD Boost FC group by running the following command:

# ddboost fc group create group_name

For example:

# ddboost fc group create lab_group

4. Configure the device set of the DD Boost FC group by running the followingcommand:

# ddboost fc group modify group_name device-set count count endpoint {all | none | endpoint_list}

For example:

# ddboost fc group modify lab_group device-set count 8 endpoint all

5. Add initiators to the DD Boost FC group by running the following command:

# ddboost fc group add group_name initiator initiator_spec

For example:

# ddboost fc group add lab_group initiator "initiator-15,initiator-16"

Configuring the Data Domain System

28 Microsoft Application Agent 4.7 SQL Server User Guide

Page 29: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

6. Verify that the DFC devices are visible on the client.

7. Ensure that the user, who performs the backups and restores has the requiredpermissions to access the DFC devices.

Managing the DD Boost-over-FC pathThe ifgroup-based advanced load balancing and link failover mechanism does not applyto the Fibre Channel transport.

The Data Domain system advertises one or more Processor-type SCSI devices to thedatabase server over one or more physical paths. The database server operatingsystem discovers the devices and makes them available to applications through ageneric SCSI mechanism (SCSI Generic driver on Linux, SCSI Pass-Through Interfaceon Windows).

Consider the following example:

l The database server has two initiator HBA ports–A and B

l Data Domain System has two FC target endpoints–C and D

l You have configured Fibre Channel Fabric zoning so that both initiator HBA portscan access both FC target endpoints

l You have configured Data Domain system with a DD Boost FC group that containsthe following components:

n Both FC target endpoints on the Data Domain system

n Both initiator HBA ports

n Four devices (0, 1, 2, and 3)

In this example, the media server operating system might discover up to 16 genericSCSI devices; one for each combination of initiator, target endpoint, and devicenumber:

/dev/sg11: (A, C, 0)/dev/sg12: (A, C, 1)/dev/sg13: (A, C, 2)/dev/sg14: (A, C, 3)/dev/sg15: (A, D, 0)/dev/sg16: (A, D, 1)/dev/sg17: (A, D, 2)/dev/sg18: (A, D, 3)/dev/sg19: (B, C, 0)/dev/sg20: (B, C, 1)/dev/sg21: (B, C, 2)/dev/sg22: (B, C, 3)/dev/sg23: (B, D, 0)/dev/sg24: (B, D, 1)/dev/sg25: (B, D, 2)/dev/sg26: (B, D, 3)

When the Microsoft application agent requests that the Data Domain Boost libraryestablish a connection to the server, the DD Boost-over-FC transport logic within theDD Boost library uses SCSI requests to build a catalog of these 16 generic SCSIdevices. The SCSI devices are paths to access the DD Boost-over-FC service on theData Domain System. As part of establishing the connection to the server, the DDBoost-over-FC transport logic provides the catalog of paths to the server.

Selecting the initial pathThe server maintains statistics about the DD Boost-over-FC traffic over the varioustarget endpoints and known initiators. During the connection setup procedure, path

Configuring the Data Domain System

Configuring the Data Domain Boost server 29

Page 30: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

management logic in the server evaluates these statistics and then selects the path,through which the server establishes the connection, based on the following criteria:

l Evenly distribute the connections across different paths for queue-depthconstrained clients. Queue-depth constraints on page 30 provides moreinformation.

l Select the least busy target endpoint.

l Select the least busy initiator from among the paths to the selected targetendpoint.

Dynamic rebalancingThe server periodically performs dynamic rebalancing when the statistics reveal thefollowing situations:

l For queue-depth constrained clients that Queue-depth constraints on page 30describes, connections are distributed unequally across available paths

l Workload across target endpoints is out of balance

l Workload across initiators is out of balance

When the server finds one of these situations, the server marks one or moreconnections for server-directed path migration. In a future data transfer operation,the server requests that the DD Boost library use a different path from the catalog forsubsequent operations.

Client path failoverThe server dynamic rebalancing logic directs the client to use a different path.However, the client can use a different path if the client receives errors while usingthe connection's current path.

For example, assume the path catalog for a connection consists of eight paths:

/dev/sg21: (A, C, 0)/dev/sg22: (A, C, 1)/dev/sg23: (A, D, 0)/dev/sg24: (A, D, 1)/dev/sg25: (B, C, 0)/dev/sg26: (B, C, 1)/dev/sg27: (B, D, 0)/dev/sg28: (B, D, 1)

The server selects the (A, C, 0) path during an initial path selection. The DFCtransport logic in the DD Boost library starts sending and receiving data for theconnection by using SCSI commands to /dev/sg21.

Later, the link from the target endpoint C to the switch becomes unavailable. Anysubsequent SCSI request that the DFC transport logic submits to /dev/sg21 failswith an error code that indicates that the process could not deliver the SCSI requestto the device.

In this case, the DFC transport logic looks in the catalog of devices for a path with adifferent physical component and a different combination of initiator and targetendpoints. The DFC transport logic retires the SCSI request on the selected path, andrepeats the process till the DFC transport logic finds a path that can successfullycomplete the SCSI request.

Queue-depth constraintsThe specific SCSI device that receives a request is irrelevant to the DD Boost-over-FCsolution. All SCSI devices are identical destination objects for SCSI commands. When

Configuring the Data Domain System

30 Microsoft Application Agent 4.7 SQL Server User Guide

Page 31: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

processing a SCSI request, the server logic gives no consideration to the specificdevice on which the SCSI request arrived.

Certain client operating systems restrict the number of outstanding I/O requests thatthe operating system can simultaneously process over a SCSI device. For example, theWindows SCSI Pass-Through Interface mechanism conducts only one SCSI request ata time through each of its generic SCSI devices. When multiple connections (forexample, backup jobs) try to use the same generic SCSI device, the performance ofthe DD Boost-over-FC solution is impacted.

The Data Domain system also imposes a limit on the number of outstanding I/Orequests for each advertised SCSI device. You must advertise multiple SCSI deviceson the Data Domain system to overcome performance issues in the case of heavyworkloads. The term queue-depth describes the system-imposed limit on the numberof simultaneous SCSI requests on a single device. Client systems, such as Windows,the queue depth of which is so low as to impact performance, are considered to bequeue-depth constrained.

Enabling encrypted file replicationTo enable the encrypted file replication option, run the following command:

# ddboost file-replication option set encryption enabled

Enabling encrypted file replication requires additional resources, such as CPU andmemory on the Data Domain system, and does not require a restart of the DataDomain file system. The Data Domain Operating System Administration Guide providesinformation about encrypted file replication.

Data Domain replicationReplicate data to remote Data Domain systems by using Data Domain Replicator.Replicating data enables you to perform recoveries in the case of disasters.

The Data Domain Replicator provides automated encrypted replication for disasterrecovery and multi-site backup and archive consolidation. The Data Domain Replicatorsoftware asynchronously replicates only compressed, deduplicated data over a widearea network (WAN).

The Microsoft application agent does not initiate or monitor a replication. However,the product can restore from the replicated copy on a secondary Data Domain system.You must have used the product to create the backup on a primary Data Domainsystem. A Data Domain administrator performs the backup replication from theprimary system to the secondary system.

To restore from a secondary Data Domain system, the restore operation must point tothe secondary Data Domain system in the Data Domain host setting. There are nosecondary Data Domain parameters.

Point to the secondary Data Domain system when configuring the restore operationthrough the Microsoft SQL Server Management Studio plugin or the commandprompt. When configuring a restore through the command prompt, point to thesecondary Data Domain system either explicitly with a Data Domain host parameter orwith a configuration file.

For ProtectPoint, both the Data Domain Boost storage unit, which contains thecatalog information and backup of the files that cannot be backed up through VSSsuch as SQL transaction log backups, and the Data Domain vdisk pool used by theMicrosoft application agent must be replicated. Microsoft application agent supportsonly object-level and granular-level restores from ProtectPoint copies on a secondary

Configuring the Data Domain System

Data Domain replication 31

Page 32: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Data Domain system. The vdisk replica pool must be the exact same as the sourcevdisk pool.

Note

The replication process must not change the names of the directories and files createdby the Microsoft application agent.

To enable the backup replication and subsequent restore from a secondary DataDomain system, the user ID or primary group ID of the DD Boost users on the primaryand secondary systems must be identical.

You must meet specific configuration requirements to enable the restore of replicatedbackups from a secondary Data Domain system.

The Knowledgebase Article number 456734, titled Configuration of DDBoost Users onSource and Destination DDRs for MTree Replication, provides more details. The articleis available on the Support website at https://support.emc.com.

The Configuring replication section in the Data Domain Operating System AdministrationGuide provides information about creating, enabling, disabling, and deleting replicationpairs.

Configuring usage limits of Data Domain resourcesUse either the Data Domain operating system commands or the Data DomainAdministration GUI to set limits on usage of the following Data Domain resources:

l Capacity: The amount of hard drive capacity that the application agent uses on aData Domain host.Capacity limits are based on the used logical space, which depends on the amountof data that is written to a storage unit before deduplication. Logical capacity isthe size of the uncompressed data. For example, when a 1 GB file is written twiceto the same empty storage unit, the storage unit has a logical size of 2 GB, but aphysical size of 1 GB.

l Streams: The number of Data Domain Boost streams that the application agentuses to read data from a storage unit or write data to a storage unit on a DataDomain host.

NOTICE

The Microsoft application agent supports usage limits on Data Domain resourcesfor Data Domain Boost operations only.

Data Domain uses the term quota to collectively describe the capacity soft and hardlimits of a storage unit. Stream limits are called limits.

The Data Domain operating system supports soft and hard limits on capacity andstreams usage:

l When the Microsoft application agent exceeds a soft limit, the Data Domain hostgenerates an alert. If the administrator has configured a tenant-unit notificationlist, the Data Domain host sends an email to each address in the list. The Microsoftapplication agent can continue to use more of the limited resource after a soft limitis exceeded.

l When the Microsoft application agent exceeds a hard limit, it cannot use any moreof the limited resource.

Configuring the Data Domain System

32 Microsoft Application Agent 4.7 SQL Server User Guide

Page 33: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

Data Domain operating system versions 5.5 and 5.6 support soft and hard limits forcapacity, but only soft limits for streams. Data Domain operating system version 5.7supports soft and hard limits for both capacity and streams.

The Data Domain administrator must create a separate storage unit for eachapplication agent host or set of hosts that are limited.

For example, if there are 10 application agent hosts, the Data Domain administratormust create at least 10 storage units to limit the storage unit capacity that eachapplication agent host uses. To use fewer storage units, the administrator must groupthe application agent hosts and assign the group to a single storage unit. Theapplication agent hosts in the group share this storage unit. However, you cannot limitthe consumption of a storage unit by each host. One application agent host canconsume 100% of the storage unit. The resources are consumed on the first-come,first-serve basis.

To determine the stream limits of a storage unit, run the following command:

msagentadmin.exe administration --listSU --config<full_path_to_the_configuration_file> [--debug 9]Example output of the command:

active write streams: 11active read streams: 0soft limit write streams: nonesoft limit read streams: nonesoft limit combined streams: 40hard limit combined streams: 60

NOTICE

Depending on the number and type of parallel operations that are performed at a giventime, the stream usage varies. To determine the exact usage of the streams, monitorthe number of streams that the storage units use over a period of time.

Impact of exceeding quota limitsAt the start of a backup, the Microsoft application agent cannot determine how muchcapacity is required for the backup. The Microsoft application agent can perform arequested backup only when the destination host has sufficient space or storagecapacity.

Exceeding the soft quota limit

When the Microsoft application agent exceeds the capacity soft limit:

l During a backup, if the storage unit is part of a tenant-unit with a notification list,the Data Domain host sends an email to each address in the list. The list caninclude the Data Domain administrator and the application agent user.

l Alerts appear in the Current Alerts panel in the Data Domain Administration GUIregardless of whether the storage unit is part of a tenant-unit.

l The backup or restore operation continues without any adverse impact. Theapplication agent does not generate any warning or error message in its log file oroperational output.

Configuring the Data Domain System

Configuring usage limits of Data Domain resources 33

Page 34: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Exceeding the hard quota limit

When the Microsoft application agent exceeds the capacity hard limit during a backup,the Microsoft application agent cancels the backup.

Check the client backup and restore logs for error messages related to insufficientspace on the storage unit. The following message shows an example:

145732:(pid 4584):Max DD Stream Count: 60153003:(pid 4584): Unable to write to a file due to a lack of space.The error message is: [5005] [ 4584] [984] Thu Apr 14 10:14:18 2016 ddp_write() failed Offset 163577856, BytesToWrite 524288, BytesWritten 0 Err: 5005-ddcl_pwrite failed (nfs: No space left on device)86699:(pid 4584): Unable to write data into multiple buffers for save-set ID '1460654052': Invalid argument (errno=22)

Configuring usage limits of Data Domain quotaTo configure capacity usage limits for the application agent, the Data Domainadministrator must set the hard capacity limit for the storage unit that the applicationagent uses for backups:

Procedure

1. Determine which application agent hosts use the storage unit.

2. Determine the amount of capacity to allow for the storage unit.

3. Create the storage unit, and then set the capacity quota by using either the GUIor the command prompt. The Data Domain documentation provides information.

4. Provide the Data Domain hostname, storage unit name, username, andpassword of the storage unit to the application agent users to use to performbackups.

The Data Domain administrator can also set the soft capacity quota for thestorage unit, which sends alerts and notifications, but does not limit thecapacity usage.

Note

When a storage unit is almost full and the capacity quota is decreased, the nextbackup can fail. Data Domain administrators must notify the Microsoftapplication agent users when they decrease a capacity quota, so that theapplication agent users can evaluate the potential impact on backups.

Impact of exceeding the soft stream limitWhen the Microsoft application agent exceeds the stream soft stream limit:

l During a backup, if the storage unit is part of a tenant-unit with a notification list,the Data Domain host sends an email to each address in the list. The list caninclude the Data Domain administrator and the application agent user.

l Alerts appear in the Current Alerts panel in the Data Domain Administration GUIregardless of whether the storage unit is part of a tenant-unit.

l The backup or restore operation continues without any adverse impact. Theapplication agent does not generate any warning or error message in its log file oroperational output.

Configuring the Data Domain System

34 Microsoft Application Agent 4.7 SQL Server User Guide

Page 35: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Impact of exceeding the hard stream limitWhen the Microsoft application agent exceeds the hard stream limit during anoperation, the Microsoft application agent cancels the operation.

Check the client backup and restore logs for error messages related to an exceededstream limit. The following message shows an example:

153004:(pid 4144): Unable to write to a file because the streams limit was exceeded.

Configuring usage limits of Data Domain streamsA storage unit can have soft and hard limits for streams. The Data Domainadministrator can set individual soft limits for read, write, and replication streams. Theadministrator can set a hard limit only for the total number of streams.

To configure a streams usage limit for a storage unit, the Data Domain administratormust set the hard limit for the storage unit that the application agent uses forbackups:

Procedure

1. Determine which application agent hosts use the storage unit.

2. Determine the number of backup streams to allow for the storage unit.

3. Create the storage unit.

The Data Domain administrator can set the streams limit either as part of theddboost storage-unit create command or after creating the storageunit by using the ddboost storage-unit modify command. The DataDomain documentation provides information.

Note

The Data Domain administrator cannot set a streams limit by using the DataDomain Administration GUI.

4. Provide the Data Domain hostname, storage unit name, username, andpassword of the storage unit to the application agent users to use to performbackups.

The Data Domain administrator can also set soft limits for the storage unit,which send alerts and notifications, but do not limit the number of streamsused.

The Data Domain administrator can use the ddboost storage-unitmodify command to modify the streams limits of storage units. The DataDomain documentation provides information.

Note

The Data Domain administrator must use caution when setting a streams hardlimit. Setting the streams limit to a low value can impact the backup and restoreperformance. Decreasing a streams limit can result in a restore failure. The DataDomain administrator must notify the application agent users when decreasing astreams hard limit so that the application agent users can evaluate the potentialimpact on backups and restores.

Configuring the Data Domain System

Configuring usage limits of Data Domain resources 35

Page 36: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Configuring the Data Domain Cloud Tier for data movementto the cloud

You can configure the Microsoft application agent to use the Data Domain Cloud Tierfor the movement of backup data to the cloud and the subsequent recall of the backupdata from the cloud.

Data Domain (DD) Cloud Tier is a native feature of DD OS 6.0 and later for datamovement from the active tier to low-cost, high-capacity object storage in the public,private, or hybrid cloud for long-term retention. The Microsoft application agentsupports the DD Cloud Tier for movement of Data Domain Boost backup data to thecloud, which frees up space on the Data Domain system (active tier).

Note

The Microsoft application agent does not support the DD Cloud Tier for movement ofProtectPoint backup data to the cloud.

You must set up a DD Cloud Tier policy, also known as a data movement policy, foreach MTree or storage unit that the Microsoft applicant agent uses for datamovement to the cloud.

After you have set up the data movement policies, you can configure and perform thefollowing operations:

l Movement of backup data from the Data Domain system to the cloud.l Recall of backup data from the cloud to the Data Domain system.

A backup with the Microsoft application agent consists of backup save sets, where asave set is a collection of one or more save files created during the backup session. Asave file is an operating system file or block of data, the simplest object that you canback up or restore. A backup creates one or more save files within a save set. TheMicrosoft application agent moves and recalls the backup data at the save set levelonly, moving all the save files in a save set.

Setting up the DD Cloud Tier policy for data movement to the cloudThe Microsoft application agent moves the backup data from the active tier to thecloud according to the DD Cloud Tier policy. To enable the data movement to thecloud, you must set up the required policy for each MTree or storage unit.

DD Cloud Tier provides two types of policy, the application-based policy and the age-based policy. The Microsoft application agent supports only the application-basedpolicy, which is managed by the application that creates the backup files on the DataDomain system. This policy moves the backup file content to the cloud according tothe application's specifications.

NOTICE

Do not apply an age-based policy to a storage unit that is used by the Microsoftapplication agent. An age-based policy moves all the file content (including metadata)from a storage unit to the cloud according to the file age, as when all the files olderthan T days are moved. Such data movement by an age-based policy can cause thefailure of metadata queries for the Microsoft application agent.

The DBA must contact the Data Domain administrator to create the application-basedpolicy, also known as a data movement profile, for the MTree or storage unit that the

Configuring the Data Domain System

36 Microsoft Application Agent 4.7 SQL Server User Guide

Page 37: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Microsoft application agent uses for the Data Domain Boost backups. The DataDomain documentation provides details about the DD Cloud Tier configurationprocedures.

For any DD OS version earlier than 6.1, the Data Domain administrator must use DDREST APIs to create application-managed based policies through tools such as thecurl command. Starting with DD OS 6.1, the Data Domain administrator can run theData Domain command data-movement policy to configure the application-basedpolicy

Using the data-movement command with DD OS 6.1 or laterDD OS 6.1 or later enables you to configure the application-based policy through thefollowing Data Domain command from the command line. This command sets theapplication-based policy for the specified Mtrees:

data-movement policy set app-managed {enabled | disabled} to-tier cloud cloud-unit <unit-name> mtrees <mtree-list>

For example, the following command sets the application-based policy for the Mtree /data/col1/app-agent40:

data-movement policy set app-managed enabled to-tier cloud cloud-unit Cloud mtrees /data/col1/app-agent40

You can run the following command to display the policy configuration result forverification purposes:

data-movement policy show

Mtree Target(Tier/Unit Name) Policy Value------------------------- ---------------------- ------------- -------/data/col1/app-agent40 Cloud/Cloud app-managed enabled------------------------- ---------------------- ------------- -------

Distributed segment processingDistributed segment processing uses the Data Domain Boost library on the databaseserver and the Data Domain software on Data Domain Replicator. The Microsoftapplication agent loads the DD Boost library during backup and restore operations.

Distributed segment processing allows the Microsoft application agent to performparts of the deduplication process, which avoids sending duplicate data to the DataDomain system that you configured as a storage server.

The distributed segment processing feature provides the following benefits:

l Increases throughput because the DD Boost library sends only unique data to theData Domain system. The throughput improvements depend on the redundantnature of the data that you back up, the overall workload on the database server,and the database server capability. In general, greater throughput is attained withhigher redundancy, greater database server workload, and greater database servercapability.

l Decreases network bandwidth requirements by sending the unique data to theData Domain system through the network.

Manage distributed segment processing by using the ddboost command options. Usedistributed segment processing if the network connection is 1 Gb Ethernet.

Configuring the Data Domain System

Distributed segment processing 37

Page 38: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Configuring distributed segment processing on page 25 provides information on howto configure the distributed segment processing.

Distributed segment processing supports the following modes of operation for sendingbackup data to a Data Domain system:

l Distributed segment processing enabled

l Distributed segment processing disabled

Set the operation mode on the Data Domain system. The Microsoft application agentnegotiates with the Data Domain system for the current setting of the option andaccordingly performs backups.

Distributed segment processing enabled modeWhen you enable the distributed segment processing feature, the DD Boost libraryperforms the following tasks:

1. Segments the data.

2. Computes IDs for the data segments.

3. Checks with the Data Domain system for duplicate segments.

4. Compresses unique segments that the Data Domain system does not contain.

5. Sends the compressed data to the Data Domain system, which writes the uniquedata to disk.

You must configure the local compression algorithm that the DD Boost library uses onthe Data Domain system. The Data Domain Operating System Administration Guideprovides more information about local compression and its configuration.

Distributed segment processing disabled modeWhen you disable the distributed segment processing feature, the DD Boost librarysends the data directly to the Data Domain system through the network. The DataDomain system then segments, deduplicates, and compresses the data before writingit to the disk.

Note

You cannot disable the distributed segment processing feature on an ExtendedRetention Data Domain system.

Advanced load balancing and link failover

Note

This topic is relevant only if you use an Ethernet connection for backup and restoreoperations with the Microsoft application agent.

The advanced load balancing and link failover feature enables the followingcapabilities:

l Combination of multiple Ethernet links into an interface group.

l Registration of only one interface on the Data Domain system with the Microsoftapplication agent.

If you configure an interface group, the Microsoft application agent negotiates withthe Data Domain system on the registered interface to send the data. When the Data

Configuring the Data Domain System

38 Microsoft Application Agent 4.7 SQL Server User Guide

Page 39: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Domain system receives the data, the data transfer load is balanced and distributed onall the interfaces in the group.

Load balancing provides greater physical throughput to the Data Domain system ascompared to configuring the interfaces into a virtual interface by using Ethernet-levelaggregation.

The Data Domain system balances the connection load from multiple database serverson all the interfaces in the group. The advanced load balancing and link failover featureworks at the Data Domain Boost software layer. The feature is seamless to theunderlying network connectivity, and supports both physical and virtual interfaces.

The feature balances the load of the data transfer depending on the number ofoutstanding connections on the interfaces. The feature balances the load of theconnections only for backup and restore jobs.

The file replication connection between Data Domain systems is not part of the loadbalancing. You must use only one IP address for the target Data Domain system.

You must exclude one interface from the interface group (ifgroup) and reserve thatinterface for the file replication path between the source and target Data Domainsystems.

Every installation of the Microsoft application agent must be able to connect to everyinterface that is a member of the interface group on the Data Domain system.

You can use the advanced load balancing and link failover feature with other networklayer aggregation and failover technologies. You can put the links that connect thedatabase servers and the switch that connects to the Data Domain system in anaggregated failover mode. This configuration provides end-to-end network failoverfunctionality. You can use any of the available aggregation technologies between thedatabase server and the switch.

The advanced load balancing and link failover feature also works with other networklayer functionality, such as VLAN tagging and IP aliasing, on the Data Domain systems.This functionality provides additional flexibility in segregating traffic into multiplevirtual networks that run through the same physical links on the Data Domain system.

The Data Domain Operating System Administration Guide provides more informationabout how to configure VLAN tagging and IP aliasing on a Data Domain system.

The advanced load balancing and link failover feature provides the following benefits:

l Eliminates the need to register one storage server for each host that runs theMicrosoft application agent, which potentially simplifies installation management.

l Routes subsequent incoming backup jobs to the available interfaces if one of theinterfaces in the group stops responding while the Data Domain system isoperational.

l Increases link utilization by balancing the load of the backup and restore jobs onmultiple interfaces in the group.

l Performs a transparent failover of all current jobs to healthy operational links whenan interface fails. The process does not interrupt the jobs.

Configuring advanced load balancing and link failover on page 25 provides informationabout how to configure advanced load balancing and link failover.

Configuration restrictionsThe Advanced load balancing and link failover feature has the following restrictions:

l You can add interfaces to groups only by using IP addresses.

Configuring the Data Domain System

Configuration restrictions 39

Page 40: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l You must use interfaces that have the same link speed in a group.

l You need a switch to connect multiple database servers because a Data Domainsystem supports only one interface group.

Encrypted managed file replicationBy default, after the database servers authenticate the file replication jobs by usingthe preconfigured Data Domain Boost username and password, they set upunencrypted file replication jobs between two Data Domain systems. If you enable theencrypted file replication feature, when the database servers set up a replication job,the session between the source and destination Data Domain systems uses SecureSockets Layer (SSL) to encrypt all image data and metadata sent over the WAN.

Enabling this feature on the Data Domain system is transparent to the Microsoftapplication agent. When the Microsoft application agent requests that the DataDomain system perform a file replication job, the source and destination systemsnegotiate the encryption without involving the Microsoft application agent. Encryptedfile replication uses the ADH-AES256-SHA cipher suite, which you cannot change, onthe Data Domain operating system. If you enable this feature, you do not require torestart the file system on the Data Domain system.

If you enable encrypted file replication, you must install a replicator license on anysource and destination Data Domain systems that have DD OS 5.0 or later. Encryptedfile replication applies to all file replication jobs on the system.

You can use encrypted file replication with the encryption of data-at-rest feature,which is available on Data Domain operating systems with the optional encryptionlicense. When you use encrypted file replication with the encryption of data-at-restfeature, the backup process uses SSL to encrypt the backup image data over a WAN.

Enabling encrypted file replication on page 31 provides information on how to enableencrypted file replication. The Data Domain Operating System Administration Guideprovides more information about encrypted file replication.

Data Domain High AvailabilityThe Data Domain High Availability feature enables you to configure two Data Domainsystems as an Active-Standby pair, which provides redundancy in the case of asystem failure. The feature ensures that the active and standby systems are in sync sothat if the active node fails because of either hardware or software issues, the standbynode can continue the services.

The Data Domain High Availability feature provides the following additional supportand capabilities:

l Supports failover of backup, restore, replication, and management services in thetwo-node system.Automatic failover does not require the user intervention.

l Provides a fully-redundant design with no failures when the system is configuredaccording to the recommendations.

l Provides an Active-Standby system with no deterioration of performance in thecase of a failover.

l Provides a failover within 10 minutes for most of the operations.

l Supports IP and FC connections.Both the nodes must have access to the same IP networks, FC SANs, and hosts.

Configuring the Data Domain System

40 Microsoft Application Agent 4.7 SQL Server User Guide

Page 41: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The latest version of the Data Domain Operating System Administration Guide providesmore information about the Data Domain High Availability feature.

The deployment of the Microsoft application agent with Data Domain High Availabilityimproves the resilience in the ProtectPoint workflows, in terms of the data paths thatare involved in the operations. However, if a failover occurs during the vdiskoperations in a ProtectPoint workflow, the Microsoft application agent fails itsoperation.

Validating the Data Domain systemTo validate the status of the Data Domain system, run the following commands:

filesys statusddboost statusifgroup show config interfacesddboost show connectionsddboost storage-unit show compressionddboost storage-unit show

The Data Domain Operating System Command Reference Guide provides details aboutthese commands and their options.

The command that you use to validate the communication between the databaseserver and the Data Domain system depends on the type of the network connectionthat you use.

l If you have a DD Boost-over-IP system, log in to the database server, and then runthe following command:

# rpcinfo -p <Data_Domain_system_hostname>

The command output must include the ports listed in Opening ports in a firewall toenable Data Domain backups on page 20.

l If you have a DD Boost-over-FC system, log in to the database server, and thenrun the relevant command to verify whether the DFC devices are visible on theclient.The Data Domain Operating System Command Reference Guide provides detailsabout the supported commands.

Troubleshooting the Data Domain systemThe Knowledgebase Article 334991, which is titled How to troubleshoot DataDomain DDBoost connectivity and performance provides information about how to use theddpconnchk tool to troubleshoot specific Data Domain Boost issues. The article isavailable on Online Support (https://support.emc.com).

Configuring the Data Domain System

Validating the Data Domain system 41

Page 42: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Configuring the Data Domain System

42 Microsoft Application Agent 4.7 SQL Server User Guide

Page 43: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 2

Configuring Data Domain Boost

This chapter includes the following sections:

l Overview of Data Domain Boost with SQL Server..............................................44l Architecture of the Microsoft application agent for Data Domain Boost with SQL

Server................................................................................................................ 45l SQL Server transparent data encryption............................................................46l Configure a user with the required privileges for SQL Server Data Domain Boost

operations.......................................................................................................... 47l Create a configuration file..................................................................................49l Configuring the lockbox......................................................................................51l Configure prerequisites to back up and restore Always On availability groups... 55l Parsing TSQL operational output into multiple tables.........................................57

Configuring Data Domain Boost 43

Page 44: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Overview of Data Domain Boost with SQL ServerLearn about the features and capabilities that the Microsoft application agent for DataDomain Boost with SQL Server supports.

Backup and recovery

l Federated backups and restores of Always On availability group databases.

l Instance-level backups and restores.

l Multiple database backups and restores.

l Scheduled backups with SQL Agent Jobs.

l Transact-SQL (T-SQL) scripting with improved return codes to perform backupsand restores in a SQL environment.

l Table restores, which are also known as granular-level restores, with ItemPoint forSQL Server.

l Flat file restores.

l Restores at file group level.

l Redirected restore to the same or a different SQL Server, same or a different SQLinstance, and same or a different database.

Data Domain Cloud Tier

l Marking save sets to move from a Data Domain active tier to a Data Domain CloudTier.

l Manually recalling save sets from a Data Domain Cloud Tier to a Data Domainstorage unit.

l Automatically recalling save sets from a Data Domain Cloud Tier to a Data Domainstorage unit or restoring backups directly from the cloud.

Note

Direct restore operations are only available for DDOS 6.1 using Elastic CloudStorage

l Deleting save sets on a Data Domain Cloud Tier.

Environmental support

l IPv4 and IPv6 support.

l Coexistence with other backup products that protect data that the Microsoftapplication agent does not protect.However, the Microsoft application agent cannot coexist with the databaseapplication agent.

l Common lockbox path, that is, the same lockbox in a common location for theMicrosoft application agent, the database application agent, and the file systemagent.

l Supports Data Domain High Availability for improved resiliency.Data Domain High Availability on page 40 provides information.

Configuring Data Domain Boost

44 Microsoft Application Agent 4.7 SQL Server User Guide

Page 45: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

User interface

l Displaying the Windows cluster name and the backup preference in theConnections panel in the GUI, in the case of Always On availability groups.

l Displaying a message in the Database Restore GUI to enable the instant fileinitialization feature on SQL Server for a better performance of database restores,if the feature is not enabled.

l Caching data related to SQL Server, SQL Server instances, databases, and othersettings on the General, Files, and Options pages whenever the application agentstarts.The application agent also caches the save set information for the duration of aparticular session. Caching saves time by eliminating the need to reselect thesettings each time the application agent starts, and especially when the SQLServer contains a large number of databases, or a large number of backups for adatabase.

l Retrieving a particular number of save sets or backup versions, and displayingthem depending on the value (number) that is specified in the Database RestoreGUI.

Architecture of the Microsoft application agent for DataDomain Boost with SQL Server

The following figure illustrates the general architecture of the Microsoft applicationagent for Data Domain Boost with SQL Server.

Figure 1 The Microsoft application agent for Data Domain Boost with SQL Server generalarchitecture

The following points describe the important components of the Microsoft applicationagent for Data Domain Boost with SQL Server:

l SQL Server Management Studio plug-in: The Microsoft application agent for DataDomain Boost with SQL Server has an SSMS plug-in GUI. The plug-in is similar tothe SQL native backup and restore GUI.

l Virtual Device Interface: The Microsoft application agent for Data Domain Boostwith SQL Server uses a VDI, which is an API provided by SQL Server, to integrate

Configuring Data Domain Boost

Architecture of the Microsoft application agent for Data Domain Boost with SQL Server 45

Page 46: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 1 The Microsoft application agent for Data Domain Boost with SQL Server generalarchitecture (continued)

with the SQL Server and enables the Data Domain Boost with Microsoftapplication agent to back up and restore SQL Server data. The Microsoftdocumentation provides information about the VDI technology. Run the Microsoftapplication agent on the same host that has the SQL Server.

l DD Boost library: Performs source-based deduplication and sends the backup datato the Data Domain server.

SQL-CLR Assembly: CLR and T-SQL scripts must be integrated to create functions orprocedures to perform backups and restores in a SQL environment. The Microsoftapplication agent installation deploys the CLR assembly. The CLR assembly containsone exportable SQL function type routine to run any Microsoft application agentcommand at the command prompt.

The following figure illustrates the SQL Server - CLR Assembly architecture.

Figure 2 The Microsoft application agent for Data Domain Boost with SQL Server - CLRAssembly architecture

SQL Server transparent data encryptionMicrosoft SQL transparent data encryption (TDE) is a feature that performs realtimeI/O encryption and decryption of the data and log files.

TDE uses a database encryption key (DEK), which is stored in the database bootrecord for availability during recovery. Encryption of the database file is performed atthe page level. The pages in an encrypted database are encrypted before they arewritten to disk and decrypted when read into memory. When using this feature,ensure that the certificate and private key are backed up with the encrypted data.

Microsoft SQL Server 2008 and later introduce the TDE database-level encryptionfeature. This feature provides protection for the entire database at rest, withoutaffecting existing applications. The Microsoft application agent supports SQL dataencryption at the cell level, at the full database level by using TDE, or at the file-levelwith encryption options provided by Microsoft.

Configuring Data Domain Boost

46 Microsoft Application Agent 4.7 SQL Server User Guide

Page 47: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

The Microsoft application agent does not support third party transparent dataencryption for SQL VDI.

The Microsoft SQL Server product documentation provides more information aboutTDE, enabling data encryption, and protecting the encryption keys.

Note

When enabling TDE, back up the certificate and the private key associated with thecertificate. If the certificate becomes unavailable or if the database is restored onanother server, backups of both the certificate and the private key must be availableto open the database.

Configure a user with the required privileges for SQL ServerData Domain Boost operations

The Microsoft application agent requires that the user starting backup and recoveryoperations is assigned certain privileges from the SQL Server and the Windowsapplication host. The minimum Windows privileges that are required depend on thetype of operation and tool that you use.

Microsoft documentation provides additional information and steps on how toconfigure user accounts.

Required privileges to perform backup and recovery of a standalone serverLearn about the user requirements for standalone backup and recovery.

Required SQL Server rolesAssign the user the following SQL Server roles:

l sysadmin

l public

Required Windows user permissionsCreate a local or domain Windows user account and assign the following roles:

l For table-level backup and recovery, assign administrative privileges.

l For database-level backup and recovery, assign the following permissions:

n Add the user to the "Create global objects" Windows policy

n Assign the following permissions to the data and log folder of the database:

– Read

– Write

– List folder contents

The default data and log folder is the SQL Server installation path. For example,for SQL Server 2012 the default path is C:\Program Files\MicrosoftSQL Server\MSSQL12.MSSQLSERVER\MSSQL\

Configuring Data Domain Boost

Configure a user with the required privileges for SQL Server Data Domain Boost operations 47

Page 48: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Required privileges to perform backup and recovery of an Always Onavailability group

Learn about the user requirements for standalone backup and recovery.

Required SQL Server rolesAssign the user the following SQL Server roles:

l sysadmin

l public

Required Windows user permissionsCreate a Windows user account with one of the following configurations:

l The built-in Windows Administrator

l A domain user added to the Administrators user group

l A local user account added to the Administrators user group on each node in thecluster. The username and password must be the same on each node.

Note

If you are using an account that you created (an account that is not the built-inWindows Administrator), you must launch the tool where you will perform the backupor recovery with elevated permissions (run as administrator).

Required privileges to perform backup and recovery of a Failover ClusterInstance or Always On Failover Cluster Instance

Learn about the user requirements for Failover Cluster Instance or Always On FailoverCluster Instance backup and recovery.

Required SQL Server rolesAssign the user the following SQL Server roles:

l sysadmin

l public

Required Windows user permissionsCreate a Windows user account with one of the following configurations:

l The built-in Windows Administrator

l A domain user added to the Administrators user group

Note

If you are using an account that you created (an account that is not the built-inWindows Administrator), you must launch the tool where you will perform the backupor recovery with elevated permissions (run as administrator).

Required privileges to view and delete save sets with the Data Domain Boostexpiry tool (ddbmexptool)

Any user can use the ddbmexptool command to list and delete save sets as long asthe user is granted access to the lockbox using the msagentadmin command.Administrative privileges are not required.

Configuring Data Domain Boost

48 Microsoft Application Agent 4.7 SQL Server User Guide

Page 49: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Required user privileges to manage save sets and list client and storage unitinformation with msagentadmin.exe

Any user can use the msagentadmin.exe command to list files, mark and recall savesets, delete save sets, list clients on the storage units, and display Data Domainstorage unit stream limit information. Administrative privileges are not required.

Note

When you use msagentadmin.exe to create and edit the lockbox, you must use anadministrative user.

Adding a user to a Windows policyProcedure

1. From the Start menu, open Local Security Policy.

2. In the Security Settings pane, expand Local Policies > User RightsAssignment.

3. For each policy that you want to add the user to, complete the following steps:

a. Right-click the policy and click Properties.

b. In the policy Properties window, click Add User or Group.

c. Add the local user to the policy, and then click Apply.

Create a configuration fileCreate a configuration file with any of the following parameters, as required.

GeneralThe following table describes the parameters for the General configuration filecategory.

Table 3 General configuration file parameters

Parameter Description

CLIENT=<client_or_hostname> Mandatory.Specifies the application server hostname, to which you wantto back up or restore the databases. In the case of clusterconfigurations, specify the name of the cluster instance.

LOCKBOX_PATH=<full_path_to_lockbox> Optional.Specifies the complete directory pathname of the lockbox onthe database or application host. For example, C:\ProgramFiles\DPSAPPS\common\lockbox.

DEBUG_LEVEL=<debug_level_1_through_9> Optional.Specifies whether the software writes debug messages to thedebug log file. The default value is 0, in which no debugmessages are generated. The highest level is 9, in which themost detailed debug messages are generated.

Configuring Data Domain Boost

Required user privileges to manage save sets and list client and storage unit information with msagentadmin.exe 49

Page 50: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 3 General configuration file parameters (continued)

Parameter Description

LIST_SAVESET_DESC={TRUE | FALSE} Optional.Specifies whether to list save sets in descending order,showing the most recent save sets first. The default value isFALSE, in which save sets are listed in ascending order.

Primary systemThe following table describes the parameters for the Primary system configuration filecategory.

Table 4 Primary system configuration file parameters

Parameter Description

DDBOOST_USER=<DDBoost_username> Mandatory.Specifies the username of the DD Boost user.

You must register the hostname and the DD Boost usernamein the lockbox to enable Microsoft application agent toretrieve the password for the registered user.

DEVICE_HOST=<Data_Domain_server_name> Mandatory.Specifies the name of the Data Domain server that containsthe storage unit, to which you want to back up and restorethe databases with.

You must register the hostname and the DD Boost usernamein the lockbox to enable Microsoft application agent toretrieve the password for the registered user.

DEVICE_PATH=<storage_unit_name> Mandatory.Specifies the name and the path of the storage unit, to whichyou want to back up and restore the databases with.

DDBOOST_FC={TRUE | FALSE} Optional.Specifies whether a backup or restore on the primary DataDomain system uses a Fibre Channel (FC) or IP networkconnection. The default value is FALSE. Specify TRUE to usean FC network connection during backup and restore.

Note

If this parameter is set to TRUE, the primary Data Domainsystem must be configured to support an FC connection.

DEVICE_FC_SERVICE=<fibre_channel_server> Mandatory when the DDBOOST_FC parameter is set to TRUESpecifies the name of the FC service configured on theprimary Data Domain system to be used for a backup orrestore.

DDVDISK_USER=<vdisk_username> Optional.Specifies the Data Domain vdisk user. If you do not specifythis parameter, the value defaults to the DDBOOST_USER.

Configuring Data Domain Boost

50 Microsoft Application Agent 4.7 SQL Server User Guide

Page 51: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 1 Example configuration file contents

For example, create the C:\ddconfig.cfg file with the following contents:

DDBOOST_USER=DD163_userDEVICE_HOST=ledmd035.lss.example.comDEVICE_PATH=/SU_DD163LOCKBOX_PATH="C:\Program Files\DPSAPPS\common\lockbox"CLIENT=mw2k8x64sql2.appagentdev.comDEBUG_LEVEL=0

Configuring the lockboxThe lockbox is an encrypted file that the Microsoft application agent uses to storeconfidential data, such as login credentials, and protect that data from unauthorizedaccess.

Registering a Data Domain server to a new lockbox creates thePersistedSettings.xml file in the lockbox folder. Registering a Data Domainserver to or removing a Data Domain server from the lockbox updates thePersistedSettings.xml file.

The PersistedSettings.xml file contains Data Domain server information, suchas Data Domain server name, communication protocol, FC service name, username ofthe DD Boost user, and storage unit.

You can configure one of the following lockbox types according to your environmentalrequirements.

Single lockboxIn a standalone environment, create a single lockbox on the host.

Shared lockboxIn an environment with multiple instances, you can configure a single lockbox in ashared location and grant each remote host individual access to the lockbox.

Note

Do not use a single shared lockbox to perform remote backup operations in a clusterenvironment. The backup will fail. Use multiple lockboxes in a cluster environment.

Multiple lockboxesIn an environment with multiple instances, you can configure a lockbox on eachinstance in the environment.

Commands to create and manage the lockboxLockbox operations are administered using the msagentadmin administrationcommand.

Note

The user running the lockbox operations must be an administrator.

Configuring Data Domain Boost

Configuring the lockbox 51

Page 52: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The following sections describe the commands for creating, registering, and managingthe lockbox.

Create a lockboxTo create a lockbox, run the following command:

msagentadmin administration --createLB [--lockbox <lockbox_directory>] [--debug 9]

If you don't specify a lockbox directory, the default directory is used, which is C:\Program Files\DPSAPPS\common\lockbox.

Register credentials to the lockboxTo register credentials to the lockbox, run the following command:

msagentadmin administration --registerLB --config <config_file_path> [--confirm] [--debug 9]

Unregister credentials from the lockboxTo delete credentials from the configuration file and lockbox, run the followingcommand:

msagentadmin administration --deleteLB --config <config_file_path> [--confirm] [--debug 9]

Grant a remote host access to the lockboxTo grant a remote host access to the lockbox, run the following command

msagentadmin administration --grantLB [--lockbox <lockbox_directory>] [-a "LOCKBOX_REMOTE_HOST=<hostname_to_add>"] [-a "VIRTUAL_HOST=yes"] [--debug 9]

Revoke access that a remote host has to the lockboxTo revoke access that a remote host has to the lockbox, run the following command

msagentadmin administration --revokeLB [--lockbox <lockbox_directory>] [-a "LOCKBOX_REMOTE_HOST=<hostname_to_delete>"] [--debug 9]

Reset the lockboxTo reset the lockbox, run the following command:

msagentadmin administration --updateLB [--lockbox <lockbox_directory>] [--debug 9]

Create a custom passphraseTo create a custom passphrase for the lockbox, run the following command:

msagentadmin administration --updateLB -a SET_LOCKBOX_PASSPHRASE=TRUE -a LOCKBOX_PATH=<lockbox_directory>

Configuring Data Domain Boost

52 Microsoft Application Agent 4.7 SQL Server User Guide

Page 53: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

After typing this command, the following prompts appear. Use the prompts to set thepassphrase.

Enter a passphrase (refer to the administration guide for passphrase complexity requirements):Confirm the passphrase:

The following output appears:

The passphrase for the lockbox '<lockbox>' in the directory '<lockbox_directory>' has been updated.

Note

The custom passphrase must meet the following complexity requirements:

l Minimum length of nine characters.

l Minimum of one uppercase character.

l Minimum of one lowercase character.

l Minimum of one special character.

l Minimum of one digit.

Use the custom passphrase to reset the lockboxThe passphrase may be used to restore access to a host that cannot access thelockbox.

To use the custom passphrase to reset the lockbox, run the following command:

msagentadmin administration --updateLB -a USE_LOCKBOX_PASSPHRASE=TRUE -a LOCKBOX_PATH=<lockbox_directory>

After typing this command, the following prompt appears. Use the prompt to set thepassphrase.

Enter a previously set passphrase:

The following output appears:

The lockbox '<lockbox>' in the directory '<lockbox_directory>' has been reset.

Create a custom security option for a lower system stable values (SSV) thresholdTo create a custom security option for lower security in the system stable values(SSV) threshold for the lockbox, run the following command:

msagentadmin administration --updateLB -a SET_LOCKBOX_SECURITY="custom" -a LOCKBOX_PATH=<lockbox_directory>

This command is useful when the lockbox becomes frequently inaccessible afterregular system upgrades. However, it is recommended that you use the passphrase toreset the lockbox instead of customizing the security level.

Configuring Data Domain Boost

Commands to create and manage the lockbox 53

Page 54: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Import the lockboxTo import the lockbox, run the following command:

msagentadmin administration --updateLB -a LOCKBOX_IMPORT=yes -a LOCKBOX_PATH=<lockbox_directory>

This command is useful when the lockbox is created in a non-default directory and thelockbox needs to be upgraded (imported) to the latest version.

Create a lockboxUse the following steps to create a lockbox and add credentials to it.

Procedure

1. Create the lockbox using the following command:

msagentadmin administration --createLB

For example, to create a lockbox in the folder C:\Lockboxes type thefollowing command:

msagentadmin administration --createLB --lockbox C:\Lockboxes

If you don't specify a folder, the lockbox is created in the default directory,which is C:\Program Files\DPSAPPS\common\lockbox.

NOTICE

When the Microsoft application agent is integrated with eCDM, the lockboxmust be located in the default directory.

2. Create a configuration file that contains the appropriate credentials.

For example, type the following command to edit config.cfg:

notepad c:\Lockboxes\config.cfg

Then add the appropriate configurations to the configuration file. For example,to register a Data Domain server, add the following credentials:

LOCKBOX_PATH=C:\LockboxesDDBOOST_USER=ddvdiskDEVICE_HOST=ledmd034.lss.emc.com DEVICE_PATH=/ddbdatest/mattp/pp

3. Use the configuration file to register the credentials with the lockbox by typingthe following command:

msagentadmin administration --registerLB --config "<config_file_path>"

Configuring Data Domain Boost

54 Microsoft Application Agent 4.7 SQL Server User Guide

Page 55: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

For example:

msagentadmin.exe administration --registerLB --config "C:\lockbox-config-details.cfg"

You are prompted for any required passwords for the configured user accounts.

Configure prerequisites to back up and restore Always Onavailability groups

Configure the following prerequisites to perform federated backups of Always Onavailability groups.

Note

In addition to the following prerequisites, ensure that you have assigned the requiredpermissions as described in Configure a user with the required privileges for SQLServer Data Domain Boost operations on page 47.

Install the Microsoft application agent on each nodeYou must install the Microsoft application agent on all the nodes that are in the AlwaysOn availability group.

Configure a the lockboxYou must use configure either a single shared lockbox or a separate lockbox on eachnode that is in the Always On availability group.

Set Readable Secondary settingsSet the Always On availability group Readable Secondary configuration option toeither Yes or Read-intent only:

1. On the SQL Server’s SSMS, in the Object Explorer, right-click the Always Onavailability group and select Properties.The Availability Group Properties dialog box appears.

2. In the Availability Replicas table, in the Readable Secondary column, selecteither Yes or Read-intent only for each of the primary and secondary replicas ofthe SQL Server instances.This setting allows the Microsoft application agent to gather information about thesecondary replica (for example, database file location, which can be different fromthe other replicas).

Configure the Execute Methods and Remote Enable permissions with WindowsManagement Instrumentation (WMI)Configure Windows Management Instrumentation (WMI) to assign the ExecuteMethods and Remote Enable permissions to the user account:

Note

If you are a domain administrator, you do not need to explicitly set these permissionsbecause you have these permissions by default.

1. On the SQL Server, from the Start menu, click Run.2. Type wmimgmt.msc, and then press Enter on the keyboard.

3. In the WMI Control pane, right-click WMI Control (Local), and selectProperties.

Configuring Data Domain Boost

Configure prerequisites to back up and restore Always On availability groups 55

Page 56: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

4. In the WMI Control Properties dialog box:

a. Click the Security tab.

b. Expand the Root node, and select the cimv2 namespace.

c. Click Security to open security settings for WMI.

d. Click Advanced to open the advanced security settings for this WMInamespace.

e. Specify the user account.

f. Click Edit, and select only Execute Methods and Remote Enable.

g. In the Apply to drop down list, select This namespace and subnamespaces toensure that these permissions apply to this namespace and all the namespacesunder it.

h. Click OK to save the new permissions.

Assign Read and Read & Execute permissions to the user accountOn the NTFS volumes, assign the Read and Read & Execute permissions to the useraccount:

1. In Windows Explorer, right-click the file or folder with which you want to work,and select Properties.

2. In the Properties dialog box, click the Security tab.

3. From the Name list, select the user, contact, computer, or group whosepermissions you want to view.

4. Assign the Read and Read & Execute permissions to the user account.

Assign Group Policy Object (GPO) rights to the user accountOn the SQL Server, assign the Group Policy Object (GPO) rights to the user account:

l Assign the Log on as a batch job right to the user account to run tasks in the TaskScheduler when you are not logged in:

1. On the Start menu, click Run, type secpol.msc, and press Enter on thekeyboard.The Local Security Policy window appears.

2. In the left pane, under Security Settings, click Local Policies > User RightsAssignment.

3. In the right pane, double-click Log on as a batch job.The Log on as a batch job Properties dialog box appears.

4. On the Local Security Setting tab, click Add User or Group....The Select Users, Computers, Service Accounts, or Groups dialog boxappears.

5. In the Enter the object names to select field, specify the user account, andthen click OK.

l Assign the Log on as a service right to the user account:

1. On the Start menu, click Run, type secpol.msc, and press Enter on thekeyboard.The Local Security Policy window appears.

2. In the left pane, under Security Settings, click Local Policies > User RightsAssignment.

Configuring Data Domain Boost

56 Microsoft Application Agent 4.7 SQL Server User Guide

Page 57: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

3. In the right pane, double-click Log on as a service.The Log on as a service Properties dialog box appears.

4. On the Local Security Setting tab, click Add User or Group....The Select Users, Computers, Service Accounts, or Groups dialog boxappears.

5. In the Enter the object names to select field, specify the user account, andthen click OK.

Parsing TSQL operational output into multiple tablesThe Microsoft application agent supports displaying TSQL operational output in tableformat and plain text format.

You can parse Microsoft application agent TSQL operational output into separatetables. The following TSQL script shows an example of converting output into anothertable.

TSQL script for parsing output into multiple tables

USE [master]GO--insert into tabledeclare @t table (msg nvarchar(MAX))DECLARE @returnCode intinsert into @t (msg) EXEC @returnCode = dbo.emc_run_delete' -e now -n mssql -a "DDBOOST_USER = dduser" -a "DEVICE_HOST = ddhost.com" -a "DEVICE_PATH = /ddpath" -a "CLIENT =sqlServerHost"' IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END--parsing the msg for saveset entriesdeclare @output table( client nvarchar(100), SaveDate nvarchar(100), ssid nvarchar(25), saveset nvarchar(100))declare @tmpmsg nvarchar(max)declare @begin int, @end intdeclare @client nvarchar(100), @saveDate nvarchar(100), @ssid nvarchar(25), @saveset nvarchar(100)declare log_cursor CURSOR FOR select * from @topen log_cursorfetch next from log_cursor into @tmpmsgwhile @@FETCH_STATUS = 0BEGINif (PATINDEX('client = %', @tmpmsg) > 0)beginSET @begin = CHARINDEX('=', @tmpmsg, 1)SET @end = CHARINDEX(',', @tmpmsg, @begin)SET @client = SUBSTRING(@tmpmsg, @begin+1, @end-@begin-1)SET @begin = CHARINDEX('=', @tmpmsg, @end)SET @end = CHARINDEX('(', @tmpmsg, @begin)SET @saveDate = SUBSTRING(@tmpmsg, @begin+1, @end-@begin-1)SET @begin = @endSET @end = CHARINDEX(')', @tmpmsg, @begin)SET @ssid = SUBSTRING(@tmpmsg, @begin+1, @end-@begin-1)SET @begin = CHARINDEX('name =', @tmpmsg, @end)SET @saveset = RIGHT(@tmpmsg, LEN(@tmpmsg)-@begin-6)insert into @output(client, SaveDate, ssid, saveset) values (@client, @saveDate, @ssid, @saveset)endfetch next from log_cursor into @tmpmsgENDCLOSE log_cursor

Configuring Data Domain Boost

Parsing TSQL operational output into multiple tables 57

Page 58: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

deallocate log_cursorselect * from @output

Configuring Data Domain Boost

58 Microsoft Application Agent 4.7 SQL Server User Guide

Page 59: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 3

Configuring ProtectPoint

This chapter includes the following sections:

l Overview of ProtectPoint with SQL Server....................................................... 60l Supported configurations of ProtectPoint with SQL Server............................... 61l Configuring ProtectPoint with RecoverPoint.....................................................62l Configuring ProtectPoint with VMAX................................................................ 68l Configuring the lockbox..................................................................................... 79l Configure prerequisites to back up and restore Always On availability groups....83l Parsing TSQL operational output into multiple tables.........................................83

Configuring ProtectPoint 59

Page 60: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Overview of ProtectPoint with SQL ServerLearn about the features and capabilities that the Microsoft application agent forProtectPoint with SQL Server supports.

ProtectPoint backups

l Microsoft SQL Server Management Studio plugin, T-SQL and command promptinterfaces to perform backupsBackup maintenance operations, such as delete, is available in T-SQL and thecommand prompt.

l Full backups, in which only changed blocks of the source devices are moved toData Domain by using ProtectPoint technology

l Transaction log backups by using Data Domain Boost workflow

l Hybrid backups that include performing full backups first, and then transaction logbackups

l Writer level backups, in which all the instances that are present on a SQL Serverare backed up

l Instance level backups, in which all the databases (both user and systemdatabases) of a SQL Server instance are backed up

l Database level backups, in which one or more individual databases are backed up

l Listing, browsing, and deleting of backups

l Backing up databases on RDM devices in virtual environments, VMware andHyper-V

ProtectPoint restores

l Microsoft SQL Server Management Studio plugin, T-SQL and command promptinterfaces to perform restores

l Instance level restores, in which all databases in a server instance are restored

l Database level restores, in which all of the datafiles in a given database arerestored

l Table level restores (also known as granular-level restores) using ItemPoint forSQL Server

l Volume level rollback restores, in which the whole volume and all the databases onthat volume are replaced

Note

This is an optimized storage level restore where:

n For VMAX, the restore will be done from the latest local snapshot copy

n For XtremeIO with both RecoverPoint and VMAX, the changed blocks arerestored if the restore is from a Data Domain copy

l For RecoverPoint 5.0 or later, restores of a partial consistency group or a subsetof databases of a consistency group as part of a volume restore

l Redirected restores, where the workflow mounts the backup from Data Domaindirectly and restores the files that are needed

l Restoring the databases to files

Configuring ProtectPoint

60 Microsoft Application Agent 4.7 SQL Server User Guide

Page 61: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Environmental support

l Coexistence with other backup products that you use to protect data that theMicrosoft application agent does not protectHowever, the Microsoft application agent cannot coexist with the databaseapplication agent.

l Common lockbox path, that is, the same lockbox in a common location for theMicrosoft application agent, the database application agent, and the file systemagent.

l Supports Data Domain High Availability for improved resiliency.Data Domain High Availability on page 40 provides information.

Supported configurations of ProtectPoint with SQL ServerThe Microsoft application agent for ProtectPoint with SQL Server supports thefollowing configurations:

l Data Domain High Availability

l An application host with one or more production LUNs that contain applicationdata

l One RecoverPoint cluster on the same data center as the production LUNs

l One Data Domain system directly connected to the RecoverPoint cluster

l Only fibre channel connectivity between RecoverPoint and Data Domain

l MBR or GPT formatted disks because VSS has no restriction on the type of thedisk format

l Volumes that are mountable by using either driver letters or mount points

l Up to 64 volumes in a VSS backup session

l Physical environment or VMware ESX or Hyper-V server virtual machines withphysical Raw Device Mapping (RDM)

l Any I/O multipathing software such as, PowerPath, Windows MPIO, and so onthat is installed for source LUNs

l Configurations, where all the volumes that are to be backed up are present onXtremIO, and configured on RecoverPoint for ProtectPoint backupsDuring ProtectPoint backups, all the volumes that are included in the backup mustbe capable of creating RecoverPoint snapshots. Otherwise, the VSS backups fail.

For example, assume the following:

n A SQL Server instance is installed in C:\ (local drive) and the system databaseson the same C:\.

n An user database is created on the SQL Server instance, where the data filesare stored in E:\ and the transaction logs are stored in F:\, and both E:\ and F:\ are XtremIO volumes.In this case, you cannot back up the entire SQL Server installation because thesystem databases do not reside on a volume that is capable of creatingRecoverPoint snapshots. You can back up only the customer’s databasebecause both E:\ and F:\ support ProtectPoint backups.

l Configurations where all the volumes that are to be backed up are present onVMAX.

Configuring ProtectPoint

Supported configurations of ProtectPoint with SQL Server 61

Page 62: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Configuring ProtectPoint with RecoverPointThe ProtectPoint Solutions Guide and the ProtectPoint Primary and Protection StorageConfiguration Guide provide information about how to configure primary and protectionstorage for ProtectPoint and vdisk.

NOTICE

The Microsoft application agent uses a Data Domain Boost storage unit for catalogoperations and SQL Server transaction log backups even in ProtectPointenvironments. Ensure that the Data Domain administrator provides a storage unit.

The RecoverPoint documentation provides information about how to install andconfigure RecoverPoint.

The XtremIO documentation provides information about how to install and configurethe XtremIO storage device.

ProtectPoint with RecoverPoint overviewThe Microsoft application agent supports ProtectPoint type of protection ofMicrosoft application data on the XtremIO storage devices by using RecoverPoint.

The Microsoft application agent uses the ProtectPoint technology to enable snapshotbackups of Microsoft applications’ data from primary storage on an XtremIO systemto protection storage on a Data Domain system. This technology provides blockmovement of data from the XtremIO system source LUNs (managed by RecoverPointconsistency groups) to the Data Domain system. The Microsoft application agent alsoenables the restoration of ProtectPoint backups from the Data Domain system.

A ProtectPoint data backup provides a full backup with the cost of an incrementalbackup. Also, the backup has minimum overhead on the application host because allthe changed blocks are moved from XtremIO to Data Domain through a RecoverPointappliance (RPA).

The Software Compatibility Matrix, which is available at http://compatibilityguide.emc.com:8080/CompGuideApp/, provides information about thesupported platforms, file systems, and volume managers to perform the ProtectPointoperations.

Use the Microsoft application agent backup and recovery tools, such as the SQLServer Management Studio plugin, to perform a ProtectPoint backup and recovery forSQL Server.

ProtectPoint uses the following features on the Data Domain system, RecoverPointcluster, and XtremIO array to provide data protection:

l On the Data Domain system:

n vdisk and SCSI target servicesn FastCopyn Data Domain Boost

l On the RecoverPoint cluster:

n RecoverPoint consistency groupsl On the XtremIO array:

n XtremIO Initiator Groups

On RecoverPoint, consistency groups protect source LUNs (volumes). Two data setsthat depend on each other, such as a database and a database log, are typically part of

Configuring ProtectPoint

62 Microsoft Application Agent 4.7 SQL Server User Guide

Page 63: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

the same consistency group. Logical components of a consistency group includecopies, replication sets, and journals:

l Copies and journals are all the volumes of a consistency group that are either asource or a target of replication at a specific RPA cluster.

l A consistency group consists of one or more replication sets that include aproduction volume and any local or remote volumes, to which you replicate theproduction volume. In a consistency group, the number of replication sets equalsthe number of replicated production volumes.

A RecoverPoint group set is a user-defined set of consistency groups. TheRecoverPoint documentation provides information about consistency groups and theprocedures to set up consistency groups and their components.

The following conditions apply to ProtectPoint operations:

l The local copy in a consistency group exists on the Data Domain system, and nojournal volume exists for that local copy. The consistency group can have only onelocal copy on a Data Domain system.

l You cannot enable parallel bookmarking for a group set.

l Deleting a consistency group does not delete the associated static images thatbackups created on a Data Domain system. You must manually delete the staticimages according to the Data Domain documentation.

ProtectPoint with RecoverPoint topologyThe following figure shows a sample ProtectPoint topology, with a primary site and asecondary site.

At the primary site, the application host accesses the database data that is stored onthe XtremIO system, and the backup data is transferred to the Data Domain system. Aseparate recovery host is optional. If the recovery is performed to the originalapplication host, the application host is also the recovery host.

Figure 3 ProtectPoint with RecoverPoint environment

If you have a secondary site, you can replicate the backup data from the Data Domainsystem at the primary site to the Data Domain system at the secondary site. At thesecondary site, you can also recover the data to an optional recovery host.

Configuring ProtectPoint

ProtectPoint with RecoverPoint overview 63

Page 64: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

ProtectPoint with RecoverPoint connectivity requirementsProtectPoint with RecoverPoint operations require both IP network (LAN or WAN)and Fibre Channel SAN connections. The following table lists the required types ofnetwork connections.

The following table lists the required types of network connections in a RecoverPointenvironment:

Table 5 Network connection types in a ProtectPoint with RecoverPoint environment

Site Connected components Connection type

Primary site Primary application host to primary XtremIOsystem

FC

Primary application host to RPA IP

Primary application host to primary DataDomain system

IP or (FC and IP)

Primary XtremIO system to RPA FC and IP

RPA to primary Data Domain system IP and (optional) FC

(Optional) Primary recovery host to primaryXtremIO system

FC

(Optional) Primary recovery host to primaryData Domain system

IP or (FC and IP)

(Optional) Primary recovery host to RPA IP

Secondary site(optional)

Secondary recovery host to XtremIO system FC

Secondary recovery host to Data Domainsystem

FC and IP

Cross-siteconnections(optional)

Primary application host to Data Domainsystem

IP

Primary Data Domain system to secondaryData Domain system

IP

ProtectPoint with RecoverPoint architectureThe following figure illustrates the ProtectPoint with RecoverPoint architecture.

Configuring ProtectPoint

64 Microsoft Application Agent 4.7 SQL Server User Guide

Page 65: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 4 ProtectPoint with RecoverPoint architecture

The following are the important components of the Microsoft application agent forProtectPoint with RecoverPoint architecture:

l Requestor (Application Agent VSS Requestor): Communicates with the VSSwriter and the VSS service to orchestrate the backup and writes the catalogentries, which include the backup metadata such as, list of the backed updatabases, static image names on the Data Domain server.

l Volume Shadow Copy service: Coordinates the actions among backup software,the Microsoft application, and the hardware provider. This component enablescreating application-consistent backups.

l Hardware Provider (Application Agent VSS Hardware Provider): Creates shadowcopies by using ProtectPoint technology. This component is implemented as aWindows COM service. This component enables creating a shadow copy,importing the shadow copy, and restoring the shadow copy to the requestor andto the service by using the ProtectPoint technology. This component is not ageneric provider. It works only with the Microsoft application agent requestor.

l Writer: A Microsoft application.

Create a ProtectPoint with RecoverPoint configuration fileCreate a configuration file with any of the following parameters, as required.

GeneralThe following table describes the parameters for the General configuration filecategory.

Table 6 General configuration file parameters

Parameter Description

CLIENT=<client_or_hostname> Mandatory.

Configuring ProtectPoint

Create a ProtectPoint with RecoverPoint configuration file 65

Page 66: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 6 General configuration file parameters (continued)

Parameter Description

Specifies the application server hostname, to which you wantto back up or restore the databases. In the case of clusterconfigurations, specify the name of the cluster instance.

LOCKBOX_PATH=<full_path_to_lockbox> Optional.Specifies the complete directory pathname of the lockbox onthe database or application host. For example, C:\ProgramFiles\DPSAPPS\common\lockbox.

DEBUG_LEVEL=<debug_level_1_through_9> Optional.Specifies whether the software writes debug messages to thedebug log file. The default value is 0, in which no debugmessages are generated. The highest level is 9, in which themost detailed debug messages are generated.

Primary systemThe following table describes the parameters for the Primary system configuration filecategory.

Table 7 Primary system configuration file parameters

Parameter Description

DDBOOST_USER=<DDBoost_user> Mandatory.Specifies the username of the DD Boost user.

You must register the hostname and the DD Boost usernamein the lockbox to enable Microsoft application agent toretrieve the password for the registered user.

DEVICE_HOST=<Data_Domain_server> Mandatory.Specifies the name of the Data Domain server that containsthe storage unit, to which you want to back up and restorethe databases with.

You must register the hostname and the DD Boost usernamein the lockbox to enable Microsoft application agent toretrieve the password for the registered user.

DEVICE_PATH=<storage_unit_name> Mandatory.Specifies the name and the path of the storage unit, to whichyou want to back up and restore the databases with.

DDVDISK_USER=<vdisk_username> Optional.Specifies the Data Domain vdisk user. If you do not specifythis parameter, the value defaults to the user specified withthe DDBOOST_USER parameter.

DDBOOST_FC={TRUE | FALSE} Optional.Specifies whether a backup or restore on the primary DataDomain system uses a Fibre Channel (FC) or IP networkconnection. The default value is FALSE. Specify TRUE to use

an FC network connection during backup and restore.

Configuring ProtectPoint

66 Microsoft Application Agent 4.7 SQL Server User Guide

Page 67: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 7 Primary system configuration file parameters (continued)

Parameter Description

Note

If this parameter is set to TRUE, the primary Data Domain

system must be configured to support an FC connection.

DEVICE_FC_SERVICE=<fibre_channel_server> Mandatory when the DDBOOST_FC parameter is set toTRUE.Specifies the name of the FC service configured on theprimary Data Domain system to be used for a backup orrestore.

RESTORE_DEVICE_POOL=<restore_device_pool> Mandatory.Specifies the restore device pool that contains the vdiskdevices that you use to perform the restore operation. Ensurethat the Data Domain server that you have specified belongsto this device pool.

RESTORE_DEVICE_GROUP=<restore_device_group> Mandatory.Specifies the restore device group that contains the vdiskdevices and the restore device pool that you use to performthe restore operation. Ensure that the Data Domain serverthat you have specified belongs to this device group.

RecoverPoint clusterThe RecoverPoint cluster category is used to configure RecoverPoint operations. Thefollowing table describes the parameters for the RecoverPoint cluster configurationfile category.

Table 8 RecoverPoint cluster configuration file parameters

Parameter Description

RP_MGMT_HOST=<RPA_management_hostname> Mandatory.Specifies the fully qualified host name of the RecoverPointManagement host.

You must register this hostname and the user name in thelockbox so that the Microsoft application agent can retrievethe password for the user.

Type the hostname in the following format:

rp.my-host.com

RP_USER=<RPA_management_host_user> Mandatory.Specifies the RecoverPoint user name that the hardwareprovider uses while taking the LUN level snapshots.

You must register this username and the hostname in thelockbox so that the Microsoft application agent can retrievethe password for this user.

Configuring ProtectPoint

Create a ProtectPoint with RecoverPoint configuration file 67

Page 68: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 8 RecoverPoint cluster configuration file parameters (continued)

Parameter Description

For example: recoverpoint-user

Example configuration fileFor example, create the C:\ddconfig.cfg file with the following contents:

DDBOOST_USER=DD163_userDEVICE_HOST=ledmd035.lss.example.comDEVICE_PATH=/SU_DD163LOCKBOX_PATH="C:\Program Files\DPSAPPS\common\lockbox"RP_MGMT_HOST=ledmd160.lss.example.comRP_USER=adminDDVDISK_USER=DD163_userCLIENT=mw2k8x64sql2.nmmdev.com

Configuring ProtectPoint with VMAXThe ProtectPoint Solutions Guide and the ProtectPoint Primary and Protection StorageConfiguration Guide provide information about how to configure primary and protectionstorage for ProtectPoint and vdisk.

NOTICE

The Microsoft application agent uses a Data Domain Boost storage unit for catalogoperations and SQL Server transaction log backups even in ProtectPointenvironments. Ensure that the Data Domain administrator provides a storage unit.

ProtectPoint with VMAX overviewThe Microsoft application agent supports using ProtectPoint with VMAX to protectMicrosoft applications.

The Microsoft application agent uses ProtectPoint with VMAX to take snapshotbackups of application data and efficiently move that data to protection storage on aData Domain system.

Files that cannot be backed up using ProtectPoint with VMAX, such as files that donot reside on VMAX or that are not supported for snapshots due to vendorrestrictions, are still protected using Data Domain Boost backups.

Recovery is performed using database-specific recovery tools.

The Online Compatibility Matrix, which is available at http://compatibilityguide.emc.com:8080/CompGuideApp/, provides information about thesupported platforms, file systems, and volume managers to perform the ProtectPointwith VMAX operations.

The ProtectPoint technology uses the following Data Domain and VMAX storage arrayfeatures:

Table 9 ProtectPoint with VMAX technology

System Technology

Data Domain vdisk and SCSI targets

Configuring ProtectPoint

68 Microsoft Application Agent 4.7 SQL Server User Guide

Page 69: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 9 ProtectPoint with VMAX technology (continued)

System Technology

FastCopy

VMAX FAST.X for encapsulating external DataDomain devices

SnapVX for snapshots

When taking backups, ProtectPoint first creates a SnapVX snapshot on the VMAXarray. It then uses internal tracking information to efficiently move only changed datablocks through a storage area network (SAN) to the destination Data Domain storagedevice (vdisk), without going through the application host. Data Domain uses thesechanged blocks to update its most recently stored image.

This approach to transmission and storage allows ProtectPoint to take full backupswhile only incurring the cost of an incremental backup.

ProtectPoint backups have minimal overhead on the application host because theprotected data is moved directly from the VMAX array to the Data Domain systemover a SAN.

Supported ProtectPoint with VMAX configurationsLearn about the supported ProtectPoint with VMAX configurations.

ProtectPoint environment with a VMAX array on the primary site and a VMAXarray on the secondary siteThe following figure shows a sample ProtectPoint with VMAX topology, with a primarysite and an optional secondary site.

At the primary site, the application host accesses the data that is stored on the VMAXarray, and the backup data is transferred to the Data Domain system. A separaterecovery host is optional. If you perform the restore operation to the originalapplication host, then the application host is also the recovery host.

Figure 5 ProtectPoint with VMAX on the primary and secondary sites

You can replicate the backup data from the Data Domain system that is at the primarysite to the Data Domain system that is at the secondary site. Also, you can restore the

Configuring ProtectPoint

ProtectPoint with VMAX overview 69

Page 70: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 5 ProtectPoint with VMAX on the primary and secondary sites (continued)

data to the optional recovery host that is at the secondary site. However, you cannotperform a volume level restore, also referred to as a rollback restore.

ProtectPoint host with multiple VMAX arrays on the same siteThe Microsoft application agent supports backing up and restoring application dataresiding on multiple VMAX storage arrays on the same site. The following figure showsan example of this topology:

Figure 6 ProtectPoint with multiple VMAX arrays on the same site

After a snapshot backup is started, VSS quiesces all LUNs simultaneously. The VMAXVSS hardware provider takes snapshots of each of the VMAX provisioned LUNs.

Static images containing data from the backed-up LUNs are stored on a single DataDomain system.

ProtectPoint with VMAX connectivity requirementsProtectPoint with VMAX operations require IP network (LAN or WAN) and FC SANconnections.

The following table lists the required types of network connections in a VMAXenvironment:

Configuring ProtectPoint

70 Microsoft Application Agent 4.7 SQL Server User Guide

Page 71: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 10 Network connection types in a ProtectPoint with VMAX environment

Site Connected components Connection type

Primary site Primary application host to primary VMAXsystem

FC

Primary application host to primary DataDomain system

IP

Primary VMAX system to primary DataDomain system

FC

(Optional) Primary recovery host to primaryVMAX system

FC

(Optional) Primary recovery host to primaryData Domain system

IP

Secondary site(optional)

Secondary recovery host to secondary VMAXsystem

FC

Secondary recovery host to secondary DataDomain system

IP

Secondary VMAX system to secondary DataDomain system

FC

Cross-siteconnections(optional)

Primary application host to secondary DataDomain system

IP

Primary Data Domain system to secondaryData Domain system

IP

Primary VMAX system to secondary VMAXsystem

SRDF/ S, SRDF/A, orSRDF/Metro

Secondary VMAX system to primary DataDomain system

FC, if distancepermits

Primary VMAX system to secondary DataDomain system

FC, if distancepermits

ProtectPoint with VMAX architectureThe following figure illustrates the ProtectPoint with VMAX architecture.

Configuring ProtectPoint

ProtectPoint with VMAX architecture 71

Page 72: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 7 ProtectPoint with VMAX architecture

VMAX replicationThe Microsoft application agent supports ProtectPoint protection that uses a primaryor secondary VMAX system in a VMAX replication environment. In this environment,the primary and secondary VMAX storage arrays are connected by a SymmetrixRemote Data Facility (SRDF) link in synchronous (SRDF/S), asynchronous (SRDF/A),or metro (SRDF/Metro) configurations.

SRDF is a VMAX feature that maintains a synchronous, real-time copy of data at theLUN level between the primary and secondary VMAX arrays. A source LUN referred toas R1 on the primary array is associated with a source LUN referred to as R2 on thesecondary array. The SRDF software maintains continuous synchronization of the twosources by copying all changes on one LUN device to the other. The VMAXdocumentation provides more details about VMAX replication and the SRDFfunctionality.

The following figure shows VMAX arrays with an SRDF/S link, where the secondaryVMAX system is attached to a secondary Data Domain system. In this SRDFconfiguration, you can use the Microsoft application agent to perform a ProtectPointbackup to the secondary Data Domain system, which backs up the R2 LUN.

Note

The Microsoft application agent also uses the Data Domain Boost workflow to back upany nonsnapshotable files and create catalog entries.

Configuring ProtectPoint

72 Microsoft Application Agent 4.7 SQL Server User Guide

Page 73: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 8 ProtectPoint backup to a secondary Data Domain in an SRDF configuration

The following figure shows VMAX arrays with an SRDF/S link, where both the primaryand secondary VMAX systems are attached to a Data Domain system. In this SRDFconfiguration, you can use the Microsoft application agent to perform a ProtectPointbackup to either the primary or secondary Data Domain system. The primaryProtectPoint backup backs up the R1 LUN to the primary Data Domain system. Thesecondary ProtectPoint backup backs up the R2 LUN to the secondary Data Domainsystem.

Note

The Microsoft application agent cannot perform backups to both Data Domainsystems in the same backup session.

In these SRDF configurations, the Microsoft application agent validates thesynchronization of the R1 and R2 LUNs. The Microsoft application agent then createsa SnapVX snapshot of the R2 LUN to transfer the backup data to the secondary DataDomain system.

Configuring ProtectPoint

VMAX replication 73

Page 74: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 9 ProtectPoint backup to a primary or secondary Data Domain in an SRDF configuration

SRDF/S requirements and configuration support for the ProtectPoint Microsoftapplication agent are as follows:

l The Microsoft application agent automatically determines the state of the SRDF/Slink at runtime.

l If there is no SRDF/S link at the start of an operation, then the backup or restoreoperation fails.

l The Microsoft application agent does not support any changes to the SRDF/S linkmode made during a backup or restore operation.

l If the SRDF link is in a failed over or failed back state, then the Microsoftapplication agent operations fail.

l SRDF replication cannot transition between asynchronous and synchronous modesduring any VMAX operation. The mode must remain constant.

l The Microsoft application agent does not support the creation of snapshots of filesystems or volume groups that cross SRDF groups.

l The Microsoft application agent supports only single-hop remote connections. TheMicrosoft application agent does not support cascaded VMAX configurations.

l The Micosoft application agent does not support concurrent SRDF or concurrentSRDF/Star configurations where R1 is a source to two or more concurrent targets.

Configuring ProtectPoint

74 Microsoft Application Agent 4.7 SQL Server User Guide

Page 75: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Install and configure the VMAX Solutions EnablerBefore you begin

Install and configure Solutions Enabler in local mode on the application host. Theinstallation of VMAX Solutions Enabler should be completed before you installMicrosoft application agent.

1. To install VMAX Solutions Enabler, run the following command:

<Solutions_Enabler_Version>-WINDOWS-x64.exe

2. In the installation wizard, select Custom Installation.

3. Specify the VSS Provider option, and leave other options as they are.

4. Complete the installation.

The Solutions Enabler Installation and Configuration Guide provides more information.

Procedure

1. Obtain the following IDs:

l VMAX ID, which is also known as SYMID

l Source (STD) devices

l Backup (FTS) devices

There is 1–1 mapping between source devices and backup devices,therefore, there is one backup device for each source device.

l Restore (FTS) devices

Ensure that there is at least one restore device for each source device.

Ensure that the VMAX or lab administrator added the restore device to theVMAX storage group. The default name of the VMAX storage group isNSRSnapSG.

Note

Use restore (FTS) devices to perform rollback restores. Use vdisk devicesinstead of restore (FTS) devices for all other restore types.

2. If you are using a SQL Server virtual machine, add authorization to performbackups.

Ask the ESXi Server administrator to run the following command on the SQLServer virtual machine, on which you perform backups:

symcfg auth add -host <ESXi_Hostname> -username root -password <ESXi_Password> -namespace vmware/esxv2 -port 5988 -vmware

3. List the VMAX devices to verify the setup by running the following commandsfrom the C:\Program Files\EMC\SYMCLI\bin command prompt:

a. symcfg discoverb. sympd list

Configuring ProtectPoint

Install and configure the VMAX Solutions Enabler 75

Page 76: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

The output of the sympd list command does not display the backupdevices.

4. Establish a link between each source device and the backup device by runningthe following commands:

a. symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID>-name <Snapshot_Name> establish

b. symsnapvx -sid <Symmetrix_VMAX_ID> link -devs<STD_Device_ID> -lndevs <Backup_Device_ID> -name<Snapshot_Name> -copyFor example:

symsnapvx -sid 1031 link -devs C5A -lndevs 42 -name SNAPSHOT_C5A -copy

c. To see the status of the operation, run the following command:

symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID> list -linked

If the C (copy) flag changes to D (Copied/Destaged), then the operation iscompleted.

5. Update the Solutions Enabler database by typing the following command:

symcfg discover

The Solutions Enabler database on any host where a backup or recovery mightbe running must be up-to-date.

6. Configure gatekeepers as described in the ProtectPoint Primary and ProtectionStorage Configuration Guide.

Solutions Enabler requires gatekeepers to control the storage features of VMAXarrays. Gatekeepers are VMAX LUNs that act as the target of commandrequests to Enginuity™ based functionality.

7. For a volume restore, to mount the static image, and restore data directly fromData Domain, mask the Symmetrix FTS restore devices to the application host.

The VMAX documentation provides information about how to mask the FTSdevices.

Create a ProtectPoint with VMAX configuration fileCreate a configuration file with any of the following parameters, as required.

GeneralThe following table describes the parameters for the General configuration filecategory.

Configuring ProtectPoint

76 Microsoft Application Agent 4.7 SQL Server User Guide

Page 77: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 11 General configuration file parameters

Parameter Description

CLIENT=<client_or_hostname> Mandatory.Specifies the application server hostname, to which you wantto back up or restore the databases. In the case of clusterconfigurations, specify the name of the cluster instance.

LOCKBOX_PATH=<full_path_to_lockbox> Optional.Specifies the complete directory pathname of the lockbox onthe database or application host. For example, C:\ProgramFiles\DPSAPPS\common\lockbox.

DEBUG_LEVEL=<debug_level_1_through_9> Optional.Specifies whether the software writes debug messages to thedebug log file. The default value is 0, in which no debugmessages are generated. The highest level is 9, in which themost detailed debug messages are generated.

Primary systemThe following table describes the parameters for the Primary system configuration filecategory.

Table 12 Primary system configuration file parameters

Parameter Description

DDBOOST_USER=<DDBoost_user> Mandatory.Specifies the username of the DD Boost user.

You must register the hostname and the DD Boost usernamein the lockbox to enable Microsoft application agent toretrieve the password for the registered user.

DEVICE_HOST=<Data_Domain_server> Mandatory.Specifies the name of the Data Domain server that containsthe storage unit, to which you want to back up and restorethe databases with.

You must register the hostname and the DD Boost usernamein the lockbox to enable Microsoft application agent toretrieve the password for the registered user.

DEVICE_PATH=<storage_unit_name> Mandatory.Specifies the name and the path of the storage unit, to whichyou want to back up and restore the databases with.

DDVDISK_USER=<vdisk_username> Optional.Specifies the Data Domain vdisk user. If you do not specifythis parameter, the value defaults to the user specified withthe DDBOOST_USER parameter.

DDBOOST_FC={TRUE | FALSE} Optional.Specifies whether a backup or restore on the primary DataDomain system uses a Fibre Channel (FC) or IP networkconnection. The default value is FALSE. Specify TRUE to use

an FC network connection during backup and restore.

Configuring ProtectPoint

Create a ProtectPoint with VMAX configuration file 77

Page 78: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 12 Primary system configuration file parameters (continued)

Parameter Description

Note

If this parameter is set to TRUE, the primary Data Domain

system must be configured to support an FC connection.

DEVICE_FC_SERVICE=<fibre_channel_server> Mandatory when the DDBOOST_FC parameter is set toTRUE.Specifies the name of the FC service configured on theprimary Data Domain system to be used for a backup orrestore.

RESTORE_DEVICE_POOL=<restore_device_pool> Mandatory.Specifies the restore device pool that contains the vdiskdevices that you use to perform the restore operation. Ensurethat the Data Domain server that you have specified belongsto this device pool.

RESTORE_DEVICE_GROUP=<restore_device_group> Mandatory.Specifies the restore device group that contains the vdiskdevices and the restore device pool that you use to performthe restore operation. Ensure that the Data Domain serverthat you have specified belongs to this device group.

RESTORE_FROM_DD_ONLY=yes Optional.For rollback restores in VMAX environments, specifies torestore from Data Domain even if the snapshot is availablelocally, that is, on the VMAX array.

VMAXThe VMAX category is used to configure VMAX operations. The following tabledescribes the parameters for the VMAX configuration file category.

Table 13 VMAX configuration file parameters

Parameter Description

SYMM_SNAP_REMOTE={yes | no} Optional.Specifies that the ProtectPoint backup will use the remoteVMAX array when backing up SRDF/S protected volumes.

SNAPSG_NAME=<VMAX_storage_group_name> Optional.Specifies the name of the VMAX storage group to use duringa restore to a FAST.X or VMAX native restore device onVMAX.

By default, the NsrSnapSG storage group is used for aProtectPoint restore to a VMAX system.

Configuring ProtectPoint

78 Microsoft Application Agent 4.7 SQL Server User Guide

Page 79: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example configuration fileFor example, create the C:\ddconfig.cfg file with the following contents:

DDBOOST_USER=DD163_userDEVICE_HOST=ledmd035.lss.example.comDEVICE_PATH=/SU_DD163LOCKBOX_PATH="C:\Program Files\DPSAPPS\common\lockbox"RP_MGMT_HOST=ledmd160.lss.example.comRP_USER=adminDDVDISK_USER=DD163_userCLIENT=mw2k8x64sql2.nmmdev.com

Configuring the lockboxThe lockbox is an encrypted file that the Microsoft application agent uses to storeconfidential data, such as login credentials, and protect that data from unauthorizedaccess.

Registering a Data Domain server to a new lockbox creates thePersistedSettings.xml file in the lockbox folder. Registering a Data Domainserver to or removing a Data Domain server from the lockbox updates thePersistedSettings.xml file.

The PersistedSettings.xml file contains Data Domain server information, suchas Data Domain server name, communication protocol, FC service name, username ofthe DD Boost user, and storage unit.

You can configure one of the following lockbox types according to your environmentalrequirements.

Single lockboxIn a standalone environment, create a single lockbox on the host.

Shared lockboxIn an environment with multiple instances, you can configure a single lockbox in ashared location and grant each remote host individual access to the lockbox.

Note

Do not use a single shared lockbox to perform remote backup operations in a clusterenvironment. The backup will fail. Use multiple lockboxes in a cluster environment.

Multiple lockboxesIn an environment with multiple instances, you can configure a lockbox on eachinstance in the environment.

Commands to create and manage the lockboxLockbox operations are administered using the msagentadmin administrationcommand.

Note

The user running the lockbox operations must be an administrator.

The following sections describe the commands for creating, registering, and managingthe lockbox.

Configuring ProtectPoint

Configuring the lockbox 79

Page 80: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Create a lockboxTo create a lockbox, run the following command:

msagentadmin administration --createLB [--lockbox <lockbox_directory>] [--debug 9]

If you don't specify a lockbox directory, the default directory is used, which is C:\Program Files\DPSAPPS\common\lockbox.

Register credentials to the lockboxTo register credentials to the lockbox, run the following command:

msagentadmin administration --registerLB --config <config_file_path> [--confirm] [--debug 9]

Unregister credentials from the lockboxTo delete credentials from the configuration file and lockbox, run the followingcommand:

msagentadmin administration --deleteLB --config <config_file_path> [--confirm] [--debug 9]

Grant a remote host access to the lockboxTo grant a remote host access to the lockbox, run the following command

msagentadmin administration --grantLB [--lockbox <lockbox_directory>] [-a "LOCKBOX_REMOTE_HOST=<hostname_to_add>"] [-a "VIRTUAL_HOST=yes"] [--debug 9]

Revoke access that a remote host has to the lockboxTo revoke access that a remote host has to the lockbox, run the following command

msagentadmin administration --revokeLB [--lockbox <lockbox_directory>] [-a "LOCKBOX_REMOTE_HOST=<hostname_to_delete>"] [--debug 9]

Reset the lockboxTo reset the lockbox, run the following command:

msagentadmin administration --updateLB [--lockbox <lockbox_directory>] [--debug 9]

Create a custom passphraseTo create a custom passphrase for the lockbox, run the following command:

msagentadmin administration --updateLB -a SET_LOCKBOX_PASSPHRASE=TRUE -a LOCKBOX_PATH=<lockbox_directory>

Configuring ProtectPoint

80 Microsoft Application Agent 4.7 SQL Server User Guide

Page 81: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

After typing this command, the following prompts appear. Use the prompts to set thepassphrase.

Enter a passphrase (refer to the administration guide for passphrase complexity requirements):Confirm the passphrase:

The following output appears:

The passphrase for the lockbox '<lockbox>' in the directory '<lockbox_directory>' has been updated.

Note

The custom passphrase must meet the following complexity requirements:

l Minimum length of nine characters.

l Minimum of one uppercase character.

l Minimum of one lowercase character.

l Minimum of one special character.

l Minimum of one digit.

Use the custom passphrase to reset the lockboxThe passphrase may be used to restore access to a host that cannot access thelockbox.

To use the custom passphrase to reset the lockbox, run the following command:

msagentadmin administration --updateLB -a USE_LOCKBOX_PASSPHRASE=TRUE -a LOCKBOX_PATH=<lockbox_directory>

After typing this command, the following prompt appears. Use the prompt to set thepassphrase.

Enter a previously set passphrase:

The following output appears:

The lockbox '<lockbox>' in the directory '<lockbox_directory>' has been reset.

Create a custom security option for a lower system stable values (SSV) thresholdTo create a custom security option for lower security in the system stable values(SSV) threshold for the lockbox, run the following command:

msagentadmin administration --updateLB -a SET_LOCKBOX_SECURITY="custom" -a LOCKBOX_PATH=<lockbox_directory>

This command is useful when the lockbox becomes frequently inaccessible afterregular system upgrades. However, it is recommended that you use the passphrase toreset the lockbox instead of customizing the security level.

Configuring ProtectPoint

Commands to create and manage the lockbox 81

Page 82: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Import the lockboxTo import the lockbox, run the following command:

msagentadmin administration --updateLB -a LOCKBOX_IMPORT=yes -a LOCKBOX_PATH=<lockbox_directory>

This command is useful when the lockbox is created in a non-default directory and thelockbox needs to be upgraded (imported) to the latest version.

Create a lockboxUse the following steps to create a lockbox and add credentials to it.

Procedure

1. Create the lockbox using the following command:

msagentadmin administration --createLB

For example, to create a lockbox in the folder C:\Lockboxes type thefollowing command:

msagentadmin administration --createLB --lockbox C:\Lockboxes

If you don't specify a folder, the lockbox is created in the default directory,which is C:\Program Files\DPSAPPS\common\lockbox.

NOTICE

When the Microsoft application agent is integrated with eCDM, the lockboxmust be located in the default directory.

2. Create a configuration file that contains the appropriate credentials.

For example, type the following command to edit config.cfg:

notepad c:\Lockboxes\config.cfg

Then add the appropriate configurations to the configuration file. For example,to register a Data Domain server, add the following credentials:

LOCKBOX_PATH=C:\LockboxesDDBOOST_USER=ddvdiskDEVICE_HOST=ledmd034.lss.emc.com DEVICE_PATH=/ddbdatest/mattp/pp

3. Use the configuration file to register the credentials with the lockbox by typingthe following command:

msagentadmin administration --registerLB --config "<config_file_path>"

Configuring ProtectPoint

82 Microsoft Application Agent 4.7 SQL Server User Guide

Page 83: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

For example:

msagentadmin.exe administration --registerLB --config "C:\lockbox-config-details.cfg"

You are prompted for any required passwords for the configured user accounts.

Configure prerequisites to back up and restore Always Onavailability groups

You must meet the following configuration requirements to perform backups andrestores of SQL Always On availability groups:

Install the Microsoft application agent on each nodeYou must install the Microsoft application agent on all the nodes that are in the AlwaysOn availability group.

Configure a the lockboxYou must use configure either a single shared lockbox or a separate lockbox on eachnode that is in the Always On availability group.

Provision restore devicesThe storage administrator must provision all of the restore vdisk and FTS restoredevices on each node where the restore might happen. The ProtectPoint Primary andProtection Storage Configuration Guide provides information.

Parsing TSQL operational output into multiple tablesThe Microsoft application agent supports displaying TSQL operational output in tableformat and plain text format.

You can parse Microsoft application agent TSQL operational output into separatetables. The following TSQL script shows an example of converting output into anothertable.

TSQL script for parsing output into multiple tables

USE [master]GO--insert into tabledeclare @t table (msg nvarchar(MAX))DECLARE @returnCode intinsert into @t (msg) EXEC @returnCode = dbo.emc_run_delete' -e now -n mssql -a "DDBOOST_USER = dduser" -a "DEVICE_HOST = ddhost.com" -a "DEVICE_PATH = /ddpath" -a "CLIENT =sqlServerHost"' IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END--parsing the msg for saveset entriesdeclare @output table( client nvarchar(100), SaveDate nvarchar(100), ssid nvarchar(25), saveset nvarchar(100))declare @tmpmsg nvarchar(max)declare @begin int, @end intdeclare @client nvarchar(100), @saveDate nvarchar(100), @ssid nvarchar(25), @saveset nvarchar(100)declare log_cursor CURSOR FOR select * from @t

Configuring ProtectPoint

Configure prerequisites to back up and restore Always On availability groups 83

Page 84: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

open log_cursorfetch next from log_cursor into @tmpmsgwhile @@FETCH_STATUS = 0BEGINif (PATINDEX('client = %', @tmpmsg) > 0)beginSET @begin = CHARINDEX('=', @tmpmsg, 1)SET @end = CHARINDEX(',', @tmpmsg, @begin)SET @client = SUBSTRING(@tmpmsg, @begin+1, @end-@begin-1)SET @begin = CHARINDEX('=', @tmpmsg, @end)SET @end = CHARINDEX('(', @tmpmsg, @begin)SET @saveDate = SUBSTRING(@tmpmsg, @begin+1, @end-@begin-1)SET @begin = @endSET @end = CHARINDEX(')', @tmpmsg, @begin)SET @ssid = SUBSTRING(@tmpmsg, @begin+1, @end-@begin-1)SET @begin = CHARINDEX('name =', @tmpmsg, @end)SET @saveset = RIGHT(@tmpmsg, LEN(@tmpmsg)-@begin-6)insert into @output(client, SaveDate, ssid, saveset) values (@client, @saveDate, @ssid, @saveset)endfetch next from log_cursor into @tmpmsgENDCLOSE log_cursordeallocate log_cursorselect * from @output

Configuring ProtectPoint

84 Microsoft Application Agent 4.7 SQL Server User Guide

Page 85: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

PART 2

Backing Up SQL Server

This part includes the following chapters:

Chapter 4, "Backing Up SQL Server with Data Domain Boost"

Chapter 5, "Backing Up SQL Server with ProtectPoint"

Backing Up SQL Server 85

Page 86: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Backing Up SQL Server

86 Microsoft Application Agent 4.7 SQL Server User Guide

Page 87: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 4

Backing Up SQL Server with Data DomainBoost

This chapter includes the following sections:

l Overview of Data Domain Boost with SQL Server backups................................88l Best practices to back up SQL Server with Data Domain Boost.........................89l Naming conventions for backups with Data Domain Boost.................................90l Circumstances that promote SQL Server backups to level full .......................... 91l Scheduling backup jobs...................................................................................... 91l Performing manual backups .............................................................................. 99l Listing backups..................................................................................................119l Move and recall save sets on a Data Domain Cloud Tier....................................124l Deleting backups...............................................................................................127

Backing Up SQL Server with Data Domain Boost 87

Page 88: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Overview of Data Domain Boost with SQL Server backupsThe Microsoft application agent for Data Domain Boost with SQL Server moduleintegrates with the SQL Virtual Device Interface (VDI).

The interface enables the user to configure the module by using a SQL ServerManagement Studio plug-in.

The plug-in is similar to the SQL native backup and restore graphical user interface(GUI). Database administrators (DBAs) can use the Microsoft native tools to backupand restore the SQL data.

A Data Domain Boost backup to a Data Domain system uses the followingcomponents:

l The Data Domain Boost library API enables the backup software to communicatewith the Data Domain system.The Data Domain Boost for Enterprise Applications Software Compatibility Guide,which you can obtain from Online Support, provides information about thesupported versions of the Data Domain Boost library and the Data Domainoperating system.

l The distributed segment processing component reviews the data that is alreadystored on the Data Domain system, and sends only unique data for storage. Thedistributed segment processing component enables the backup data to bededuplicated on the database or application host to reduce the amount of datatransferred over the network. Distributed segment processing on page 37 providesinformation.

When the Data Domain system restores data to a client, the system converts thestored data to its original non-deduplicated state before sending it over the network.

Federated backups of Always On availability groupsYou can use the SQL Server's Always On availability groups feature to place databasesin an Availability Group for high availability.

The database administrator can set backup preferences for the availability group andnominate a particular copy, which can be either the primary copy or one of thesecondary copies, to use for the backup.

The Microsoft application agent supports federated backups for Data Domain Boostbackups. During federated backups, the Microsoft application agent detects the SQLServer's backup preferences setting for the availability group, and then performs thebackup on the preferred node.

Note

On a secondary node, SQL Server supports only copy-only backups of databases. Ifthe preferred node is a secondary node, the Microsoft application agent performs acopy-only backup of databases. SQL Server does not support differential backups onsecondary SQL Server replicas. However, you can perform transaction log backupsfrom either copies.

The following figure illustrates an overview of the process interactions duringfederated backups. In the figure, the backup starts on Node A, but Node B ispreferred.

Backing Up SQL Server with Data Domain Boost

88 Microsoft Application Agent 4.7 SQL Server User Guide

Page 89: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 10 Federated backup command and data flow

Best practices to back up SQL Server with Data DomainBoost

Consider the best practices to back up SQL Server using Data Domain Boost.

Configure backups to use the same Data Domain pathTo ensure the consistency of the backups on the Data Domain system, configure allthe backups of a SQL Server instance to use the same Data Domain system and path.

Configure connection settingsData Domain Boost devices do not distinguish among Transmission Control Protocol(TCP)/Internet Protocol (IP), Fibre Channel (FC), and LAN, WAN, and MAN networktypes. Data Domain Boost devices can successfully operate where packet loss isstrictly 0% and latency is less than 20 ms.

Use supported charactersThe Microsoft application supports locale-specific date and time processing andsetting the date and time display language can be set to non-English characters.However, database and path names must be written in ASCII characters only. Namingconventions for backups with Data Domain Boost on page 90 provides moreinformation on supported characters for database and instance names.

Configure Data Domain quota limitsThe Microsoft application agent does not have a parameter to control the total sizethat it consumes. The quota limits can only be set on the Data Domain system on aper-MTree (storage unit) basis.

An MTree's quota limits are calculated based on the logical size, which is the sizebefore compression and de-duplication of the data.

The quota limits impact only backup operations.

Configuring usage limits of Data Domain resources on page 32 provides moreinformation about quota limit, impact of exceeding the limits, and configuring theusage limits.

Configure usage limits for Data Domain streamsConfigure a sufficient number of Data Domain streams for better performance ofbackups and restores. The streams control backup and restore parallelism for eachdatabase.

Backing Up SQL Server with Data Domain Boost

Best practices to back up SQL Server with Data Domain Boost 89

Page 90: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The Microsoft application agent requires one stream per save set that you back up orrestore. When you perform striped backups, each stripe requires one stream. Thestripes are concurrently executed for each database. Databases are sequentiallybacked up and restored. When you use stripes, the number of streams must be equalto or more than the number of stripes.

The minimum number of streams for a non-stripe environment is 1.

Configuring usage limits of Data Domain streams on page 35 provides moreinformation about streams limit, impact of exceeding the limits, and configuring theusage limits.

Naming conventions for backups with Data Domain BoostWhen naming SQL Server instance, database, and filegroups, consider that theMicrosoft application agent does not distinguish the difference between upper andlowercase letters. The names are not case-sensitive.

Therefore, if there are two or more databases with the same name but with differentcapitalization, such as DB1 and db1, the Microsoft application agent views thesedatabases as the same and by default backs up only one of the databases.

The following table described the special characters that are supported for namingdatabase backups in SQL stand-alone, cluster, and Always On availability groupconfigurations with Data Domain Boost.

Table 14 Supported special characters

Special character Name

~ Tilde

` Accent grave

! Exclamation mark

@ At the rate

% Percentage

^ Caret

& Ampersand

( Open parenthesis

) Close parenthesis

- Hyphen

_ Underscore

{ Open curly bracket

} Close curly bracket

\ Backslash

. Period

' Apostrophe

Backing Up SQL Server with Data Domain Boost

90 Microsoft Application Agent 4.7 SQL Server User Guide

Page 91: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

While SQL Server supports naming instances with the hash symbol (#), the Microsoftapplication agent does not. If an instance includes a hash symbol, backups of thatinstance will fail.

Circumstances that promote SQL Server backups to levelfull

Transaction log backups are promoted to full backups in certain situations.

By default, transaction log backups are promoted to level full in the followingscenarios:

l When there is not an existing level full backup.

l When a log gap is detected.

l When the recovery model is changed.

l When the backup includes simple model databases, either the simple modeldatabases are promoted to a full backup or the simple model databases areskipped, depending on the backup settings.

Options to tune the behavior of automatic promotion are available while configuring abackup. The ddbmsqlsv -a "BACKUP_PROMOTION" command flag and theMicrosoft app agent for Application Direct SSMS plugin Backup Promotion optionboth control backup promotion.

Scheduling backup jobsYou can schedule Microsoft SQL Server backup jobs by using either the SQL ServerAgent or the Windows Task Scheduler.

Scheduling SQL Server backups by using SQL Server AgentThe SQL Server Agent is a job-scheduling agent which is contained in the MicrosoftSQL Server package.

This section describes how to schedule SQL Server backups by using the SQL ServerAgent job for the CmdExec and T-SQL subsystems. The SQL Server Agent, a job-scheduling agent within the SQL Server package, consists of a Windows service thatruns jobs.

Each job can contain one or more job steps and each step can contain its own tasks.The Microsoft application agent uses SQL Server to store job information and can runjobs on a schedule in response to a specific event or in response to a specific demand.

Configuring the SQL Server Agent to schedule jobs

Configuring the SQL Server Agent comprises of the following tasks:

l Enabling the SQL Server Agent

l Configuring security

Enabling the SQL Server AgentThe SQL Server Agent is in disabled state, by default. To enable the SQL ServerAgent:

Backing Up SQL Server with Data Domain Boost

Circumstances that promote SQL Server backups to level full 91

Page 92: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

1. Open SSMS, and then select View > Object Explorer.

2. Right-click SQL Server Agent, and then select Start.

Configuring securityTo run the Microsoft application agent command prompt commands in the CmdExecsubsystem, you must have administrator privileges. You can either change the SQLServer Agent service login credentials to administrator or configure a proxy host tothe CmdExec subsystem.

Changing the SQL Server Agent service login credentialsProcedure

1. From the Windows desktop, click Start > Run.

2. In the Run dialog box, in the Open field, type services.msc, and then click OK.

3. In the Services window, right-click SQL Server Agent Service, and then selectProperties.

4. In the SQL Server Agent Service Properties dialog box:

a. On the Log On tab, select This account.

b. Type the administrator user credentials in the relevant fields.You can also click Browse and select the user who has the administratorprivileges.

c. Click OK.

Creating a proxy for the CmdExec subsystemThe SQL Server Agent uses proxies, which are objects that enable the SQL ServerAgent to access stored credentials for Windows users, to define the security contextfor job steps.

When you run a job step that is configured to use a proxy, the SQL Server Agent usesthe credentials that are defined in the proxy, and then uses the corresponding securitycontext to run the job step.

Procedure

1. Open SSMS, and then select View > Object Explorer.

2. Specify user credentials:

a. In the Object Explorer, expand Security, right-click Credentials, and thenselect Properties.

b. On the Credential Properties - EMC page, specify the following fields, andthen click OK:

l Credential name: Type a name for the credential.

l Identity: Type the administrator username.

l Password: Type the password for the user that you specified in theIdentity field.

l Confirm password: Retype the password that you specified in thePassword field.

3. Create a proxy:

Backing Up SQL Server with Data Domain Boost

92 Microsoft Application Agent 4.7 SQL Server User Guide

Page 93: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

a. In the Object Explorer, expand SQL Server Agent, and then expandProxies.

b. Right-click Proxies, and then select New proxy.

c. On the ‘EMC’ Proxy Account Properties page, specify the following fields,and then click OK:

l Proxy name: Type a name for the proxy.

l Credential name: Type the credential name that you specified in step 2b.

l Active to the following subsystems: Under this field, select Operatingsystem (CmdExec).

Note

When you create a job step, you must select this proxy from the Run aslist on the Job Step Properties page.

Scheduling a CmdExec jobYou can schedule a CmdExec job on either a single SQL Server or multiple SQLServers.

Scheduling a CmdExec job on a single SQL ServerProcedure

1. Open SSMS, and then select View > Object Explorer.

2. In the Object Explorer, expand SQL Server Agent, right-click Jobs, and thenselect New job.

3. On the Job Properties window:

a. On the General page, type the appropriate information in the Name, Owner,and Description fields.

b. On the Steps page, click New to create a step.

c. In the Job Step Properties window, on the General page, specify thefollowing fields:

l Step name: Type a name for the job step.

l Type: Select Operating system (CmdExec).

l Run as: According to your configuration, select either proxy or SQLServer Agent Service Account.

l Process execute exit code of a successful command: Type theprocess success exit code.

l Command: Specify the required command.Perform backups with the Microsoft app agent for Application DirectSSMS plug-in on page 100 provides information about how to generatethe command.

The generated command does not have a full path to the binary. Whenyou specify the generated command in this field, you must add the fullpath to the binary. If the binary path contains spaces, specify the path inthe quotes.

Backing Up SQL Server with Data Domain Boost

Scheduling SQL Server backups by using SQL Server Agent 93

Page 94: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

For example:

"C:\Program Files\DPSAPPS\MSAPPAGENT\bin\ddbmsqlsv.exe" -D9 -c NMMDB154.nmmdev.com -l full -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.192.14" -a "NSR_DFA_SI_DD_USER=ddbma" -a "NSR_DFA_SI_DEVICE_PATH=/ddbma-sqlagent2" "MSSQL:master".

d. On the Advanced page, specify the following fields:

l On success action: Select whether to proceed to the next job step orquit the current job step and report success, after the current job stepsucceeds.

l Specify the other fields according to your requirements.

l Click OK.

e. On the Schedules page, click New to schedule a job.

f. In the Job Schedule Properties window, specify appropriate information inthe corresponding fields, and then click OK.

g. On the Alerts page, click Add to create an alert that will perform a job whena certain event occurs.

h. In the New Alert window, on the General page, specify the following fields:

l Name: Type a name for the alert.

l Type: Select the type of the event.

l Specify the appropriate information in the other fields.

i. On the Response page, specify the following fields:

l Notify operators: Select this option to send a message to the operatorsabout the job step status.

l New Operator: Click this button to add an operator to the Operator list.

j. On the Options page, configure a method, such as E-mail, Pager, or NetSend, to notify operators about the status of the job step.

k. On the Notifications page, under Actions to perform when the jobcompletes, select the appropriate notification methods to notify operatorsabout the status of the job step.

l. On the Targets page, select Target local server.

m. Click OK.

Scheduling a CmdExec job on multiple SQL ServersScheduling jobs from one central location to multiple target SQL Servers eases thedatabase administrator’s job. To configure this setup, you must install the Microsoftapplication agent on all target hosts, make one SQL Server Agent a master, and makethe rest of the hosts targets.

Configuring master and target SQL Server AgentsProcedure

1. Open the SSMS, and then select View > Object Explorer.

2. Right-click SQL Server Agent, and then select Multi Server Administrator >Make this a Master.

Backing Up SQL Server with Data Domain Boost

94 Microsoft Application Agent 4.7 SQL Server User Guide

Page 95: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The Master Server Wizard appears.

3. On the Welcome to the Master Server Wizard page, click Next.

4. On the Master Server Operator page, type the appropriate information in theE-mail address, Pager address, and Net send address fields to notify theoperators about the status of the job, and then click Next.

5. On the Target Servers page:

a. Under the Registered servers panel, select the servers that you want to useas targets for the SQL Server Agent jobs, and then click the right arrow tomove them to the Target servers panel.

b. If you want to add servers to the Registered servers panel, click AddConnection.

c. In the Checking Server Compatibility dialog box, review the information,and then click Close.The Master Server Login Credentials page appears.

6. Enable SQL Server remote connectivity:

a. In SSMS, right-click the SQL Server, and then click Properties.

b. In the Server Properties window, under the Select a page group, selectConnections.

c. Select Allow remote connections to this server.

d. Click OK.

7. Specify general firewall exceptions on the SQL Server.

8. If an SSL certificate does not exist, set the encryption level on the target hoststo 1 or 0 according to the security level you need.

To set the encryption level, change the MsxEncryptChannelOptions registryentry to 1 or 0. The registry key is located in \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<instance_name>\SQLServerAgent\.

9. On the Master Server Login Credentials page, click Next.

10. On the Complete the Wizard page, review the information, and then clickFinish.

Running a job on the target serversProcedure

1. Open the SSMS, and then select View > Object Explorer.

2. In the Object Explorer, expand SQL Server Agent, right-click Jobs, and thenselect New job.

3. On the Job Properties window:

a. On the General page, type the appropriate information in the Name, Owner,and Description fields.

b. On the Steps page, click New to create a step.

c. In the Job Step Properties window, complete the following steps:

a. On the General page, specify the following fields:

Backing Up SQL Server with Data Domain Boost

Scheduling SQL Server backups by using SQL Server Agent 95

Page 96: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l Step name: Type a name for the job step.

l Type: Select Operating system (CmdExec).

l Run as: According to your configuration, select either proxy or SQLServer Agent Service Account.

l Process execute exit code of a successful command: Type theprocess success exit code.

l Command: Specify the required command.Perform backups with the Microsoft app agent for Application DirectSSMS plug-in on page 100 provides information about how togenerate the command.

The generated command does not have a full path to the binary.When you specify the generated command in this field, you must addthe full path to the binary. If the binary path contains spaces, specifythe path in the quotes.

For example:

"C:\Program Files\DPSAPPS\MSAPPAGENT\bin\ddbmsqlsv.exe" -D9 -c NMMDB154.nmmdev.com -l full -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.192.14" -a "NSR_DFA_SI_DD_USER=ddbma" -a "NSR_DFA_SI_DEVICE_PATH=/ddbma-sqlagent2" "MSSQL:master"

b. On the Advanced page, specify the following fields:

l On success action: Select whether to proceed to the next job step orquit the current job step and report success, after the current jobstep succeeds.

l Specify the other fields according to your requirements.

l Click OK.

d. On the Schedules page, click New to schedule a job.

e. In the Job Schedule Properties window, specify appropriate information inthe corresponding fields, and then click OK.

f. On the Alerts page, click Add to create an alert that will perform a job whena certain event occurs.

g. In the New Alert window:

a. On the General page, specify the following fields.

l Name: Type a name for the alert.

l Type: Select the type of the event.

l Specify the appropriate information in the other fields.

b. On the Response page, specify the following fields:

l Notify operators: Select this option to send a message to theoperators about the job step status.

l New Operator: Click this button to add an operator to the Operatorlist.

c. On the Options page, configure a method, such as E-mail, Pager, or NetSend, to notify operators about the status of the job step.

Backing Up SQL Server with Data Domain Boost

96 Microsoft Application Agent 4.7 SQL Server User Guide

Page 97: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

d. On the Notifications page, under Actions to perform when the jobcompletes, select the appropriate notification methods to notifyoperators about the status of the job step.

e. On the Targets page, from the Target multiple servers list, select thetarget servers.

h. Click OK.

Scheduling a T-SQL jobT-SQL subsystem does not work under proxies.

Procedure

1. Open the SSMS, and then select View > Object Explorer.

2. In the Object Explorer, expand SQL Server Agent, right-click Jobs, and thenselect New job.

3. In the Job Properties window:

a. On the General page, specify the following fields:

l Name: Type a name for the job.

l Owner: Click the button beside the text box, and then complete thefollowing steps:

a. In the Select Login dialog box, click Browse.

b. In the Browse for Objects dialog box, under Matching objects,select NT SERVICE\SQLSERVERAGENT, and then click OK.

c. In the Select Login dialog box, click OK.

l Description: Type a description for the job.

b. On the Steps page, click New.

c. In the Job Step Properties window, on the General page, specify thefollowing fields:

l Step name: Type a name for the job step.

l Type: Select Transact-SQL script (T-SQL).

l Run as: Select SQL Server Agent Service Account.

l Process execute exit code of a successful command: Type the processsuccess exit code.

l Command: Specify the required T-SQL command.Perform backups with the Microsoft app agent for Application DirectSSMS plug-in on page 100 provides information about how to generatethe T-SQL command.

You can run the generated T-SQL command by using the New Querymenu option to check whether the operation succeeds. If the commandruns successfully, the scheduled backups will be successful.

If you want to use return codes in the generated T-SQL command, youmust modify the command.

Consider the following example raw T-SQL command:

USE [master]GO

Backing Up SQL Server with Data Domain Boost

Scheduling SQL Server backups by using SQL Server Agent 97

Page 98: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

DECLARE @returnCode intEXEC @returnCode = dbo.emc_run_backup ' -c NMMDB154.nmmdev.com -l full -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.192.14" -a "NSR_DFA_SI_DD_USER=ddbma" -a "NSR_DFA_SI_DEVICE_PATH=/ddbma-sqlagent2" "MSSQL:Fabrics"'PRINT @returnCodeGO

Consider the following example T-SQL command with return codes:

DECLARE @returnCode intEXEC @returnCode = dbo.emc_run_backup ' -c NMMDA224.heroines.local -l full -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.77.27" -a "NSR_DFA_SI_DD_USER=ost112" -a "NSR_DFA_SI_DEVICE_PATH=/heroines" "MSSQL:CopyOftest_db_1" "MSSQL:db1"'IF @returnCode <>0BEGINRAISERROR ('Fail!', 16, 1)END

If the return code is error, the job step fails.

Note

The last two parameters, 16 and 1 are necessary to raise an error if a jobstep fails.

d. On the Advanced page, specify the following fields:

l On success action: Select whether to proceed to the next job step orquit the current job step and report success, after the current job stepsucceeds.

l Specify the other fields according to your requirements.

l Click OK.

l On the Schedules page, click New to schedule a job.

l In the Job Schedule Properties window, specify appropriate informationin the corresponding fields, and then click OK.

l On the Alerts page, click Add to create an alert that will perform a jobwhen a certain event occurs.

l In the New Alert window:On the General page, specify the following fields.

n Name: Type a name for the alert.

n Type: Select the type of the event.

n Specify the appropriate information in the other fields.

e. On the Response page, specify the following fields:

l Notify operators: Select this option to send a message to the operatorsabout the job step status.

l New Operator: Click this button to add an operator to the Operator list.

Backing Up SQL Server with Data Domain Boost

98 Microsoft Application Agent 4.7 SQL Server User Guide

Page 99: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

f. On the Options page, configure a method, such as E-mail, Pager, or NetSend, to notify operators about the status of the job step.

g. On the Notifications page, under Actions to perform when the jobcompletes, select the appropriate notification methods to notify operatorsabout the status of the job step.

h. On the Targets page, select Target local server.

i. Click OK.

After you finish

To check the status of a job, either right-click the job and select View History orreview the log files in the nsr/applogs/ folder.

Scheduling SQL Server backups by using Windows Task SchedulerTo schedule SQL Server backups by using Windows Task Scheduler, perform thefollowing steps:

Procedure

1. On the Windows desktop, click Start > All Programs > Accessories > SystemTools > Task Scheduler.

2. In the left pane of the Task Scheduler window, right-click Task SchedulerLibrary, and then select Create Basic Task.

The Create Basic Task Wizard wizard appears.

3. On the Create a Basic Task page, in the Name field, type a name for the task,and then click Next.

4. On the Task Trigger page, select the appropriate option to start the task, andthen click Next.

The page that corresponds to the selected option appears.

5. Specify or select all the fields that you require to perform the task, and thenclick Next.

6. On the Action page, select Start a program, and then click Next.

7. On the Start a program page, browse for the .bat file and in the Program/script field, type the file path, and then click Next.

8. On the Summary page, review the details of the task, and then click Finish.

The process creates the task and adds it to your Windows schedule.

Performing manual backupsThe Microsoft application agent for Data Domain Boost with SQL Server supportsmultiple tools to perform manual backups.

You can configure backups using the Microsoft application agent SQL ServerManagement Studio plug-in (GUI), Microsoft application agent for Data Domain Boostcommands, or T-SQL scripts.

Backing Up SQL Server with Data Domain Boost

Scheduling SQL Server backups by using Windows Task Scheduler 99

Page 100: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Perform backups with the Microsoft app agent for Application Direct SSMSplug-in

The Microsoft application agent supports a user interface to perform backupoperations through a SQL Server Management Studio (SSMS) plug-in.

If the Data Domain device is connected only on the backup LAN, and the SQL host ismulti-homed and has an interface on the backup LAN, the backups to the Data Domaindevice proceed over the backup LAN by default.

If both the Data Domain device and the SQL host are multi-homed, and are connectedto the backup LAN, ensure that the Data Domain server name that you specify in theMicrosoft app agent for Application Direct SSMS plug-in is the same as the backupLAN IP address. The backups to the Data Domain device proceed over the backupLAN.

To back up SQL Server to a Data Domain server over fibre channel (FC), you mustfirst configure FC on the Data Domain server.

The Script view is available in each page of the Backup tab, which generates acommand prompt equivalent script. You can use the script to create a .bat file toperform scheduled backups, automation, and other tasks. The following script optionsare available:

l CLI Scripts: To generate the CLI script, which you can use to run a backup fromthe CLI.

l T-SQL Scripts: To generate a backup script in the T-SQL format.

Launching the Microsoft app agent for Application Direct SSMS plug-in

To launch the Microsoft app agent for Application Direct SSMS plug-in, perform thefollowing steps:

1. From the Windows Start menu, select Microsoft SQL Server ManagementStudio.

2. In the Microsoft SQL Server Management Studio, in the Connect to Serverwindow, specify the server information and credentials, and then click Connect.

3. In the toolbar, click Microsoft app agent for Application Direct.

Note

If you have not installed SSMS, to start the Microsoft app agent for Application DirectSSMS plug-in, in the<Microsoft_application_agent_installation_folder>\DPSAPPS\MSAPPAGENT\bin folder, double-click the DDSSMSAddinApp.exe file.

Configure general backup settingsTo configure SQL backups with the Microsoft app agent for Application Direct SSMSplug-in, you must first specify general backup options on the Backup > General page.

Procedure

1. Open the Microsoft app agent for Application Direct window to the Backup >General page.

The General page appears as shown in the following figure.

Backing Up SQL Server with Data Domain Boost

100 Microsoft Application Agent 4.7 SQL Server User Guide

Page 101: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 11 Data Domain Boost - Backup-General page

2. Leave the SQL Server Host as-is. The instance is populated by default.

3. In the SQL Server Instance field, select the name of the SQL Server instancethat contains the databases that you want to back up.

4. In the Database Filter list, select one of the following options:

l All Databases: Displays the regular databases and the Always On availabilitygroup databases of the selected SQL Server instance in the database table,which is located below the Database Filter field.This option is selected by default.

You can back up the Always On availability group databases as regulardatabases without considering the Always On availability group preferences.

l Non AAG Databases: Displays only the regular databases of the selectedSQL Server instance in the database table.

l A list of Always On availability groups if available: Selecting one of theAlways On availability groups displays the corresponding databases in thedatabase table.The Connections panel displays the name of the cluster that contains theAlways On availability group and the backup preference that specifies thepreferred replica to perform the backup. You can configure the replicapreference of the Always On availability groups through the SSMS.

5. In the database table, select either all the databases by selecting the checkboxin the header row or only the individual databases that you want to back up.

Backing Up SQL Server with Data Domain Boost

Perform backups with the Microsoft app agent for Application Direct SSMS plug-in 101

Page 102: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

6. In the Backup type list, select the type of the backup that you want to performsuch as, Full, Transaction log, or Differential.

7. (Optional) To perform a copy-only backup, select Copy-only backup.

Copy-only backups do not disturb the SQL Server backup chain or affectbackup-level promotion and log truncation. Copy-only backups are supportedfor level full or transaction log backups.

8. (Optional) To exclude databases from a SQL Server instance-level backup,perform the following steps:

a. Click the Excluded Databases button.

The Exclude Databases window appears.

b. Select each database that you want to exclude from the backup.

c. Click OK.

The databases that are selected for exclusion appear grayed out in the list ofdatabases and the number of excluded databases is displayed.

9. In the Name field, type a name for the backup that you want to perform.

After the backup completes, the save set names of the backed-up databaseswill be in the following format:

<save_set_name>:<database>For example, you select the databases db1 and db2, specify test as the backupor save set name, and then perform the backup. After the backup completes,the save set names of the backed-up databases are test: db1 and test:db2.

Note

The number sign (#) character is not supported for save set names. If you usethis character, backups fail.

10. In the Description field, type a description for the backup that you want toperform.

11. In the Expires after (days) field, select the number of days after which thebackup must expire. The default value is 30.

12. Under Destination, to select the target Data Domain server for the backup,perform the following steps:

a. Click the Data Domain Server browse button.

The Data Domain Connection List & Lockbox Settings dialog box appears,as shown in the following figure.

Backing Up SQL Server with Data Domain Boost

102 Microsoft Application Agent 4.7 SQL Server User Guide

Page 103: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 12 Data Domain connection list and lockbox settings

b. In the Lockbox Folder field, type the path to lockbox, and then clickRefresh.

The default path to the lockbox is C:\Program Files\DPSAPPS\common\lockbox.

The DataDomain Connections list is refreshed.

c. In the DataDomain Connections table, select target Data Domain server forthe backup.

d. (Optional) To add or remove Data Domain servers from the DataDomainConnections table, perform one of the following action sequences:

l To add a Data Domain server, perform the following steps:

a. Click Add.The Add Data Domain Server details dialog box appears as shown inthe following figure.

Figure 13 Data Domain - Add Data Domain server details

b. In the DataDomain Server field, type the name of the Data Domainserver.

Backing Up SQL Server with Data Domain Boost

Perform backups with the Microsoft app agent for Application Direct SSMS plug-in 103

Page 104: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

c. In the Communication Protocol list, select either Ethernet or Fibrechannel, the medium through which you want to back up thedatabase to the Data Domain server. Ethernet is selected by default.

d. If you have selected Fibre channel from the CommunicationProtocol list, type the name of the Data Domain server as the FCservice name in the FC Service Name field.

e. In the User Name field, type the username of the DD Boost user.

f. In the Password field, type the password of the DD Boost user.

g. In the Storage Unit field, type the name of the target storage unit forthe backup.Data Domain Boost user credentials are verified before they are savedin the lockbox. Verification of the user credentials requires some timeto complete.

l To remove a Data Domain server, select the server, and then clickRemove.

l To add a SQL virtual server to either back up databases to SQL clusteredinstances or restore databases from SQL clustered instances, performthe following steps:

n Select Edit LockBox Settings.

n In the Enter Host Name field, type the FQDN of the SQL virtualserver.

n Click OK.

l To remove a SQL virtual server, select the FQDN of the SQL virtualserver from the Select Host Name list, and then click Remove.

The PersistedSettings.xml file in the lockbox folder contains theinformation about Data Domain servers. Adding a Data Domain server to anew lockbox creates the PersistedSettings.xml file. Adding a DataDomain server to or removing a Data Domain server from the lockboxupdates the PersistedSettings.xml file.

13. To start the backup operation, click Run.

Configure optional backup settingsWhen you configure SQL backups with the Microsoft app agent for Application DirectSSMS plug-in, you can specify optional backup settings on the Backup > Optionspage.

All settings on the Options page are optional.

Procedure

1. From the left panel, click Options to specify optional backup settings.

The Options page appears as shown in the following figure.

Backing Up SQL Server with Data Domain Boost

104 Microsoft Application Agent 4.7 SQL Server User Guide

Page 105: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 14 Data Domain Boost - Backup-Options page

2. To perform a checksum operation with the backup and save the information tothe backup media, select Perform checksum before writing to media.

The Microsoft application agent performs another checksum before a restore toensure that the checksum matches the backup.

3. To use a checksum to detect a partial backup or restore state, select Continueon error.

The SQL Server verifies the checksum by calculating a local result andcomparing the result with the stored value. If the values do not match and youencounter errors, you can select this option to continue the backup or restoreoperation.

4. To truncate the transaction logs before a backup, select Truncate thetransaction log.

The Microsoft application agent enables this option if you select transaction logas the backup type.

5. To perform a tail-log backup of the database and leave the database in therestoring state, select Backup the tail of the log and leave database inrestoring state.

6. Under Stripes, select Create a striped backup to create a striped backup. Youcan also specify the number of stripes. If you specify a value greater than themaximum limit of 32, the value defaults to 32.

7. To promote backups of SIMPLE recovery model databases to level full, selectPromote to full backup.

Backing Up SQL Server with Data Domain Boost

Perform backups with the Microsoft app agent for Application Direct SSMS plug-in 105

Page 106: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

SIMPLE recovery model databases do not support transaction log backups. TheMicrosoft application agent enables this option if you select the SIMPLErecovery model databases to back up, and transaction log as the backup type.

8. To omit SIMPLE recovery model databases from the backup, select Skipbackup.

Microsoft application agent enables this option if you select the SIMPLErecovery model databases to back up, and transaction log as the backup type.SIMPLE recovery model databases do not support transaction log backups.

9. To check the status of the selected databases and ignore the databases thatare unready or unavailable for the backup, select Skip databases that cannotbe backed up at its current state.

If the status of the databases is ONLINE, the databases are ready or availablefor backups.

If the status of the databases is OFFLINE, EMERGENCY (SINGLE_USERMode), SUSPECT, RESTORING, RECOVERING, or RECOVERY_PENDING, thedatabases are unready or unavailable for backups.

10. To generate detailed logs, which you can use to troubleshoot backup issues,specify a number between 1 and 9 in the Select a debug level field. The defaultvalue is 0 (zero).

11. To delete debug logs older than a certain number of days, in the Delete debuglogs after field, specify the number of days with a number between 1 and 32767days. The default value is 0 and does not delete any debug logs.

Regularly deleting debug logs prevents the log folder on the installation drivefrom becoming too large.

Note

This option only deletes debug logs named in the default format and located inthe logs folder at <installation_path>\MSAPPAGENT\logs.

12. To specify backup promotion options, select one of the following values fromthe Backup Promotion list:

l ALL: Enables backup promotion to occur in any applicable scenario.

l NONE: Disables all backup promotion.

l NONE_WITH_WARNINGS: Disables backup promotion, but logs a warningwhen backup promotion would normally occur.

l SKIP_RECOVERY_MODEL: Disables database recovery model changedetection. Backup promotion as a result of recovery model change will notoccur, but backup promotion in other scenarios will still occur.

l SKIP_RECOVERY_MODEL_WITH_WARNINGS: Enables databaserecovery model change detection, but if a recover model change isdiscovered, logs a warning instead of promoting the backup. Backuppromotion in other scenarios will still occur.

13. To specify advanced backup options, use the Advanced options field to selector type advanced options.

Separate multiple entries with a comma, for example:BUFFERCOUNT=2, READ_WRITE_FILEGROUPSThe following advanced backup options are supported:

Backing Up SQL Server with Data Domain Boost

106 Microsoft Application Agent 4.7 SQL Server User Guide

Page 107: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l BUFFERCOUNT=number_of_IO_buffers: Specifies the total number of IObuffers that can be used during the backup operation.

l READ_WRITE_FILEGROUPS: Backs up only the read/write (active) filegroupswithin the database.

14. To start the backup operation, click Run.

Monitor the backup operationAfter a backup operation is run from the Microsoft app agent for Application DirectSSMS plug-in, the Backup > Monitor page displays the backup script and status.

The following figure shows the backup information and status as it appears on theMonitor page.

Figure 15 Data Domain Boost - Backup-Monitor page

Note

For information about the success or failure of the backup operation, review the logfiles that are located in the installation folder. The typical location of the log files is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

Backing Up SQL Server with Data Domain Boost

Perform backups with the Microsoft app agent for Application Direct SSMS plug-in 107

Page 108: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Back up SQL Server with the Data Domain Boost backup commandUse the ddbmsqlsv command to configure backups of Microsoft SQL Server datafrom a command prompt.

Note

In the syntaxes, the options that are enclosed in square brackets, that is, [ and ] areoptional.

To perform specific backup-related and restore-related operations, the Microsoftapplication agent also supports the ddbmadmin.exe command besides themsagentadmin.exe command. However, the ddbmadmin.exe command isdeprecated.

Syntax for backups of a standalone server

Run the ddbmsqlsv command with the following syntax to back up a standalone SQLServer:

ddbmsqlsv -c <client_name> -l {full | incr | diff} -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=<server_name>" -a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>" -a "NSR_DFA_SI_DD_USER=<DDBoost_user>" [<optional_parameters>] "<backup_path>"

where:

-c <client_name>

Specifies the SQL Server hostname that contains the SQL Server instance thatyou want to back up.

-l {full | incr | diff}

Specifies the type of the backup to perform such as full (full), transaction log(incr), or differential (diff). The default value is full.

-a "NSR_DFA_SI=TRUE"

Specifies that the backup is server-independent.

-a "NSR_DFA_SI_USE_DD=TRUE

Specifies that the backup destination is a Data Domain server

-a "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies whether the backup destination is a Data Domain server.

-a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit where you want to direct thebackup.

-a "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

Backing Up SQL Server with Data Domain Boost

108 Microsoft Application Agent 4.7 SQL Server User Guide

Page 109: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

<backup_path>

Specifies the backup path.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To back up the entire instance, type MSSQL:n To back up specific databases, type [MSSQL:]<database>

[[MSSQL:]<database> [...]]For example: "MSSQL:database1" "MSSQL:database2"

l For a named instance, type the path in one of the following formats:

n To back up the entire instance, type MSSQL$<Instance_Name>:n To back up specific databases, type MSSQL

$<Instance_Name>:<database> [...]For example: "MSSQL$SqlInst1:database1" "MSSQL$SqlInst1:database2"

Example 2 SQL stand-alone backup command

ddbmsqlsv.exe -c SQLX86.adesc.com -l full -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.196.90" -a "NSR_DFA_SI_DD_USER=ost" -a "NSR_DFA_SI_DEVICE_PATH=/sqlserver" "MSSQL$INST2008:d2"

Syntax for backups of an Always On availability group

Run the ddbmsqlsv command with the following syntax to back up a standalone SQLServer:

ddbmsqlsv -c <cluster_name> -A <virtual_server> -l {full | incr | diff} -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=<server_name>" -a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>" -a "NSR_DFA_SI_DD_USER=<DDBoost_user>" [<optional_parameters>] "<backup_path>"

where:

-c <cluster_name>

Specifies the Windows cluster name that you want to back up.

-A <virtual_server>

Specifies the fully qualified domain name (FQDN) of the SQL virtual server.

-l {full | incr | diff}

Specifies the type of the backup to perform such as full (full), transaction log(incr), or differential (diff). The default value is full.

-a "NSR_DFA_SI=TRUE"

Specifies that the backup is server-independent.

-a "NSR_DFA_SI_USE_DD=TRUE

Backing Up SQL Server with Data Domain Boost

Back up SQL Server with the Data Domain Boost backup command 109

Page 110: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies that the backup destination is a Data Domain server

-a "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the storage unitwhere you want to back up the databases.

-a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit where you want to direct thebackup.

-a "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

"<backup_path>"

Specifies the path to the objects that you want to back up.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To back up the entire instance, type MSSQL#<aag_name>:n To back up specific databases, type

[MSSQL#<aag_name>:]<database>[[MSSQL#<aag_name>:]<database> [...]]

For example: For example: "MSSQL#aag1:database1""MSSQL#aag1:database2"

l For a named instance, type the path in one of the following formats:

n To back up the entire instance, type MSSQL$<Instance_Name>#<aag_name>:

n To back up specific databases, type MSSQL$<Instance_Name>#<aag_name>:<database> [...]

For example: "MSSQL$SqlInst1#sql2012-aag3:database1" "MSSQL$SqlInst1#sql2012-aag3:database2"

Note

The Microsoft application agent does not support backing up multiple Always Onavailability groups in the same operation.

Example 3 SQL cluster backup command

The following command backs up databases in a SQL cluster environment:

ddbmsqlsv.exe -c SQLcluster1.adesc.com -A SQLcluster1.adesc.com -l full -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.196.90" -a "NSR_DFA_SI_DD_USER=ost" -a "NSR_DFA_SI_DEVICE_PATH=/sqlserver" "MSSQL$SQ12INST4#sql2012-aag3:"

Backing Up SQL Server with Data Domain Boost

110 Microsoft Application Agent 4.7 SQL Server User Guide

Page 111: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Backing up an Always On availability group when all instance namesare the same

When the server nodes contain only default instances, or when the SQL Serverinstance names are all the same in the availability group, type the backup command inthe following syntax:

ddbmsqlsv.exe -c SQL2012clus3.brsvlab.local -S 4 -l full -y +30d -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=ddve-01" -a "NSR_DFA_SI_DD_USER=sqlboost" -a "NSR_DFA_SI_PATH=/sqlboost" -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -a "NSR_SKIP_NON_BACKUPABLE_STATE_DB=TRUE" "MSSQL$SQ12INST4#sql2012-aag3:"

where:

l -c SQL2012clus3.brsvlab.local specifies the cluster name.

l "MSSQL$SQ12INST4#sql2012-aag3:" is the backup object name, where allthe databases of the sql2012-aag3 Always On availability group are backed up. Thebackup object name is made of the following components:

n MSSQL is a mandatory term.

n If you use named instances, $SQ12INST4 is the SQL Server instance name.If you use a default instance, do not specify $<SQL_Server_instance_name> inthe backup object.

n # indicates a federated backup.

n sql2012-aag3 is the AlwaysOn Availability Group name.

Backing up an Always On availability group when there are multipleinstance names

When you back up an Always On availability group where the nodes contain SQLServers with different instance names, the backup command on each instance shouldreflect the available instance.

For example, consider the following scenario:

l There are two different instances:

n SQ12INST4 resides on Node1.

n SQ12INST5 resides on Node2

l Node1 is the primary replica.

l Node2 is the secondary replica.

l The Always On availability group backup preference is set to secondary.

In this scenario, the backup command on SQL2INST4 should specify the backupobject as "MSSQL$SQL2INST4#sql2012-aag3:", while backup command onSQL2INST5 should specify the backup object as "MSSQL$SQL2INST5#sql2012-aag3:". After failover of Node1 and Node2, Node1 becomes secondary, and Node2becomes primary. The backup command is the same after failover.

Backing Up SQL Server with Data Domain Boost

Back up SQL Server with the Data Domain Boost backup command 111

Page 112: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

When browsing the backups for a restore operation, the save sets could be in either ofthe instances (SQL2INST4 or SQL2INST5). The save set depends on the instancethat is used for the first backup.

Backing up multiple databases in an Always On availability group

To back up only certain databases in an Always On availability group, use"<save_set_name1>" "<save_set_name2>" "<save_set_name3>"... to specify thedatabase names as the backup objects.

Type the backup command with the following syntax:

ddbmsqlsv.exe -c SQL2012clus3.brsvlab.local -S 4 -l full -y +30d -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=ddve-01" -a "NSR_DFA_SI_DD_USER=sqlboost" -a "NSR_DFA_SI_PATH=/sqlboost" -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -a "NSR_SKIP_NON_BACKUPABLE_STATE_DB=TRUE" "MSSQL$SQ12INST4#sql2012- aag3:database1" "MSSQL$SQ12INST4#sql2012-aag3:database3" "MSSQL $SQ12INST4#sql2012-aag3:database8"

where:

l MSSQL$SQ12INST4#sql2012-aag3:database1, MSSQL$SQ12INST4#sql2012-aag3:database3, and MSSQL$SQ12INST4#sql2012-aag3:database8 are the backup objects

l Only database1, database3, and database8 of the sql2012-aag3 Always Onavailability group are backed up.

Optional parameters for the ddbmsqlsv command

The following list describes the optional parameters that you can use with theddbmsqlsv command:

-N <backup_set_name>

Specifies a name for the backup.

-b <backup_set_description>

Specifies a description for the backup.

-S <number_of_stripes>

Specifies to perform a striped backup using the number of stripes that youspecify. If you specify a value greater than a maximum limit of 32, the valuedefaults to 32.

-a "SKIP_SIMPLE_DATABASE={TRUE | FALSE}"

Specifies whether to ignore backing up SIMPLE recovery model databases. Usethis option if you select the SIMPLE recovery model databases for backup, andspecify Transaction log as the backup type. The SIMPLE recovery modeldatabases do not support transaction log backups.The default value is FALSE.

-a "NSR_SKIP_NON_BACKUPABLE_STATE_DB={TRUE | FALSE}"

Specifies whether to check the status of the selected databases and ignore thedatabases that are unready or unavailable for the backup.

Backing Up SQL Server with Data Domain Boost

112 Microsoft Application Agent 4.7 SQL Server User Guide

Page 113: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

If the status of the databases is ONLINE, the databases are ready or available forbackups.If the status of the databases is OFFLINE, EMERGENCY (SINGLE_USER Mode),SUSPECT, RESTORING, RECOVERING, or RECOVERY_PENDING, thedatabases are not ready or available for backups.The default value is TRUE.

-q

Displays ddbmsqlsv messages in the quiet mode, that is, the option displayssummary information and error messages only.

-v

Displays ddbmsqlsv messages in the verbose mode, that is, the option providesdetailed information about the progress of the backup operation.

-G

Specifies to perform a NO_LOG transaction log backup before backing up thedatabase.

-R

Uses the NO_TRUNCATE option when backing up transaction logs.

-T

Performs a TRUNCATE_ONLY transaction log backup before backing up thedatabase.

-k

Specifies to perform a checksum before backing up the data to the device.

-u

Specifies to perform a checksum before the backup but to proceed with thebackup operation even in the case of errors.

-y +<integer>{d | w | m | y}

Specifies the period of time after which the backup must expire. For example:

-y +20d

You can specify any positive integer, followed by one of the following units oftime:

l d for day

l w for week

l m for month

l y for year

The maximum possible retention date is 2/7/2106.If you omit this option or specify 0, the default value of 30 days is used.

-h "<databases_to_omit>"

Specifies databases to omit from the backup. You can use this option to specifyexact database names or use wildcard characters.Two wildcard characters are supported:

l Question mark (?): Matches any single character

Backing Up SQL Server with Data Domain Boost

Back up SQL Server with the Data Domain Boost backup command 113

Page 114: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l Asterisk (*): Matches zero to unlimited charactersWhen you use wildcard characters you must enclose the database name insquare brackets, for example, [“DB?”].

For example, consider the following scenarios:

l To exclude only DB_1 and DB_2 from the backup, add -h “DB_1” -h“DB_2” to the backup command.

l To exclude all databases named with the format of DB_x, such as DB_9 andDB_a, add -h [DB_?”] to the backup command.

l To exclude all databases with names ending in DB, add -h [“*DB”] to thebackup command.

-O {BUFFERCOUNT | READ_WRITE_FILEGROUPS}

Specifies advanced backup options.You can specify the following advanced backup options:

l BUFFERCOUNT=<number_of_IO_buffers>: Specifies the total number of IObuffers that can be used during a backup operation.

l READ_WRITE_FILEGROUPS: Specifies to back up only the read/write(active) filegroups within the database.

If you are specifying multiple options, separate each argument with a comma. Thesyntax is as follows:

-O "Option1, Option2, Option3"

-D <debug_level_1_through_9>

Generates detailed logs that you can use to troubleshoot backup issues. Thedefault value is 0 (zero).

-a "DELETE_DEBUG_LOG_DAYS=<days>"

Specifies to delete debug log files that are older than the specified number ofdays. The valid range is between 1 and 32767. By default, debug logs are notdeleted. Regularly deleting debug logs prevents the log folder on the installationdrive from becoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

-a "NSR_COPY_ONLY={TRUE | FALSE}"

Performs a copy-only backup from a SQL Server. The copy-only backups do notdisturb the SQL Server backup chain and do not affect backup-level promotionand log truncation. The default value is FALSE.This option applies only if you specify either full or incr as the backup typewith the -l parameter.Copy-only transaction log backups are generally required only to perform onlinerestores.

-a "NSR_ENABLE_FC={TRUE | FALSE}"

Enables or disables backing up the databases to the Data Domain server throughFibre Channel. The default value is FALSE.

-a "NSR_FC_HOSTNAME=<fibre_channel_server>

Specifies the hostname of the Fibre Channel. Use this option with the -a"NSR_ENABLE_FC=TRUE" parameter.

Backing Up SQL Server with Data Domain Boost

114 Microsoft Application Agent 4.7 SQL Server User Guide

Page 115: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

-a "NSR_INCLUDE_AAG_DATABASE=None”

Specifies to omit Always On availability group databases from an instance-levelbackup operation.

-a "NSR_DFA_SI_DD_LOCKBOX_PATH=<full_path_to_lockbox>"

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding usernames in pairs.Each pair is associated with a password that backups use.If you do not specify a value, the path defaults to lockbox path in the defaultinstallation path, which is C:\Program Files\DPSAPPS\common\lockbox.

-a "SKIP_SYSTEM_DATABASE={TRUE | FALSE}"

Specifies whether to skip the system databases during instance-level transactionlog backups. The default value is FALSE.

-a "BACKUP_PROMOTION={ALL | NONE | NONE_WITH_WARNINGS |SKIP_RECOVERY_MODEL | SKIP_RECOVERY_MODEL_WITH_WARNINGS}"

Specifies backup promotion options. The following values are valid:

l ALL (Default): Enables backup promotion to occur in any applicable scenario.

l NONE: Disables all backup promotion.

l NONE_WITH_WARNINGS: Disables backup promotion, but logs a warning whenbackup promotion would normally occur.

l SKIP_RECOVERY_MODEL: Disables database recovery model changedetection. Backup promotion as a result of recovery model change will notoccur, but backup promotion in other scenarios will still occur.

l SKIP_RECOVERY_MODEL_WITH_WARNINGS: Enables database recoverymodel change detection, but if a recover model change is discovered, logs awarning instead of promoting the backup. Backup promotion in otherscenarios will still occur.

The setting specified with this option applies to every database in the SQLinstance when this setting is specified along with an SQL instance level backuppath.Similarly, the setting specified with this option applies only to specified databaseswhen this setting is specified with a database level backup path.

Perform backups with T-SQL scriptsThe Microsoft application agent for Data Domain Boost enables you to generate aSQL-CLR script that you can use to back up SQL Server.

The SQL-CLR backup command, emc_run_backup, uses the Microsoft applicationagent for Data Domain Boost with SQL Server backup command prompt options. Youmust also provide VARCHAR parameters to this command.

To use this command, you must have a detailed knowledge of the Microsoftapplication agent for Data Domain Boost with SQL Server backup command promptoptions. Back up SQL Server with the Data Domain Boost backup command on page108 provides information about the Microsoft application agent for Data Domain Boostwith SQL Server backup command prompt options.

Backing Up SQL Server with Data Domain Boost

Perform backups with T-SQL scripts 115

Page 116: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Sample T-SQL backup script

The following SQL-CLR script is an example of a backup script:

USE [master]GODECLARE @returnCode int8 -l full -N "Set1" -y +0d -a "NSR_DFA_SI=TRUE" -a"NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.192.10" -a"NSR_DFA_SI_DD_USER=ost" -a "NSR_DFA_SI_DEVICE_PATH=/ddsub7" -a"NSR_SKIP_NON_BACKUPABLE_STATE_DB=TRUE" "MSSQL:"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

You can use any SQL Server standard interfaces, such as the SSMS Query windowand OSQL command line tool, to run the SQL-CLR scripts.

You can use the SQL-CLR script to schedule SQL Server backups by using the SQLServer Agent. Scheduling SQL Server backups by using SQL Server Agent on page 91provides information.

Best practices to back up SQL Server with Data Domain Boost on page 89 providesguidelines for better performance of SQL Server backups by using the Microsoftapplication agent for Data Domain Boost SQL-CLR scripts.

Performing SQL Server push backups by using the Microsoft application agent for Data DomainBoost T-SQL scripts

To back up either all databases or only the specific databases of a SQL Serverinstance from a source host to a Data Domain device by using a different host,perform the following steps:

Procedure

1. Start SSMS on a different host that you use to perform the backup.

2. Connect to the source SQL Server instance on the source host.

3. In the SSMS window on the different host, click New Query.

4. In the New Query window, run the T-SQL script to perform the backup.

Results

You can either generate the T-SQL script by using the Microsoft application agentGUI on the source host and copy it to the New Query window on the different host orwrite the T-SQL script in the New Query window. Perform backups with the Microsoftapp agent for Application Direct SSMS plug-in on page 100 and Perform backups withT-SQL scripts on page 115 provide information.

Example 4 T-SQL push backup script

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_backup ' -c CLUST-SQL-02.contoso.com -ACLUST-SQL-02.contoso.com -l full -y +0d -a "NSR_DFA_SI=TRUE" -a

Backing Up SQL Server with Data Domain Boost

116 Microsoft Application Agent 4.7 SQL Server User Guide

Page 117: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 4 T-SQL push backup script (continued)

"NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=nmmddtwo.sp2010.com" -a "NSR_DFA_SI_DD_USER=ost" -a "NSR_DFA_SI_DEVICE_PATH=/ddbmav2b75" -a"NSR_SKIP_NON_BACKUPABLE_STATE_DB=TRUE" "MSSQL$Inst1:Clus-SQL-01-DB01""MSSQL$Inst1:CLUST-SQL-02-DB01" "MSSQL$Inst1:CLUST-SQL-02-DB02" "MSSQL$Inst1:CLUST-SQL-02-DB03"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

where:

l CLUST-SQL-02.contoso.com is the source host that has the source SQL Serverinstance that you want to back up.

l Inst1 is the source SQL Server instance, to which you must connect from thedifferent host to perform the backup.

l Clus-SQL-01-DB01, CLUST-SQL-02-DB01, CLUST-SQL-02-DB02, and CLUST-SQL-02-DB03 are the databases that you have selected in the Inst1 instance toback up.

Performing federated backups of SQL Always On availability group databases by using T-SQLscripts

To perform federated backups, use the same backup command and options that Perform backups with T-SQL scripts on page 115 describes, but with the followingmodifications:

l Specify the Windows cluster name for <client_name> in -c <client_name>.

l Specify the backup object name for <save_set_name> in -N <save_set_name>.

l Specify #<AlwaysOn_Availability_Group_name> in the backup object name.

The options in the following sample scripts indicate these modifications.

Note

The Microsoft application agent does not support backing up multiple Always Onavailability groups in the same operation.

Example 5 Sample T-SQL script to back up an entire Always On availability group

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_backup '-c SQL2012clus3.brsvlab.local -S 4 -l full -y +30d -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -

Backing Up SQL Server with Data Domain Boost

Perform backups with T-SQL scripts 117

Page 118: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 5 Sample T-SQL script to back up an entire Always On availability group (continued)

a "NSR_DFA_SI_DD_HOST=ddve-01" -a "NSR_DFA_SI_DD_USER=sqlboost" -a"NSR_DFA_SI_PATH=/sqlboost" -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\ProgramFiles\DPSAPPS\common\lockbox" -a"NSR_SKIP_NON_BACKUPABLE_STATE_DB=TRUE" -N "MSSQL$SQ12INST4#sql2012-aag3:" "MSSQL$SQ12INST4#sql2012-aag3:"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Example 6 Sample T-SQL script to back up multiple databases (a subset of databases) of anAlways On availability group

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_backup '-c SQL2012clus3.brsvlab.local -S 4 -l full -y +30d -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=ddve-01" -a "NSR_DFA_SI_DD_USER=sqlboost" -a"NSR_DFA_SI_PATH=/sqlboost" -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\ProgramFiles\DPSAPPS\common\lockbox" -a"NSR_SKIP_NON_BACKUPABLE_STATE_DB=TRUE" -N "MSSQL$SQ12INST4#sql2012-aag3:DB" "MSSQL$SQ12INST4#sql2012-aag3:database1" "MSSQL$SQ12INST4#sql2012-aag3:database3" "MSSQL$SQ12INST4#sql2012-aag3:database8"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Example 7 Sample T-SQL script to back up a specific database of an Always On availabilitygroup

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_backup '-c SQL2012clus3.brsvlab.local -S 4 -l full -y +30d -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=ddve-01" -a "NSR_DFA_SI_DD_USER=sqlboost" -a"NSR_DFA_SI_PATH=/sqlboost" -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\ProgramFiles\DPSAPPS\common\lockbox" -a"NSR_SKIP_NON_BACKUPABLE_STATE_DB=TRUE" -N "MSSQL$SQ12INST4#sql2012-aag3:database1" "MSSQL$SQ12INST4#sql2012-aag3:database1"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Backing Up SQL Server with Data Domain Boost

118 Microsoft Application Agent 4.7 SQL Server User Guide

Page 119: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Listing backupsList backups using either the msagentadmin administration command or theddbmexptool command.

List backups and save files with the msagentadmin administration commandThe Microsoft application agent supports list commands to view backups and savefiles.

List backups or save files using the msagentadmin administration commandwith the following syntax:

msagentadmin administration {--list | --listfiles} --ddhost "<Data_Domain_server_name>" --ddpath "<name_and_path_of_storage_unit>" --dduser "<DDBoost_username>" --appID "mssql" [<optional_parameters>]

where:

{--list | --listfiles}

Specifies the type of list operation. You must only specify one of the followingparameters:

l --listfiles specifies to list save files on the storage unit.

l --list specifies to list backups.You can use the -s alias for the list parameter.

--ddhost "<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

--ddpath "/<storage_unit_name_and_path>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

--dduser "<DDBoost_user>"

Specifies the username of the DD Boost user.

--appID "mssql"

Specifies the application ID (namespace) to locate backups. Specify mssql forSQL Server.You can use the -n alias for the --appID parameter.

Optional parameters for the msagentadmin administration command

The following list describes the optional parameters you can use with msagentadminadministration commands.

--config "<configuration_file_path>"

Specifies the full path to the configuration file.You can use the -z alias for the --config parameter.

--lockbox <lockbox_path>

Backing Up SQL Server with Data Domain Boost

Listing backups 119

Page 120: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding user names in pairs.Each pair is associated with a password that backups use.If you do not specify a value, the path defaults to the installation path, which istypically C:\Program Files\DPSAPPS\common\lockbox.

--tier

Specifies to display the location of the save sets in either the Data Domain system(active tier) or the Data Domain Cloud Tier.

--client <client_name>

Specifies the application server hostname that contains the server instance thatwas backed up.You can use the -c alias for the --client parameter.

--before <end_time>

Lists only the backups that were taken on or before the given date and time, date,day, or time. If you do not specify a value, the value defaults to the current dateand time.For example, now, 3/31/2016 15:00:00, or Tuesday.You can use the -e alias for the --before parameter.

--after <start_time>

Lists only the backups that were taken on or after the date and time, date, day, ortime.For example: 3/31/2016 15:00:00 or Tuesday.You can use the -b alias for the --after parameter.

--limit <integer>

Specifies to limit the list results to the specified number.

--debug <level_1_through_9>

Specifies the debug level for listing backups. The default value is 0 (zero).You can use the -D alias for the --debug parameter.

--deleteDebugLog <days>

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767.By default, debug logs are not deleted. Regularly deleting debug logs prevents thelog folder on the installation drive from becoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs

--help

Prints a brief help message.You can use the -h alias for the --help parameter.

--confirm

Specifies to skip the user confirmation prompts for the operation.

-a "<key-value_pair>"

Specifies the keyword and value of an option that is also specified in theconfiguration file. For example, -a "CLIENT=<client_name>".

Backing Up SQL Server with Data Domain Boost

120 Microsoft Application Agent 4.7 SQL Server User Guide

Page 121: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Examples of the msagentadmin list commandConsider the following examples of the msagentadmin administration listcommands.

Example 8 List all backups

The following command lists all the backups:

msagentadmin administration --list --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --appid msapp_bbb -e --client myserver.myapp.com

Example 9 List all files in a storage unit

The following command lists all files in the /dd/backups storage unit:

msagentadmin administration --listFiles --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --appid msapp_bbb --client myserver.myapp.com

Example 10 Limit the list results to a certain number

The following command lists the five most recent backups:

msagentadmin administration --list --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --appid msapp_bbb --client myserver.myapp.com --limit 5

Example 11 Limit the list results to a certain date

The following command lists the backups that are performed after March 30, 2017:

msagentadmin administration --list --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --client myserver.myapp.com --appid msapp_bbb --after '3/30/2017'

Example 12 Limit the list results to a day of this week

The following command lists the backups that were performed before this Tuesday:

Backing Up SQL Server with Data Domain Boost

List backups and save files with the msagentadmin administration command 121

Page 122: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 12 Limit the list results to a day of this week (continued)

msagentadmin administration --list --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --appid msapp_bbb --client myserver.myapp.com --before Tuesday

List backups with the Data Domain Boost expiry toolRun the following command to list backups:

ddbmexptool -l -n MSSQL -a "DDBOOST_USER=<DDBoost_user>" -a "DEVICE_PATH=<storage_unit>" -a "DEVICE_HOST=<name>" -a "CLIENT=<client_name>" [<optional_parameters>]

where:

-l

Specifies to list backups.

-n MSSQL

Specifies to list SQL Server application save sets.

-a "DEVICE_HOST=<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

-a "DEVICE_PATH=<storage_unit>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

a "DDBOOST_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.

-a "CLIENT=<client_name>"

Specifies the SQL Server hostname that was specified for the backup.

Note

Specify the -b and -e parameters to limit the output to backups within a set timerange.

Consider the following examples of the ddbmexptool list command:

l The following command lists all backups:

ddbmexptool.exe -l -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=aru42" -a "DEVICE_HOST=10.31.194.120" -a "CLIENT=hmytest2.contoso.com"

Backing Up SQL Server with Data Domain Boost

122 Microsoft Application Agent 4.7 SQL Server User Guide

Page 123: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l The following command lists all the save sets with the name MSSQL$DEST2008:testdb1:

ddbmexptool.exe -l -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=msappstu7" -a "DEVICE_HOST=10.31.140.205" -a "CLIENT=vclus33.joy.com" -N MSSQL$DEST2008:testdb1

l The following command uses a configuration file:

ddbmexptool.exe -l -z -n mssql C:\DD-Config-Details.txt

Results

The expiry tool lists save sets in ascending order by default, showing the oldest savesets first. To list save sets in descending order, showing the most recent save setsfirst, specify LIST_SAVESET_DESC=TRUE in the configuration file, then use the -a“LIST_SAVESET_DESC=TRUE” option with the ddbmexptool command.

Optional parameters for the ddbmexptool expiry tool

The following list describes the optional parameters for the ddbmexptool expiry tool.

-v

Displays the verbose output on the console.

-D <debug_level_1_through_9>

Generates detailed logs that you can use to troubleshoot the backup issues. Thedefault value is 0 (zero).

-p <number_of_days>

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767. By default, debug logs are not deleted. Regularlydeleting debug logs prevents the log folder on the installation drive frombecoming too large. This parameter only deletes debug logs named in the defaultformat and located in the logs folder at <installation_path>\MSAPPAGENT\logs.

-b <start_time>

Specifies the lower boundary of the save time of the backup.Specify the time in either the <Hr> :<Min>:<Sec> <Month> <DD>, <YYYY>format or the relative time format. The supported relative time formats are now,<n> days ago, <n> months ago, <n> years ago, and <n> days.

If you do not specify the -b option, the command considers 1/1/1970 as the lowerboundary.

-e <end_time>

Specifies the upper boundary of the save time of the backup.Specify the time in either the <Hr> :<Min>:<Sec> <Month> <DD>, <YYYY>format or the relative time format. The supported relative time formats are now,<n> days ago, <n> months ago, <n> years ago, and <n> days.

If you do not specify the-e option, the command considers the current time asthe upper boundary.

The best practice is to set the value of -e to the same value as the expirationpolicy time period that was specified at the backup time.

Backing Up SQL Server with Data Domain Boost

List backups with the Data Domain Boost expiry tool 123

Page 124: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

-N <save_set_name>

Specifies a particular save set name to either display or display and delete. Forexample, -N MSSQL$DEST2008:testdb1.

-z <full_path_to_the_configuration_file>

Specifies the full path to the configuration file.

-a "parameter=value"

Specifies a key-value pair, that is, -a "key = value" for options present inthe configuration file. For example, -a "DEVICE_HOST = bu-ddb890.lss.emc.com"

-Y

Specifies to skip the user confirmation prompt when deleting backups.

Move and recall save sets on a Data Domain Cloud TierThe Microsoft application agent supports management of data with a Data DomainCloud Tier.

Note

Configuring the Data Domain Cloud Tier for data movement to the cloud on page 36describes how to configure a DD Cloud Tier data movement policy.

Use the msagentadmin.exe administration command to perform the followingtasks:

l Mark save sets to move them from a Data Domain storage unit to a Data DomainCloud Tier.

l Recall save sets from a Data Domain Cloud Tier to a Data Domain storage unit.The Microsoft application agent supports the following types of recall:

n Seamless or automatic: When a restore operation needs the save sets that arepresent on a Data Domain Cloud Tier, the Microsoft application agentautomatically recalls the save sets to the active tier on Data Domain.However, when you use Elastic Cloud Storage (ECS) with DD OS 6.1 or later,the Microsoft application agent restores the save sets on the cloud tier devicedirectly from ECS to the client without recalling to the active tier. The DataDomain documentation provides more details and recommendations for restoreoperations directly from ECS.

n Manual: When both of the following conditions exist, recall the save setsmanually before you perform a restore operation:

– When a restore operation needs the save sets that are present on a DataDomain Cloud Tier.

– When you do not want the Microsoft application agent to automaticallyrecall and restore the save sets.

Backing Up SQL Server with Data Domain Boost

124 Microsoft Application Agent 4.7 SQL Server User Guide

Page 125: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Move save sets to the Data Domain Cloud TierUse the --move or -m flag with the msagentadmin administration command tomove save sets to a Data Domain Cloud Tier.

To move save sets to a Data Domain Cloud Tier, type the following command:

msagentadmin.exe administration --move --ddhost "<Data_Domain_server_name>" --ddpath "<name_and_path_of_storage_unit>" --dduser "<DDBoost_username>" [--tier] [--client <client_name>] [--after <start_time>] --before <end_time> --appID <application_ID> --config <config_file_path> [--debug <debug_level_1_through_9>]

NOTICE

When you subsequently mark save sets, ensure that you do not mark the previouslymarked save sets by using the --after <start_time> and --before <end_time>options. If you mark the previously marked save sets, it can impact the performance ofthe data movement.

Consider the following example commands to mark SQL Server save sets to movethem from a Data Domain storage unit to a Data Domain Cloud Tier:

Example 13 Cloud tier move command without a configuration file

msagentadmin administration --move --tier --before "30 days ago" --appID mssql --ddhost "10.70.102.111" --ddpath "/mt1" --dduser "ost" --client SQLX86.adesc.com --debug 9

Example 14 Cloud tier move command with a configuration file

msagentadmin.exe administration --move --tier --before "30 days ago" --appID mssql --config c:\temp\config_pp.txt --debug 9

Recall save sets from the Data Domain Cloud TierUse the --recall or -r flag with the msagentadmin administration commandto recall save sets from a Data Domain Cloud Tier.

To recall save sets from the Data Domain Cloud Tier device to the Data Domainstorage unit, type the following command:

msagentadmin.exe administration --recall --ddhost "<Data_Domain_server_name>" --ddpath "<name_and_path_of_storage_unit>" --dduser "<DDBoost_username>" [--tier] [--client <client_name>] [--after <start_time>] --before <end_time> --appID <application_ID> --config <config_file_path> [--debug <debug_level_1_through_9>]

Backing Up SQL Server with Data Domain Boost

Move save sets to the Data Domain Cloud Tier 125

Page 126: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Consider the following example commands to mark SQL Server save sets to movethem from a Data Domain storage unit to a Data Domain Cloud Tier:

Example 15 Cloud tier recall command without a configuration file

msagentadmin administration --recall --tier --after 1481104962 --before 1481105533 --appID mssql --ddhost "10.70.102.111" --ddpath "/mt1" --dduser "ost" --client SQLX86.adesc.com --debug 9

Example 16 Cloud tier recall command with a configuration file

msagentadmin.exe administration --recall --tier --after 1481104962 --before 1481105533 --appID mssql --config c:\temp\config_pp.txt --debug 9

Optional parameters for the msagentadmin administration commandThe following list describes the optional parameters you can use with msagentadminadministration commands.

--config "<configuration_file_path>"

Specifies the full path to the configuration file.You can use the -z alias for the --config parameter.

--lockbox <lockbox_path>

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding user names in pairs.Each pair is associated with a password that backups use.If you do not specify a value, the path defaults to the installation path, which istypically C:\Program Files\DPSAPPS\common\lockbox.

--tier

Specifies to display the location of the save sets in either the Data Domain system(active tier) or the Data Domain Cloud Tier.

--client <client_name>

Specifies the application server hostname that contains the server instance thatwas backed up.You can use the -c alias for the --client parameter.

--before <end_time>

Lists only the backups that were taken on or before the given date and time, date,day, or time. If you do not specify a value, the value defaults to the current dateand time.For example, now, 3/31/2016 15:00:00, or Tuesday.You can use the -e alias for the --before parameter.

--after <start_time>

Lists only the backups that were taken on or after the date and time, date, day, ortime.For example: 3/31/2016 15:00:00 or Tuesday.

Backing Up SQL Server with Data Domain Boost

126 Microsoft Application Agent 4.7 SQL Server User Guide

Page 127: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

You can use the -b alias for the --after parameter.

--limit <integer>

Specifies to limit the list results to the specified number.

--debug <level_1_through_9>

Specifies the debug level for listing backups. The default value is 0 (zero).You can use the -D alias for the --debug parameter.

--deleteDebugLog <days>

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767.By default, debug logs are not deleted. Regularly deleting debug logs prevents thelog folder on the installation drive from becoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs

--help

Prints a brief help message.You can use the -h alias for the --help parameter.

--confirm

Specifies to skip the user confirmation prompts for the operation.

-a "<key-value_pair>"

Specifies the keyword and value of an option that is also specified in theconfiguration file. For example, -a "CLIENT=<client_name>".

Deleting backupsDelete backups using either the msagentadmin administration command orthe ddbmexptool command.

Delete backups with the msagentadmin administration commandThe Microsoft application agent supports a delete command to delete backups andsave sets.

The delete command first lists the backups, and then deletes them.

To delete save sets or backups, run the msagentadmin administration command withthe following syntax:

msagentadmin administration --delete --ddhost "<name>" --ddpath "/<storage_unit_name_and_path>" --dduser "<DDBoost_user>" --appID "mssql" <optional_parameters>

where:

--delete

Specifies a delete operation.

--ddhost "<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

Backing Up SQL Server with Data Domain Boost

Deleting backups 127

Page 128: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

--ddpath "/<storage_unit_name_and_path>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

--dduser "<DDBoost_user>"

Specifies the username of the DD Boost user.

--appID "mssql"

Specifies the application ID (namespace) to locate backups. Specify mssql forSQL Server.You can use the -n alias for the --appID parameter.

Optional parameters for the msagentadmin administration command

The following list describes the optional parameters you can use with msagentadminadministration commands.

--config "<configuration_file_path>"

Specifies the full path to the configuration file.You can use the -z alias for the --config parameter.

--lockbox <lockbox_path>

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding user names in pairs.Each pair is associated with a password that backups use.If you do not specify a value, the path defaults to the installation path, which istypically C:\Program Files\DPSAPPS\common\lockbox.

--tier

Specifies to display the location of the save sets in either the Data Domain system(active tier) or the Data Domain Cloud Tier.

--client <client_name>

Specifies the application server hostname that contains the server instance thatwas backed up.You can use the -c alias for the --client parameter.

--before <end_time>

Lists only the backups that were taken on or before the given date and time, date,day, or time. If you do not specify a value, the value defaults to the current dateand time.For example, now, 3/31/2016 15:00:00, or Tuesday.You can use the -e alias for the --before parameter.

--after <start_time>

Lists only the backups that were taken on or after the date and time, date, day, ortime.For example: 3/31/2016 15:00:00 or Tuesday.You can use the -b alias for the --after parameter.

--limit <integer>

Specifies to limit the list results to the specified number.

--debug <level_1_through_9>

Specifies the debug level for listing backups. The default value is 0 (zero).

Backing Up SQL Server with Data Domain Boost

128 Microsoft Application Agent 4.7 SQL Server User Guide

Page 129: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

You can use the -D alias for the --debug parameter.

--deleteDebugLog <days>

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767.By default, debug logs are not deleted. Regularly deleting debug logs prevents thelog folder on the installation drive from becoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs

--help

Prints a brief help message.You can use the -h alias for the --help parameter.

--confirm

Specifies to skip the user confirmation prompts for the operation.

-a "<key-value_pair>"

Specifies the keyword and value of an option that is also specified in theconfiguration file. For example, -a "CLIENT=<client_name>".

Example of the msagentadmin delete commandConsider the following example of the msagentadmin administration deletecommand.

Example 17 Delete backups taken before a specified date and time

The following command deletes all backups that were taken before 1461267170:

msagentadmin administration --delete --appid msapp_bbb --config C:\Program Files\DPSAPPS\MSAPPAGENT\config\msappagent.cfg --before 1461267170

Delete backups with the ddbmexptool expiry toolThe Microsoft application agent provides the ddbmexptool expiry tool to deleteexpired or non-expired SQL Server backups.

Prerequisites

Ensure that you meet the following requirements before you delete the expiredbackups by using the expiry tool:

l You have a log of the full and incremental backups that you performed.

l You have manually checked whether the expired backup that you want to deletehas dependent non-expired backups. You must not delete an expired backup if ithas dependent non-expired backups. The expiry tool does not check for thedependent backups.

l You have created a configuration file.

Backing Up SQL Server with Data Domain Boost

Delete backups with the ddbmexptool expiry tool 129

Page 130: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

For example, create the C:\ddconfig.cfg configuration file with the followingcontents:

DEVICE_PATH=/artitestDDBOOST_USER=ostDEVICE_HOST=10.31.192.10CLIENT=mw2k8x64sql2.nmmdev.comDEBUG_LEVEL=0LOCKBOX_PATH="C:\Program Files\DPSAPPS\common\lockbox"

Note

For the DEVICE_HOST variable, specify either the same hostname or the same IPaddress that you specified in the DataDomain Server field when you added orconfigured the Data Domain server. The hostname must be in the FQDN format.For example, test1.contoso.com.

Delete backups with the Data Domain Boost expiry tool

To delete the backups and the metadata files that are within a specific save time rangeand regardless of the expiry date, run the following command:

ddbmexptool -d -n MSSQL -a "DDBOOST_USER=<DDBoost_user>" -a "DEVICE_PATH=<storage_unit>" -a "DEVICE_HOST=<name>" -a "CLIENT=<client_name>" [<optional_parameters>]

where:

-d

Specifies to delete backups.

-n MSSQL

Specifies to delete SQL Server application save sets.

-a "DEVICE_HOST=<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

-a "DEVICE_PATH=<storage_unit>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

a "DDBOOST_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.

-a "CLIENT=<client_name>"

Specifies the SQL Server hostname that was specified for the backup.

Backing Up SQL Server with Data Domain Boost

130 Microsoft Application Agent 4.7 SQL Server User Guide

Page 131: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

Consider the following information:

l The deletion commands do not check for the dependencies of the backups todelete.

l If you do not specify the -b and -e options, the command deletes all the backups.

l To delete the backups that have been taken since yesterday, you must use theinteractive mode.

l When you use the non-interactive mode (-Y option), set the value of the -eoption to a minimum of 1 days ago to prevent the accidental deletion of theactive backups.

Consider the following examples of the ddbmexptool delete command:

l The following commands delete all backups:

ddbmexptool.exe -d -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=aru42" -a "DEVICE_HOST=10.31.194.120" -a "CLIENT=hmytest2.contoso.com"

ddbmexptool.exe -d -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=msappstu7" -a "DEVICE_HOST=10.31.140.205" -a "CLIENT=vclus33.joy.com"

l The following command uses a configuration file:

ddbmexptool.exe -z -n mssql C:\DD-Config-Details.txt

Delete expired backups with the Data Domain Boost expiry tool

To delete expired backups, run the following command:

ddbmexptool -k -n MSSQL -a "DDBOOST_USER=<DDBoost_user>" -a "DEVICE_PATH=<storage_unit>" -a "DEVICE_HOST=<name>" -a "CLIENT=<client_name>" [<optional_parameters>]

where:

-k

Specifies to delete expired backups.

-n MSSQL

Specifies to delete SQL Server application save sets.

-a "DEVICE_HOST=<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

-a "DEVICE_PATH=<storage_unit>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

a "DDBOOST_USER=<DDBoost_user>"

Backing Up SQL Server with Data Domain Boost

Delete backups with the ddbmexptool expiry tool 131

Page 132: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies the username of the DD Boost user.

-a "CLIENT=<client_name>"

Specifies the SQL Server hostname that was specified for the backup.

Note

If you do not specify the -b and -e options, the command deletes all the expiredbackups. However, the command does not delete the metadata files that theMicrosoft application agent creates during backups. The size of the metadata files isnegligible, and does not affect the performance of the host. To delete the metadatafiles, use the -d option.

Consider the following examples of the ddbmexptool delete command:

l The following command deletes all expired backups:

ddbmexptool.exe -k -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=aru42" -a "DEVICE_HOST=10.31.194.120" -a "CLIENT=hmytest2.contoso.com"

l The following command deletes all the expired save sets with the name MSSQL$DEST2008:testdb1:

ddbmexptool.exe -k -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=msappstu7" -a "DEVICE_HOST=10.31.140.205" -a "CLIENT=vclus33.joy.com" -N MSSQL$DEST2008:testdb1

l The following command uses a configuration file:

ddbmexptool.exe -k -n mssql -z C:\DD-Config-Details.txt

Delete expired backups by running the expiry tool with T-SQL

With the Microsoft application agent, the CLR deployment tool includes thedbo.emc_run_delete stored procedure, which enables you to run the expiry tool froma regular SQL Server Management Studio GUI.

The stored procedure runs the expiry tool, and uses the command line arguments thatare passed into the stored procedure.

The stored procedure also ensures that the delete command includes -Y and the -nmssql options.

The expiry tool requires the -Y and the -n mssql options because you cannotintervene, and the Microsoft application agent supports only the MSSQL plug-inthrough the T-SQL interface.

Sample T-SQL command to view the backups

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_delete ' -b "2 weeks ago" -e "one week ago" -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=aru42" -a "DEVICE_HOST=10.31.194.120" -a "CLIENT=hmytest2.contoso.com"'IF @returnCode <> 0BEGIN

Backing Up SQL Server with Data Domain Boost

132 Microsoft Application Agent 4.7 SQL Server User Guide

Page 133: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

RAISERROR ('Fail!', 16, 1)END

Sample T-SQL command to delete the backups

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_delete ' -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=aru42" -a "DEVICE_HOST=10.31.194.120" -a "CLIENT=hmytest2.contoso.com" -d -e "one day ago"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Sample T-SQL command to delete the expired backups

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_delete ' -n mssql -a "DDBOOST_USER=ost" -a "DEVICE_PATH=aru42" -a "DEVICE_HOST=10.31.194.120" -a "CLIENT=hmytest2.contoso.com" -k'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Optional parameters for the ddbmexptool expiry tool

The following list describes the optional parameters for the ddbmexptool expiry tool.

-v

Displays the verbose output on the console.

-D <debug_level_1_through_9>

Generates detailed logs that you can use to troubleshoot the backup issues. Thedefault value is 0 (zero).

-p <number_of_days>

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767. By default, debug logs are not deleted. Regularlydeleting debug logs prevents the log folder on the installation drive frombecoming too large. This parameter only deletes debug logs named in the defaultformat and located in the logs folder at <installation_path>\MSAPPAGENT\logs.

-b <start_time>

Specifies the lower boundary of the save time of the backup.Specify the time in either the <Hr> :<Min>:<Sec> <Month> <DD>, <YYYY>format or the relative time format. The supported relative time formats are now,<n> days ago, <n> months ago, <n> years ago, and <n> days.

If you do not specify the -b option, the command considers 1/1/1970 as the lowerboundary.

Backing Up SQL Server with Data Domain Boost

Delete backups with the ddbmexptool expiry tool 133

Page 134: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

-e <end_time>

Specifies the upper boundary of the save time of the backup.Specify the time in either the <Hr> :<Min>:<Sec> <Month> <DD>, <YYYY>format or the relative time format. The supported relative time formats are now,<n> days ago, <n> months ago, <n> years ago, and <n> days.

If you do not specify the-e option, the command considers the current time asthe upper boundary.

The best practice is to set the value of -e to the same value as the expirationpolicy time period that was specified at the backup time.

-N <save_set_name>

Specifies a particular save set name to either display or display and delete. Forexample, -N MSSQL$DEST2008:testdb1.

-z <full_path_to_the_configuration_file>

Specifies the full path to the configuration file.

-a "parameter=value"

Specifies a key-value pair, that is, -a "key = value" for options present inthe configuration file. For example, -a "DEVICE_HOST = bu-ddb890.lss.emc.com"

-Y

Specifies to skip the user confirmation prompt when deleting backups.

Backing Up SQL Server with Data Domain Boost

134 Microsoft Application Agent 4.7 SQL Server User Guide

Page 135: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 5

Backing Up SQL Server with ProtectPoint

This chapter includes the following sections:

l Overview of SQL Server backups with ProtectPoint........................................ 136l ProtectPoint backup workflow......................................................................... 136l Best practices to back up SQL Server with ProtectPoint................................. 137l RecoverPoint on XtremeIO backup considerations........................................... 138l Naming conventions for backups with ProtectPoint......................................... 139l Backing up SQL Server with ProtectPoint........................................................140l List backups with the msagentadmin command................................................154l Deleting backups.............................................................................................. 157

Backing Up SQL Server with ProtectPoint 135

Page 136: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Overview of SQL Server backups with ProtectPointYou can back up SQL Server by using the Microsoft application agent SSMS plug-in(GUI), ProtectPoint commands, or T-SQL scripts.

ProtectPoint backups are always performed at LUN-level.

ProtectPoint backups do not use the Data Domain Distributed Segment Processing(DSP) for non-Gen0 backups. ProtectPoint modifies the blocks that are deleted onthe volumes, and considers them as new blocks.

Though these blocks are non-unique, a data transfer operation sends these blocks toData Domain. Log truncation, where logs are deleted after a backup, is an example.

In the case of RecoverPoint, according to your consistency group layout, you can backup either all the databases or only the required databases of a SQL Server instance.

Include all the databases of the same consistency group in a backup. Regardless thedatabases that are included in the backup, the backup is always performed at theconsistency group level. Back up all the databases of a consistency group.

ProtectPoint backup workflowThe backup workflow for ProtectPoint is different depending on whether you areusing a VMAX array or RecoverPoint appliance.

ProtectPoint with RecoverPoint backup workflowThe ProtectPointwith RecoverPoint backup workflow includes the following steps:

1. The database administrator starts a ProtectPoint with RecoverPoint backup byrunning the database native backup tool, and specifying the backup type.

2. The Microsoft application agent maps the files in the backup to a list of XtremIOsource LUNs, obtains information about the relevant consistency groups fromRecoverPoint, and checks whether the source LUNs can be protected by usingProtectPoint with RecoverPoint.

3. The Microsoft application agent notifies the application or database that the filescan be quiesced or placed in the hot backup mode.

4. The Microsoft application agent notifies RecoverPoint to create a point-in-timesnapshot, that is a bookmark of the consistency groups that contain the sourceLUNs.

5. RecoverPoint creates a snapshot of all the required consistency groups on theXtremIO system.

6. The Microsoft application agent notifies the application or database that the filescan be unquiesced or taken out of the backup mode, for a minimum impact on theapplication or the database.

7. RecoverPoint uses Data Domain Boost to write all the blocks that are changedsince the previous snapshot, to working files on the Data Domain system.

8. RecoverPoint uses the FastCopy service to create and store a Data Domain vdiskstatic image from each Data Domain Boost working file. The vdisk static imagesform the permanent backup.

9. The database backup tool records the successful backup in its backup catalog.

Backing Up SQL Server with ProtectPoint

136 Microsoft Application Agent 4.7 SQL Server User Guide

Page 137: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

10. The Microsoft application agent records the backup in its own catalog, in apredefined Data Domain Boost storage unit on the Data Domain system.

11. The Microsoft application agent uses the Data Domain Boost workflow to back upthe files that ProtectPoint cannot protect, to the Data Domain system, whichprovides full data protection.

ProtectPoint with VMAX backup workflowThe ProtectPoint with VMAX backup workflow includes the following steps:

1. The DBA starts a ProtectPoint backup by running the database native backup tool,and specifying the backup type.

2. The Microsoft application agent maps the files in the backup to a list of VMAXsource devices (source LUNs), and checks whether the devices can be protectedby using ProtectPoint.

3. The Microsoft application agent notifies the application or database that the filescan be quiesced or placed in the hot backup mode.

4. The Microsoft application agent creates a SnapVX snapshot on the VMAX array.

5. The Microsoft application agent notifies the application or database that the filescan be unquiesced or taken out of the backup mode, for a minimum impact on theapplication or the database.

6. The VMAX array copies the changed data on each source LUN to a correspondingData Domain vdisk device, which is a VMAX FAST.X encapsulated LUN.

7. For each Data Domain vdisk device, the Data Domain system creates a DataDomain vdisk static image, and stores it, which is a permanent backup.

8. The database backup tool records the successful backup in its backup catalog.

9. The Microsoft application agent records the backup in its own catalog, in apredefined Data Domain Boost storage unit on the Data Domain system.

10. The Microsoft application agent uses the Data Domain Boost workflow to back upthe files that ProtectPoint cannot protect, to the Data Domain system, whichprovides full data protection.

Best practices to back up SQL Server with ProtectPointThe following are the best practices to back up SQL Server by using the Microsoftapplication agent for ProtectPoint.

Install PowerPathInstall PowerPath on the host on which you want to use multipathing.

Use supported charactersThe Microsoft application supports locale-specific date and time processing andsetting the date and time display language can be set to non-English characters.However, database and path names must be written in ASCII characters only. Namingconventions for backups with ProtectPoint on page 139 provides more information onsupported characters for database and instance names.

Stop VSS when you stop VSS ProtectPoint Hardware ProviderWhen you manually stop or restart VSS ProtectPoint Hardware Provider, you muststop or restart Volume Shadow Copy also.

Use a single volume on each LUN for only one type of application server dataUse a single volume on the XtremIO and VMAX LUNs.

Backing Up SQL Server with ProtectPoint

ProtectPoint with VMAX backup workflow 137

Page 138: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

If a LUN contains multiple volumes, the volumes that are not included in the backupbecome only crash-consistent. Also, a rollback (LUN level) restore rolls back an imageon the whole LUN. So, this setup or configuration does not support the rollbackrestore. The Microsoft application agent does not know about the excluded volumesfor the backup because there is no special safety check.

The XtremIO and VMAX LUNs must contain data for only one type of applicationserver. For example, if you are using a LUN to back up SQL Server data, the sameLUN cannot be used to protect Exchange Server data. If the LUNs contain data frommore than one type of application server, the data that is not included in the backupbecomes only crash-consistent.

Note

Do not perform or use nested mounts on volumes because Microsoft VSS does notsupport the feature.

Configure Data Domain quota limitsThe Microsoft application agent does not have a parameter to control the total sizethat it consumes. The quota limits can only be set on the Data Domain system on aper-MTree (storage unit) basis.

An MTree's quota limits are calculated based on the logical size, which is the sizebefore compression and de-duplication of the data.

The quota limits impact only backup operations.

Configuring usage limits of Data Domain resources on page 32 provides moreinformation about quota limit, impact of exceeding the limits, and configuring theusage limits.

Configure usage limits for Data Domain streamsConfigure a sufficient number of Data Domain streams for better performance ofbackups and restores. The streams control backup and restore parallelism for eachdatabase.

The Microsoft application agent requires one stream per save set that you back up orrestore. When you perform striped backups, each stripe requires one stream. Thestripes are concurrently executed for each database. Databases are sequentiallybacked up and restored. When you use stripes, the number of streams must be equalto or more than the number of stripes.

The minimum number of streams for a non-stripe environment is 1.

Configuring usage limits of Data Domain streams on page 35 provides moreinformation about streams limit, impact of exceeding the limits, and configuring theusage limits.

RecoverPoint on XtremeIO backup considerationsIf you are using RecoverPoint on XtremeIO, review the following considerations.

Include consistency group LUNS in the backupEnsure that all the LUNs of a consistency group participate in the backup by explicitlyincluding them in the backup.

Otherwise, if you use a RecoverPoint version that is earlier than 5.0, any rollbackrestores of the backup fail.

Include consistency group databases in the backupInclude all the databases of a RecoverPoint consistency group in the backup.

Backing Up SQL Server with ProtectPoint

138 Microsoft Application Agent 4.7 SQL Server User Guide

Page 139: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Otherwise, the databases that are not included in the backup are not application-consistent, and not recorded in the Microsoft application agent catalog.

Note

Performing a rollback restore of this backup can corrupt the databases that are notincluded in the backup.

Use a single backup invocation spanMinimize the number of consistency groups by using a single backup invocation span.

Microsoft VSS requires a snapshot to be taken within 10 seconds. If the number ofconsistency groups increases, the snapshot time increases.

Naming conventions for backups with ProtectPointWhen naming SQL Server instance, database, and filegroups, consider that theMicrosoft application agent does not distinguish the difference between upper andlowercase letters. The names are not case-sensitive.

Therefore, if there are two or more databases with the same name but with differentcapitalization, such as DB1 and db1, the Microsoft application agent views thesedatabases as the same and by default backs up only one of the databases.

The following table described the special characters that are supported for namingdatabase backups in SQL stand-alone, cluster, and Always On availability groupconfigurations with Microsoft application agent for ProtectPoint.

Note

Sometimes, these characters appear as URL-encoded in the command prompt.

Table 15 Supported special characters

Special character Name

` Grave accent

\t Tab

/ Slash

\ Backslash

" Double quote

, Comma

% Percentage

& Ampersand

< Less than

> Greater than

? Question mark

[ Open bracket

] Close bracket

^ Caret

Backing Up SQL Server with ProtectPoint

Naming conventions for backups with ProtectPoint 139

Page 140: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 15 Supported special characters (continued)

Special character Name

{ Open curly bracket

} Close curly bracket

| Vertical bar

Note

While SQL Server supports naming instances with the hash symbol (#), the Microsoftapplication agent does not. If an instance includes a hash symbol, backups of thatinstance will fail.

Backing up SQL Server with ProtectPointThe Microsoft application agent for ProtectPoint with SQL Server supports multipletools to perform backups.

You can configure backups using the Microsoft application agent SQL ServerManagement Studio plug-in (GUI), Microsoft application agent for ProtectPointcommands, or T-SQL scripts.

Note

ProtectPoint with SQL Server backups are always VSS-based full backups.

Back up SQL Server with the Microsoft app agent for Storage Direct SSMSplug-in

The Microsoft application agent supports a user interface to perform backupoperations through a SQL Server Management Studio (SSMS) plug-in.

The Script view is available in each page, which generates a command promptequivalent script. You can use this script to create a .bat file to perform scheduledbackups, automation, and other tasks.

l CLI Scripts: To generate the CLI script, which you can use to run a backup fromthe CLI.

l T-SQL Scripts: To generate a backup script in the T-SQL format. You can use theT-SQL scripts to restore SQL Server using the Microsoft application agent forProtectPoint.

Launch the Microsoft app agent for Storage Direct SSMS plug-in

To open the Microsoft app agent for Storage Direct SSMS plug-in, from the Windowsdesktop, click Start > Microsoft SQL Server Management Studio > Microsoft appagent for Storage Direct.

Backing Up SQL Server with ProtectPoint

140 Microsoft Application Agent 4.7 SQL Server User Guide

Page 141: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

NOTICE

If you have not installed SSMS, to start the Microsoft app agent for Storage DirectSSMS plug-in, run the DDSSMSAddinApp.exe pp command from the<Microsoft_application_agent_install_path>\DPSAPPS\MSAPPAGENT\bin folder.

Configure general backup settingsTo configure SQL backups with the Microsoft app agent for Storage Direct SSMSplug-in, you must first specify general backup options on the Backup > General page.

Procedure

1. Open the Microsoft app agent for Storage Direct window to the Backup >General page.

The General page appears as shown in the following figure.

Figure 16 ProtectPoint - Backup-General page

2. In the SQL Server Instance field, select the name of the SQL Server instancethat contains the databases that you want to back up.

Backing Up SQL Server with ProtectPoint

Back up SQL Server with the Microsoft app agent for Storage Direct SSMS plug-in 141

Page 142: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

The Microsoft app agent for Storage Direct SSMS plug-in does not supportbacking up multiple SQL Server instances in the same operation. To back upmultiple SQL Server instances, use either the command prompt or T-SQL.

3. From the databases table, you can select either the entire SQL Server instance,that is, all the databases by selecting the check box in the header row or onlythe required databases to back up.

Note

A RecoverPoint Consistency Groups column appears when you specify theRecoverPoint Management Server field on the Options page.

4. In the Backup type list, select the type of the backup that you want to perform,such as Full or Transaction log.

To perform hybrid backups, select Transaction log. A full backup must exist fortransaction log backups to succeed.

5. To start the backup operation, click Run.

Configure backup optionsWhen you configure SQL backups with the Microsoft app agent for Storage DirectSSMS plug-in, you can specify backup options on the Backup > Options page.

Procedure

1. From the left panel, click Options to specify optional backup settings.

The Options page appears as shown in the following figure.

Backing Up SQL Server with ProtectPoint

142 Microsoft Application Agent 4.7 SQL Server User Guide

Page 143: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 17 ProtectPoint - Backup-Options page

2. To select a Data Domain server to which the database will be backed up,perform the following action sequence:

a. Click . . . beside Data Domain.

The Data Domain Connection List & Lockbox Settings dialog box appearsas shown in the following figure.

Backing Up SQL Server with ProtectPoint

Back up SQL Server with the Microsoft app agent for Storage Direct SSMS plug-in 143

Page 144: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 18 Data Domain connection list and lockbox settings

b. In the Lockbox Folder field, type the path to lockbox, and then clickRefresh.

The default path to the lockbox is C:\Program Files\DPSAPPS\common\lockbox.

The DataDomain Connections list is refreshed.

c. In the DataDomain Connections table, select target Data Domain server forthe backup.

d. (Optional) To add or remove Data Domain servers from the DataDomainConnections table, perform one of the following action sequences:

l To add a Data Domain server, perform the following steps:

a. Click Add.The Add Data Domain Server details dialog box appears as shown inthe following figure.

Backing Up SQL Server with ProtectPoint

144 Microsoft Application Agent 4.7 SQL Server User Guide

Page 145: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 19 ProtectPoint - Add Data Domain Server details

b. DataDomain Server: Specify the name of the Data Domain server, towhich you want to back up the databases.

c. Communication Protocol: Select the medium such as, Ethernet orFibre channel, through which you want to back up the databases tothe Data Domain server. By default, Ethernet is selected.

d. FC Service Name: Specify the name of the Data Domain server asthe fibre channel (FC) service name if you have selected FibreChannel from the Communication Protocol list.For example, the following figure shows the FC service name.

Figure 20 Data Domain server name

e. In the User Name field, type the username of the DD Boost user.

f. In the Password field, type the password of the DD Boost user.

g. In the Storage Unit field, type the name of the storage unit, to whichyou want to back up the databases.

h. To add a different vdisk user than the DD Boost user, perform thefollowing action sequence:

a. Select Add a separate vdisk user.

b. In the User Name field, type the username of the vdisk user.

c. In the Password field, type the password of the vdisk user.

d. Click OK.

Backing Up SQL Server with ProtectPoint

Back up SQL Server with the Microsoft app agent for Storage Direct SSMS plug-in 145

Page 146: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

DD Boost user credentials are verified before they are saved in thelockbox. Verification of the user credentials requires some time tocomplete.

l To remove a Data Domain server, select the server, and then clickRemove.

l To add a SQL virtual server to either back up databases to SQL clusteredinstances or restore databases from SQL clustered instances, performthe following steps:

n Select Edit LockBox Settings.

n In the Enter Host Name field, type the FQDN of the SQL virtualserver.

n Click OK.

Note

To either back up databases to SQL clustered instances or restoredatabases from SQL clustered instances by using the T-SQL integration,you must add FQDNs of SQL virtual servers to the lockbox.

l To remove a SQL virtual server, select the FQDN of the SQL virtualserver from the Select Host Name list, and then click Remove.

The PersistedSettings.xml file in the lockbox folder contains theinformation about Data Domain servers. Adding a Data Domain server for thefirst time to a new lockbox creates the PersistedSettings.xml file.Adding or removing a Data Domain server to or from the lockbox updates thePersistedSettings.xml file.

3. To select a RecoverPoint appliance that you want to use to perform the backup,perform the following action sequence:

a. Click . . . beside Management Server.

The RecoverPoint Connection List & Lockbox Settings dialog box appearsas shown in the following figure.

Backing Up SQL Server with ProtectPoint

146 Microsoft Application Agent 4.7 SQL Server User Guide

Page 147: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 21 RecoverPoint connection list and lockbox settings

b. In the Lockbox Folder field, type the path to lockbox and click Refresh.

The default path to lockbox is C:\Program Files\DPSAPPS\common\lockbox.

The RecoverPoint Connections list is refreshed.

c. In the RecoverPoint Connections table, select the target RecoverPointappliance or vRPA for the backup.

d. (Optional) To add or remove a RecoverPoint appliance from theRecoverPoint Connections table, perform one of the following actionsequences:

l To add a RecoverPoint appliance, perform the following steps:

a. Click Add.The Add RecoverPoint Server details dialog box appears as shown inthe following figure.

Figure 22 ProtectPoint - Add RecoverPoint Server details

b. In the RecoverPoint Management Host field, type the name of theRecoverPoint management host that you want to use to back up thedatabases.

Backing Up SQL Server with ProtectPoint

Back up SQL Server with the Microsoft app agent for Storage Direct SSMS plug-in 147

Page 148: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

c. In the User Name field, type the username of the RecoverPointappliance.

d. In the Password field, type the password of the RecoverPointappliance.

e. Click OK.

l To remove a RecoverPoint appliance from the RecoverPointConnections table, select the appliance, and then click Remove.

l To add a SQL virtual server to either back up databases to SQL clusteredinstances or restore databases from SQL clustered instances, performthe following steps:

n Select Edit LockBox Settings.

n In the Enter Host Name field, type the FQDN of the SQL virtualserver.

n Click Add.

Note

To either back up databases to SQL clustered instances or restoredatabases from SQL clustered instances by using the T-SQL integration,you must add FQDNs of SQL virtual servers to the lockbox.

l To remove a SQL virtual server from the lockbox, select the FQDN of theSQL virtual server from the Select Host Name list, and then clickRemove.

Note

Do not specify a RecoverPoint appliance if you are using a VMAX array toperform backups.

4. To use the remote VMAX array when you are backing up SRDF/S protectedvolumes, select Perform an SRDF based backup.

Note

Do not specify this field if you use a RecoverPoint array to perform backups.

5. To generate detailed logs, which you can use to troubleshoot backup issues,specify a number between 1 and 9 in the Select a debug level field. The defaultvalue is 0 (zero).

6. To delete debug logs older than a certain number of days, in the Delete debuglogs after field, specify the number of days with a number between 1 and 32767days. The default value is 0 and does not delete any debug logs.

Regularly deleting debug logs prevents the log folder on the installation drivefrom becoming too large.

Note

This option only deletes debug logs named in the default format and located inthe logs folder at <installation_path>\MSAPPAGENT\logs.

Backing Up SQL Server with ProtectPoint

148 Microsoft Application Agent 4.7 SQL Server User Guide

Page 149: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

7. To back up an Always On availability group, perform the following actionsequence:

a. Select Always-on Availability.

b. In the Cluster Name field, type the Windows cluster name of the Always-OnAvailability Group.

You can perform Always On availability group backups from either a primarynode or a secondary node.

Selecting this option does not back up local databases. You can backup the localdatabases by using the local SQL Server host name as in the case of a stand-alone host.

8. To start the backup operation, click Run.

Monitor the backup operationAfter a backup operation is run from the Microsoft app agent for Storage DirectSSMS plug-in, the Backup > Monitor page displays the backup script and status.

The following figure shows the backup information and status as it appears on theMonitor page.

Figure 23 ProtectPoint - Backup-Monitor page

Backing Up SQL Server with ProtectPoint

Back up SQL Server with the Microsoft app agent for Storage Direct SSMS plug-in 149

Page 150: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

For information about the success or failure of the backup operation, review the logfiles that are located in the installation folder at<Microsoft_application_agent_install_path>\DPSAPPS\MSAPPAGENT\logs. The typical location of the log files is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

Back up SQL Server with the ProtectPoint backup commandTo back up SQL Server databases, use the following command:

msagentsv.exe [<options>] <path>

In command syntax, the parameters enclosed in square brackets are optional.

Syntax for backups with a RecoverPoint appliance

Use the msagentsv.exe command with the following syntax for ProtectPoint withRecoverPoint backup operations:

msagentsv.exe -c <client_or_hostname> -l {full | incr | diff} -A "NSR_DFA_SI_DD_HOST=<Data_Domain_server>" -A "NSR_DFA_SI_DD_USER=<DDBoost_user>" -A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_name_and_path>" -A "RP_MGMT_HOST=<RecoverPoint_management_host>" -A "RP_USER=<RecoverPoint_user>" [<optional_parameters>] <path>

where:

-c <client_name>

Specifies the SQL Server hostname that contains the SQL Server instance thatyou want to back up.

-l {full | incr | diff}

Specifies the type of the backup to perform such as full (full), transaction log(incr), or differential (diff). The default value is full.

-a "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies whether the backup destination is a Data Domain server.

-a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit where you want to direct thebackup.

-a "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-A "RP_MGMT_HOST=<RecoverPoint_management_host>"

Specifies the fully qualified host name of the RecoverPoint Management host.You must register this hostname and the user name in the lockbox so that the

Backing Up SQL Server with ProtectPoint

150 Microsoft Application Agent 4.7 SQL Server User Guide

Page 151: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Microsoft application agent can retrieve the password for the user. For example,rp.my-host.com.

-A "RP_USER=<RecoverPoint_user>"

Specifies the RecoverPoint username that the hardware provider uses whiletaking the LUN level snapshots. You must register this username and thehostname in the lockbox so that the Microsoft application agent can retrieve thepassword for this user. For example,recoverpoint-user.

<backup_path>

Specifies the backup path.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To back up the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To back up specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To back up the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To back up specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Syntax for backups with a VMAX array

Use the msagentsv.exe command with the following syntax for ProtectPoint withVMAX backup operations:

msagentsv.exe -c <client_or_hostname> -l {full | incr | diff} -A "NSR_DFA_SI_DD_HOST=<Data_Domain_server>" -A "NSR_DFA_SI_DD_USER=<DDBoost_user>" -A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_name_and_path>" [<optional_parameters>] <path>

where:

-c <client_name>

Specifies the SQL Server hostname that contains the SQL Server instance thatyou want to back up.

-l {full | incr | diff}

Specifies the type of the backup to perform such as full (full), transaction log(incr), or differential (diff). The default value is full.

Backing Up SQL Server with ProtectPoint

Back up SQL Server with the ProtectPoint backup command 151

Page 152: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

-a "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies whether the backup destination is a Data Domain server.

-a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit where you want to direct thebackup.

-a "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

<backup_path>

Specifies the backup path.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To back up the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To back up specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To back up the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To back up specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Optional parameters for the msagentsv.exe command

The following list describes the optional parameters that you can use withmsagentsv.exe:

-A "NSR_DFA_SI_DD_LOCKBOX_PATH=<full_path_to_lockbox>"

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding usernames in pairs.Each pair is associated with a password that backups use.If you do not specify a value, the path defaults to lockbox path in the defaultinstallation path, which is C:\Program Files\DPSAPPS\common\lockbox.

-D <debug_level_1_through_9>

Generates detailed logs that you can use to troubleshoot backup issues. Thedefault value is 0 (zero).

-A "DELETE_DEBUG_LOG_DAYS=<days>"

Backing Up SQL Server with ProtectPoint

152 Microsoft Application Agent 4.7 SQL Server User Guide

Page 153: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies to delete debug log files that are older than the specified number ofdays. The valid range is between 1 and 32767. By default, debug logs are notdeleted. Regularly deleting debug logs prevents the log folder on the installationdrive from becoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

-A "DDVDISK_USER=<vdisk_username>"

Specifies the Data Domain vdisk user. Full credentials are retrieved from thelockbox to authenticate with the host.

-A "SYMM_SNAP_REMOTE=yes"

Specifies that the ProtectPoint backup will use the remote VMAX array whenbacking up SRDF/S protected volumes.Do not use this option if you use a RecoverPoint appliance to perform backups.

Back up SQL Server with T-SQL scriptsThe Microsoft application agent for ProtectPoint enables you to generate SQL-CLRscript that you can use to back up SQL Server.

The SQL-CLR backup command is protectpoint_run_backup.

You must provide a VARCHAR type parameters to this command. Theprotectpoint_run_backup command uses the same command options as themsagentsv.exe command. Optional parameters for the msagentsv.exe command onpage 152 provides information about the backup command prompt options for backingup SQL Server.

You can use any SQL Server standard interfaces such as, the SQL ServerManagement Studio Query window and T-SQL command prompt to run the SQL-CLRscripts.

Sample T-SQL backup script

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.protectpoint_run_backup ' -cLCP1018.MSAppAgent.com -A"NSR_DFA_SI_DD_HOST=ledmd035.lss.example.com" -A"NSR_DFA_SI_DD_USER=DD163_user" -A "NSR_DFA_SI_DEVICE_PATH=/SU_DD163"-A "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -A "RP_MGMT_HOST=lcp0246.lss.example.com" -A "RP_USER=admin"APPLICATIONS:\SqlServerWriter\LCP1018%5CMSSQLSERVER1'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Backing Up SQL Server with ProtectPoint

Back up SQL Server with T-SQL scripts 153

Page 154: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

List backups with the msagentadmin commandList backups and files with the msagentadmin command.

To list backups, run the following command:

msagentadmin list --ddhost "<name>" --ddpath "/<storage_unit_name_and_path>" --dduser "<ddboost_user>" --rphost "<RecoverPoint_hostname>" --rppath "<RecoverPoint_host_path>" --rpuser "<RecoverPoint_host_user>" [--config <file name>] [<optional_parameters>]

where:

list

Specifies an operation to list backups.You can use the -s alias for the list parameter.

--ddhost "<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

--ddpath "/<storage_unit_name_and_path>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

--dduser "<DDBoost_user>"

Specifies the username of the DD Boost user.

--rphost "<RecoverPoint_hostname>"

Specifies the fully qualified host name of the RecoverPoint Management host.You must register this hostname and the user name in the lockbox so that theMicrosoft application agent can retrieve the password for the user.Mandatory only for backups with a RecoverPoint appliance.For example: rp.my-host.com

--rppath "<RecoverPoint_host_path>"

Specifies the full path to the RecoverPoint management host.Mandatory only for backups with a RecoverPoint appliance.For example: rp.my-host.com

--rpuser "<RecoverPoint_host_user>"

Specifies the RecoverPoint user name that the hardware provider uses whiletaking the LUN level snapshots. You must register this username and thehostname in the lockbox so that the Microsoft application agent can retrieve thepassword for this user.Mandatory only for backups with a RecoverPoint appliance.For example: recoverpoint-user

--config "<configuration_file_path>"

(Optional) Specifies the full path to the configuration file.You can use the -z alias for the --config parameter.

Backing Up SQL Server with ProtectPoint

154 Microsoft Application Agent 4.7 SQL Server User Guide

Page 155: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

While it is recommended that you use the msagentadmin command withProtectPoint, the msagentadmin admnistration list command is also supportedwith ProtectPoint. List backups and save files with the msagentadmin administrationcommand on page 119 provides information on listing backups with msagentadminadmnistration.

Examples of the msagentadmin list command

Example 18 List all backups

msagentadmin list --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --client myserver.myapp.com

Example 19 List the five most recent backups

msagentadmin list --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --client myserver.myapp.com --limit 5

Example 20 List the backups that are performed after

msagentadmin list --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --client myserver.myapp.com --after '3/30/2016'

Example 21 List the backups that were performed before Tuesday

msagentadmin list --ddhost datadomain.myapp.com --ddpath "/dd/backups" --dduser "dduser" --client myserver.myapp.com --before Tuesday

Optional parameters to list backups with the msagentadmin commandThe following list describes the optional parameters for the msagentadmin listcommand.

--client <client_name>

Specifies the application server hostname that contains the server instance thatwas backed up.You can use the -c alias for the --client parameter.

--lockbox <lockbox_path>

Backing Up SQL Server with ProtectPoint

Examples of the msagentadmin list command 155

Page 156: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding user names in pairs.Each pair is associated with a password that backups use.If you do not specify a value, the path defaults to the installation path, which istypically C:\Program Files\DPSAPPS\common\lockbox.

--after <start_time>

Lists only the backups that were taken on or after the date and time, date, day, ortime.For example: 3/31/2016 15:00:00 or Tuesday.You can use the -b alias for the --after parameter.

--before <end_time>

Lists only the backups that were taken on or before the given date and time, date,day, or time. If you do not specify a value, the value defaults to the current dateand time.For example: 3/31/2016 15:00:00 or Tuesday.You can use the -e alias for the --before parameter.

--limit

Displays only the specified number of most recent backups.You can use the -l alias for the --limit parameter.

--deleteDebugLog <number_of_days>

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767. By default, debug logs are not deleted. Regularlydeleting debug logs prevents the log folder on the installation drive frombecoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

--debug <level_1_through_9>

Specifies the debug level for listing backups. The default value is 0 (zero).You can use the -D alias for the --debug parameter.

--help

Prints a brief help message.You can use the -h alias for the --help parameter.

--format {text | msagentrc | keyvalue}

Specifies the format in which the output will be displayed.text: Displays output in a general and readable format. This is the default value.msagentrc: Lists individual databases in the format that you can directly input tothe restore command, msagentrc.keyvalue: Lists the output in the keyword and value format that you can use inother programs.

Backing Up SQL Server with ProtectPoint

156 Microsoft Application Agent 4.7 SQL Server User Guide

Page 157: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Deleting backupsYou can delete backups using the msagentadmin delete command or using T-SQLscripts.

Delete backups with the msagentadmin commandThe msagentadmin delete command first lists the backups, and then deletes thebackups.

To delete backups, run the following command:

msagentadmin delete --ddhost "<name>" --ddpath "/<storage_unit_name_and_path>" --dduser "<ddboost_user>" --rphost "<name>" --rppath "<RecoverPoint_host_path>" --rpuser "<user>" [--config <file name>] [<optional_parameters>]

where:

delete

Specifies an operation to delete backups.You can use the -d alias for the delete parameter.

--ddhost "<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

--ddpath "/<storage_unit_name_and_path>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

--dduser "<DDBoost_user>"

Specifies the username of the DD Boost user.

--rphost "<RecoverPoint_hostname>"

Specifies the fully qualified host name of the RecoverPoint Management host.You must register this hostname and the user name in the lockbox so that theMicrosoft application agent can retrieve the password for the user.Mandatory only for backups with a RecoverPoint appliance.For example: rp.my-host.com

--rppath "<RecoverPoint_host_path>"

Specifies the full path to the RecoverPoint management host.Mandatory only for backups with a RecoverPoint appliance.For example: rp.my-host.com

--rpuser "<RecoverPoint_host_user>"

Specifies the RecoverPoint user name that the hardware provider uses whiletaking the LUN level snapshots. You must register this username and thehostname in the lockbox so that the Microsoft application agent can retrieve thepassword for this user.Mandatory only for backups with a RecoverPoint appliance.For example: recoverpoint-user

--config "<configuration_file_path>"

Backing Up SQL Server with ProtectPoint

Deleting backups 157

Page 158: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies the full path to the configuration file.You can use the -z alias for the --config parameter.

Note

While it is recommended that you use the msagentadmin command withProtectPoint, the msagentadmin admnistration list commands are alsosupported with ProtectPoint. List backups and save files with the msagentadminadministration command on page 119 provides information on listing backups withmsagentadmin admnistration.

Examples of the msagentadmin delete command

Example 22 Delete all the backups that were taken before 1461267170

msagentadmin delete --config c:\temp\config_pp.txt --before 1461267170

Example 23 Delete all SQL VSS level full backups

msagentadmin administration --delete --ddhost "10.31.78.56" --dduser ddvdisk1 --ddpath "/yashovmax" --client "SQLPPVMAXAUTO.quack.com"

Example 24 Delete all SQL VDI transaction log backups

msagentadmin administration --delete --ddhost "10.31.78.56" --dduser ddvdisk1 --ddpath "/yashovmax" --client "SQLPPVMAXAUTO.quack.com" -e now -n mssql

Optional parameters to delete backups with the msagentadmin command

The following table lists the optional parameters for the msagentadmin deletecommand.

--confirm

Specifies to skip the confirmation prompt when deleting backups.You can use the -Y alias for the --confirm parameter.

--client <client_name>

Specifies the application server hostname that contains the server instance thatwas backed up.You can use the -c alias for the --client parameter.

--lockbox <lockbox_path>

Backing Up SQL Server with ProtectPoint

158 Microsoft Application Agent 4.7 SQL Server User Guide

Page 159: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding user names in pairs.Each pair is associated with a password that backups use.If you do not specify a value, the path defaults to the installation path, which istypically C:\Program Files\DPSAPPS\common\lockbox.

--after <start_time>

Lists only the backups that were taken on or after the date and time, date, day, ortime.For example: 3/31/2016 15:00:00 or Tuesday.You can use the -b alias for the --after parameter.

--before <end_time>

Lists only the backups that were taken on or before the given date and time, date,day, or time. If you do not specify a value, the value defaults to the current dateand time.For example: 3/31/2016 15:00:00 or Tuesday.You can use the -e alias for the --before parameter.

--limit

Displays only the specified number of most recent backups.You can use the -l alias for the --limit parameter.

--deleteDebugLog <number_of_days>

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767. By default, debug logs are not deleted. Regularlydeleting debug logs prevents the log folder on the installation drive frombecoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

--debug <level_1_through_9>

Specifies the debug level for listing backups. The default value is 0 (zero).You can use the -D alias for the --debug parameter.

--help

Prints a brief help message.You can use the -h alias for the --help parameter.

--format {text | msagentrc | keyvalue}

Specifies the format in which the output will be displayed.text: Displays output in a general and readable format. This is the default value.msagentrc: Lists individual databases in the format that you can directly input tothe restore command, msagentrc.keyvalue: Lists the output in the keyword and value format that you can use inother programs.

Delete backups using T-SQL scriptsThe Microsoft application agent for ProtectPoint enables you to generate SQL-CLRscript that you can use to delete SQL Server backups.

The SQL-CLR backup command is protectpoint_run_delete.

Backing Up SQL Server with ProtectPoint

Delete backups using T-SQL scripts 159

Page 160: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

You can use any SQL Server standard interfaces such as, the SQL ServerManagement Studio Query window and T-SQL command prompt to run the SQL-CLRscripts.

Example 25 Sample T-SQL backup deletion script

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.protectpoint_run_delete 'delete --dduser"ddvdisk1" -a "DEVICE_PATH=yashovmax" -a "DEVICE_HOST=10.31.78.56" -a"CLIENT=SQLPPVMAXAUTO.mars.com"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Backing Up SQL Server with ProtectPoint

160 Microsoft Application Agent 4.7 SQL Server User Guide

Page 161: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

PART 3

Restoring SQL Server

This part includes the following chapters:

Chapter 6, "Restoring Data Domain Boost Backups"

Chapter 7, "Restoring ProtectPoint Backups"

Chapter 8, "Restoring Virtual Machine Backups with vProxy Engine"

Restoring SQL Server 161

Page 162: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restoring SQL Server

162 Microsoft Application Agent 4.7 SQL Server User Guide

Page 163: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 6

Restoring Data Domain Boost Backups

This chapter includes the following sections:

l Best practices to restore SQL Server with Data Domain Boost........................ 164l Restoring SQL Server databases ..................................................................... 164l Performing table-level recovery....................................................................... 185l Performing SQL Server disaster recovery........................................................ 193

Restoring Data Domain Boost Backups 163

Page 164: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Best practices to restore SQL Server with Data DomainBoost

Consider the best practices to back up SQL Server using Data Domain Boost.

Configure connection settingsData Domain Boost devices do not distinguish among Transmission Control Protocol(TCP)/Internet Protocol (IP), Fibre Channel (FC), and LAN, WAN, and MAN networktypes. Data Domain Boost devices can successfully operate where packet loss isstrictly 0% and latency is less than 20 ms.

Enable instant file initializationFor better restores, enable the instant file initialization feature on SQL Server. SQLServer's initialization procedure writes zeros to the portion of the disk that containsthe data and the log files. Enabling the instant file initialization feature does not enablezeroing of the disk for the data files.

Configure usage limits for Data Domain streamsConfigure a sufficient number of Data Domain streams for better performance ofbackups and restores. The streams control backup and restore parallelism for eachdatabase.

The Microsoft application agent requires one stream per save set that you back up orrestore. When you perform striped backups, each stripe requires one stream. Thestripes are concurrently executed for each database. Databases are sequentiallybacked up and restored. When you use stripes, the number of streams must be equalto or more than the number of stripes.

The minimum number of streams for a non-stripe environment is 1.

Configuring usage limits of Data Domain streams on page 35 provides moreinformation about streams limit, impact of exceeding the limits, and configuring theusage limits.

Restoring SQL Server databasesThe Microsoft application agent for Data Domain Boost with SQL Server supportsmultiple tools to recover databases.

You can recover databases using the Microsoft application agent SQL ServerManagement Studio plug-in (GUI), Microsoft application agent for Data Domain Boostcommands, or T-SQL scripts.

PrerequisitesLearn about prerequisites for database restores.

Prerequisites for restoring a database to a remote serverLearn how to restore a database to a remote SQL Server instance.

The Microsoft application agent supports browsing and restoring backups to a remoteserver.

Restore operations to a remote server are supported through the Data Domain BoostSQL Server Management Studio (SSMS) plug-in only.

Restoring Data Domain Boost Backups

164 Microsoft Application Agent 4.7 SQL Server User Guide

Page 165: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The Microsoft application agent and Data Domain Boost SSMS plug-in must beinstalled on the SQL Server where you will configure the restore operation. Using theSSMS plug-in, you can browse SQL backups from any server on the Data Domainstorage unit and set the target destination to the remote server where you want torestore the data.

PrerequisitesEnsure that your environment meets the following requirements:

l The Microsoft application agent must be installed on the target remote instance.

l Configure the same lockbox on the target remote instance as the lockbox on theinstance where you configure the restore operation.For example, if the instance where you are running the restore has a lockbox withDataDomain1 and StorageUnit1, you must create the same lockbox withDataDomain1 and StorageUnit1 on the target remote instance.

l The SQL Server Agent must be running on the target remote instance.If the remote instance is on the same domain as the server where you areconfiguring the restore operation, the Microsoft application agent starts the SQLServer Agent automatically during the restore operation. If the remote server is ona different domain, then you must launch the SQL Server Agent on the targetserver manually.

l You should be able to connect with the remote instance using the Connect toServer option in the SQL Server Management Studio.If you cannot connect to the remote instance, the restore will fail.

Prerequisite to restore a database in an Always On availability group

To restore a database that is part of an Always On availability group, before you startthe restore operation, you must remove the database from the Always On availabilitygroup.

Re-add the database to the availability group after the restore operation is complete.

Restore a database with the Microsoft app agent for Application Direct plug-in

The Microsoft application agent supports a user interface to perform restoreoperations through a SQL Server Management Studio (SSMS) plug-in.

The Microsoft application agent caches SQL Server restore settings. The Microsoftapplication agent automatically loads the information from the last recovery operationand populates restore settings. Caching saves time by eliminating the need to reselectthe settings each time you run a restore operation. To clear the cached settings, clickClear Cache.

The Script option is available in each page of the Database Restore tab, whichgenerates a command prompt equivalent script. You can use the script to create a .batfile to perform automation and other tasks. The following script options are available:

l CLI Scripts: To generate the command script, which you can use to run a restorefrom the command prompt.

l T-SQL Scripts: To generate a restore script in the T-SQL format.

Launching the Microsoft app agent for Application Direct SSMS plug-in

To launch the Microsoft app agent for Application Direct SSMS plug-in, perform thefollowing steps:

Restoring Data Domain Boost Backups

Restore a database with the Microsoft app agent for Application Direct plug-in 165

Page 166: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

1. From the Windows Start menu, select Microsoft SQL Server ManagementStudio.

2. In the Microsoft SQL Server Management Studio, in the Connect to Serverwindow, specify the server information and credentials, and then click Connect.

3. In the toolbar, click Microsoft app agent for Application Direct.

Note

If you have not installed SSMS, to start the Microsoft app agent for Application DirectSSMS plug-in, in the<Microsoft_application_agent_installation_folder>\DPSAPPS\MSAPPAGENT\bin folder, double-click the DDSSMSAddinApp.exe file.

Configure general restore settingsTo configure SQL restores with the Microsoft app agent for Application Direct SSMSplug-in, you must first specify general restore options on the Database Restore >General page.

Procedure

1. Open the Microsoft app agent for Application Direct window to the DatabaseRestore > General page.

The General page appears as shown in the following figure.

Figure 24 Data Domain Boost - Database Restore-General page

Restoring Data Domain Boost Backups

166 Microsoft Application Agent 4.7 SQL Server User Guide

Page 167: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The Microsoft application agent automatically loads the information from thelast recovery operation and populates all of the fields under Sources. To clearthe cached settings, click Clear Cache.

2. In the Data Domain Server field, select the Data Domain server that containsthe backup.

Note

When you want to restore a replicated backup from a secondary Data Domainserver, select the secondary server. The Data Domain user on the secondaryData Domain server must be in the same group as the primary Data Domainserver.

3. From the SQL Server host list, select the SQL Server host that is the source ofthe backup. Select the Windows cluster name in the case of federated backups.

4. From the SQL Server Instance list, select the SQL Server instance thatcontains the databases that you want to restore.

The databases located on the SQL Server instance appear in the database tablebelow the SQL Server Instance field.

5. From the database table, select either the entire SQL Server instance byselecting the check box in the header row or select only the required databasesto restore.

The save sets on the SQL Server instance that are available for recovery appearin the save sets table below the Browse time field.

By default, the restore process selects the most recent backup timestamp foreach selected database. If you have selected a single database, you can performa point-in-time (PIT) restore.

6. (Optional) To perform a point-in-time restore of a single database, perform thefollowing steps:

a. From the Browse time list, select a date and time, and click Show Versions.

All of the backups that were performed within the specified timeline appearin the save sets table.

b. From the save sets table, select the save set with the timestamp that youwant to restore.

Click < < Older or Newer > > to browse additional save sets.

Note

You cannot perform a PIT restore of multiple databases.

7. (Optional) To select the backup timestamp, perform the following steps

By default, the most recent timestamp is used.

a. Click Timeline.

The Backup Timeline dialog box appears, as shown in the following figure.

Restoring Data Domain Boost Backups

Restore a database with the Microsoft app agent for Application Direct plug-in 167

Page 168: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 25 Specifying the restore point

b. Select the backup timestamp, and then click OK.

8. Choose the location where the backup is restored to:

l To perform a recovery directly to the database, perform the following steps:

a. Select Restore to SQL Server.

b. From the Instance list, select the instance where you want to restore thedatabase.You can restore the database to the source instance or an alternateinstance.

If you are restoring the database to an instance on a remote SQL Serverthat is not listed, perform the following steps:

a. From the Instance list, select Browse for more.The Connect to Server window appears.

b.In the Connect to Server window, beside Server Name, click toload the SQL Instances on the network.

c. In the Server Name field, type the instance name or select the namefrom the list.

d. From the Authentication list, select one of the followingauthentication modes to connect to the SQL Server:

n Select Windows Authentication when you are restoring to a hostin the same domain.

n Select SQL Server Authentication when you are restoring to ahost in a different domain

e. Type the login credentials in the Login and Password fields.

f. To access the SQL Agent Service with a proxy user, under ProxyUser Of SQL Agent, type the login credentials in the User Name andPassword fields. You must type the username in the format ofDomain Name\User Name.Specify the proxy user credentials if the SQL Agent service user doesnot have sufficient permissions to perform a restore operation or ifyou want to perform restore as a different user.

If the SQL Agent Service on the target server uses a Windows Domainaccount and you select Windows Authentication, the proxy usercredentials are optional.

Restoring Data Domain Boost Backups

168 Microsoft Application Agent 4.7 SQL Server User Guide

Page 169: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

g. Click OK.

c. From the Database list, select the database where the backup will berecovered to.

l To perform a flat-file recovery, perform the following steps:

a. Select Restore backups as files.

b. In the Folder field, specify the destination for the files. The Folder field ispopulated with the default destination path.

9. To start the restore operation, click Run.

Configure files and filegroup restore settingsWhen you configure SQL restores with the Microsoft app agent for Application DirectSSMS plug-in, you change the default destination folders of the database files (.mdfand .ndf) and log files (.ldf) on the Database Restore > Files/Filegroups page.

All settings on the Files/Filegroups page are optional.

Note

Settings on the Files/Filegroups page are disabled when you configure a restore to aremote server, including changing the restore path.

Procedure

1. From the left panel, click Files/Filegroups.

The Files/Filegroups page appears as shown in the following figure.

Figure 26 Data Domain Boost - Database Restore-Files page

Restoring Data Domain Boost Backups

Restore a database with the Microsoft app agent for Application Direct plug-in 169

Page 170: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

2. Under Filegroup Options, to display the corresponding database files of thedatabases that you have selected on the General page, from the SelectFilegroup to restore list, select one of the following options:

l All Files: Displays the database files of all the selected databases.

l PRIMARY: Displays the database files of the selected databases that belongto the PRIMARY filegroup only.

l Custom filegroup name: Displays the database files of the selecteddatabases that belong to the selected custom filegroup name only. In thefigure, the custom filegroup names are sec and third.

3. Under Relocation Options, to change the destination restore paths, performone of the following action sequences:

l To change the destination paths of all of the data and log files, perform thefollowing steps:

a. Select Relocate all files to folder.

b. Click the Data file folder browse button to specify a location for the datafiles, or click inside the field to type the folder path.

c. Click the Log file folder browse button to specify a location for the logfiles, or click inside the field to type the folder path.

l To change the destination path for each individual data or log file, performone of the following actions in the files table:

n To browse for a destination path, click the browse button to the right ofeach data or log file. A window appears where you can browse and selectthe file path.

n To type a new destination path, in the Restore As column, click theappropriate cell and type a destination path. If the path does not exist, adialog box appears asking if you want to create the folder.

Note

The settings under Relocation Options are disabled if you have selected theRestore backups as files option on the General page.

4. To start the restore operation, click Run.

Configure optional database restore settingsWhen you configure SQL database restores with the Microsoft app agent forApplication Direct SSMS plug-in, you can specify optional restore settings on theDatabase Restore > Options page.

All settings on the Options page are optional.

Procedure

1. From the left panel, click Options to specify optional restore settings.

The Options page appears as shown in the following figure.

Restoring Data Domain Boost Backups

170 Microsoft Application Agent 4.7 SQL Server User Guide

Page 171: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 27 Data Domain Boost - Database Restore-Options page

2. To overwrite the existing database with the restored data, select Overwrite theexisting database (WITH REPLACE). The database is overwritten only if thedatabase name is unchanged.

If you select the Restore backups as files option, this option is disabled.

3. To specify a recovery state, select one of the following options in the Recoverystate field:

l RESTORE WITH RECOVERY: To leave the database in the ready-to-usestate by rolling back uncommitted transactions, and disable the ability torestore the most recent or additional transaction logs.

l RESTORE WITH NORECOVERY: To leave the database in the non-operational state by not rolling back uncommitted transactions, and enablethe ability to restore the most recent or additional transaction logs.

l RESTORE WITH STANDBY: To enable the ability to undo committedtransactions, save the undo actions in a standby file that enables you toreverse the restore effects, and put the database in the read-only mode. Ifyou select this option, specify the Standby file field by clicking the buttonthat is located on the right of the field, browsing for the file, and thenselecting it.

4. To perform a verify only operation, select Verify only.

A verify only operation verifies that the restore process meets the followingrequirements without performing the restore operation:

l The backup set that you want to restore is complete and all volumes arereadable

Restoring Data Domain Boost Backups

Restore a database with the Microsoft app agent for Application Direct plug-in 171

Page 172: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l Header fields, such as database page IDs are ready to write data

l Whether the checksum is proper if the backup was performed by selectingthe Perform checksum before writing to media option

l Whether the destination host has sufficient space to restore data

Note

n The Verify only option requires sufficient space on the client host tooperate.

n If you select the Restore backups as files option, this option is disabled.

5. To compress the restore contents and transport them from the Data DomainReplicator to the application host, select Data Domain Boost compressedrestore.

This option reduces the impact on network bandwidth.

6. To generate detailed logs, which you can use to troubleshoot any restore issues,specify a number between 1 and 9 in the Select a debug level field. The defaultvalue is 0 (zero).

7. To delete debug logs older than a certain number of days, in the Delete debuglogs after field, specify the number of days with a number between 1 and 32767days. The default value is 0 and does not delete any debug logs.

Regularly deleting debug logs prevents the log folder on the installation drivefrom becoming too large.

Note

This option only deletes debug logs named in the default format and located inthe logs folder at <installation_path>\MSAPPAGENT\logs.

8. To restore all the backups that were performed during or after a specified starttime and up until the time of the backup that is being restored, select Specify astart time for restore.

Specify the start date and time in the corresponding fields beside the Specify astart time for restore field. The start date and time must be before the backuptime of the save set that is being restored.

9. To specify advanced recovery options, use the Advanced options field toselect or type advanced recovery options.

Separate multiple entries with a comma, for example:BUFFERCOUNT=2, KEEP_CDC, KEEP_REPLICATIONThe following advanced recovery options are supported:

l BUFFERCOUNT=buffer_number: Specifies the total number of IO buffers thatcan be used during recovery.

l KEEP_CDC : Enables change data capture (CDC) recovery.When restoring a database with CDC enabled, the recover operation worksdifferently depending on the recovery destination.

Use the to KEEP_CDC option to:

n Recover the CDC enabled database on the same SQL instance byoverwriting an existing database.

Restoring Data Domain Boost Backups

172 Microsoft Application Agent 4.7 SQL Server User Guide

Page 173: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

In this scenario, KEEP_CDC is optional.

n Recover the CDC enabled database with a different name on the sameSQL instance.In this scenario, KEEP_CDC is required.

n Recover the CDC enabled database on a different SQL server instance.In this scenario, KEEP_CDC is required.

l KEEP_REPLICATION: Preserves the replication when recovering a publisheddatabase. This option is required if a database was replicated when thebackup was created.

10. To edit the number of save sets or versions that the Microsoft application agentcache retrieves, specify a number in the Number of entries to retrieve field.

You can specify a value of 1 through 10000. The default value is 50.

11. To perform a tail-log backup of the data before performing a restore operation,select Take tail-log backup before restore.

A tail-log backup ensures that the Microsoft application agent backs up thedata that has changed since the previous backup.

Note

l The Microsoft application agent for Data Domain Boost does not supporttail-log backups of multiple databases.

l This option is disabled if the Restore backups as files or Verify only optionsare selected.

12. To ensure exclusive access to the database during the restore operation ifmultiple connections exist, select Close existing connections to destinationdatabase.

13. To start the restore operation, click Run.

Monitor the restore operationAfter a database restore operation is run from the Microsoft app agent for ApplicationDirect SSMS plug-in, the Database Restore > Monitor page displays the restorescript and status.

The following figure shows the restore information and status as it appears on theMonitor page.

Restoring Data Domain Boost Backups

Restore a database with the Microsoft app agent for Application Direct plug-in 173

Page 174: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 28 Data Domain Boost - Database Restore-Monitor page

Note

For information about the success or failure of the restore operation, review the logfiles that are located in the installation folder. The typical location of the log files is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

Perform database restores with the Microsoft application agent for DataDomain Boost recover command

Use the ddbmsqlrc command to configure a restore of Microsoft SQL Serverdatabases from a command prompt.

Note

In the syntaxes, the options that are enclosed in square brackets, that is, [ and ] areoptional.

To perform specific backup-related and restore-related operations, the Microsoftapplication agent also supports the ddbmadmin.exe command besides themsagentadmin.exe command. However, the ddbmadmin.exe command isdeprecated.

Restoring Data Domain Boost Backups

174 Microsoft Application Agent 4.7 SQL Server User Guide

Page 175: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Syntax to restore databases on a standalone server

Run the following command to restore databases in a standalone environment:

ddbmsqlrc.exe -c <client_name> -S {normal | norecover | standby:<filepath>\undo.ldf} -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=<server_name>" -a "NSR_DFA_SI_DD_USER=<DDBoost_user>" -a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>" [<optional_parameters>] "<restore_path>"

where:

-c <client_name>

Specifies the SQL Server hostname, to which you want to restore the requireddatabases. A SQL Server host contains the backed-up stand-alone or clusteredSQL Server instances and the corresponding databases.

-S {normal | norecover | standby:<filepath>\undo.ldf}

Performs one of the following tasks:

l normal: Enables you to roll back uncommitted transactions and use thedatabase to restore the most recent or additional transaction logs.

l norecover: Disables your ability to roll back uncommitted transactions anduse the database to restore the most recent or additional transaction logs.

l standby:<filepath>\undo.ldf: Enables you to undo committed transactions,saves the undo actions in a standby file that enables you to reverse therestore effects, and puts the database in the read-only mode.

-a "NSR_DFA_SI=TRUE"

Specifies that the restore is server-independent.

-a "NSR_DFA_SI_USE_DD=TRUE"

Specifies that the backup is located on a Data Domain server

-a "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-a "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

"<restore_path>"

Specifies the path to the backup objects that you want to restore.Type the restore path in one of the following formats:

l For a default instance, type the path in one of the following formats:

Restoring Data Domain Boost Backups

Perform database restores with the Microsoft application agent for Data Domain Boost recover command 175

Page 176: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

n To restore backups of the entire instance, type MSSQL:n To restore backups of specific databases, type [MSSQL:]<database>

[[MSSQL:]<database> [...]]For example: "MSSQL:database1" "MSSQL:database2"

l For a named instance, type the path in one of the following formats:

n To restore backups of the entire instance, type MSSQL$<Instance_Name>:

n To restore backups of specific databases, type MSSQL$<Instance_Name>:<database> [...]

For example: "MSSQL$SqlInst1:database1" "MSSQL$SqlInst1:database2"

Example 26 SQL stand-alone restore command

ddbmsqlrc.exe -c sqlx86.adesc.com -t "Monday, November 11, 2013 1:05:47 PM" -S normal -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.77.27" -a "NSR_DFA_SI_DD_USER=arti1" -a "NSR_DFA_SI_DEVICE_PATH=/artrep2" "MSSQL$SQL2K8:testddr1"

Syntax to restore databases in an Always On availability group

Run the following command to restore databases in an Always On availability groupenvironment:

ddbmsqlrc.exe -c <cluster_name> -A <virtual_server> -S {normal | norecover | standby:<filepath>\undo.ldf} -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=<server_name>" -a "NSR_DFA_SI_DD_USER=<DDBoost_user>" -a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>" [<optional_parameters>] "<restore_path>"

where:

-c <client_name>

Specifies the Windows cluster name that you want to back up.To perform a redirected restore, specify a SQL Server host that is not the currenthost.

-A <virtual_server>

Specifies the SQL virtual server FQDN to restore the databases from the SQLclustered instance.

-S {normal | norecover | standby:<filepath>\undo.ldf}

Performs one of the following tasks:

l normal: Enables you to roll back uncommitted transactions and use thedatabase to restore the most recent or additional transaction logs.

l norecover: Disables your ability to roll back uncommitted transactions anduse the database to restore the most recent or additional transaction logs.

Restoring Data Domain Boost Backups

176 Microsoft Application Agent 4.7 SQL Server User Guide

Page 177: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l standby:<filepath>\undo.ldf: Enables you to undo committed transactions,saves the undo actions in a standby file that enables you to reverse therestore effects, and puts the database in the read-only mode.

-a "NSR_DFA_SI=TRUE"

Specifies that the restore is server-independent.

-a "NSR_DFA_SI_USE_DD=TRUE"

Specifies that the backup is located on a Data Domain server.

-a "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-a "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

"<restore_path>"

Specifies the path to the backup objects that you want to restore.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To restore backups of the entire instance, type MSSQL#<aag_name>:n To restore backups of specific databases, type

[MSSQL#<aag_name>:]<database>[[MSSQL#<aag_name>:]<database> [...]]

For example: "MSSQL#aag1:database1" "MSSQL#aag1:database2"l For a named instance, type the path in one of the following formats:

n To restore backups of the entire instance, type MSSQL$<Instance_Name>#<aag_name>:

n To restore backups of specific databases, type MSSQL$<Instance_Name>#<aag_name>:<database> [...]

For example: "MSSQL$SqlInst1#sql2012-aag3:database1" "MSSQL$SqlInst1#sql2012-aag3:database2"

Example 27 SQL Always On availability group restore command

ddbmsqlrc.exe -c sqlcluster1.adesc.com -A sqlcluster1.adesc.com -t "Monday, November 11, 2013 1:05:47 PM" -S normal -a "NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.77.27" -a "NSR_DFA_SI_DD_USER=arti1" -a

Restoring Data Domain Boost Backups

Perform database restores with the Microsoft application agent for Data Domain Boost recover command 177

Page 178: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 27 SQL Always On availability group restore command (continued)

"NSR_DFA_SI_DEVICE_PATH=/artrep2" "MSSQL$SqlInst1#sql2012-aag3:database2"

Optional parameters for the ddbmsqlrc command

You can use the following optional parameters with the ddbmsqlrc command.

-a "NSR_DFA_SI_DD_LOCKBOX_PATH=<full_path_to_lockbox>"

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding usernames in pairs.Each pair is associated with a password that backups use. If you do not specify avalue, the path defaults to the installation path, which is typically C:\ProgramFiles\DPSAPPS\common\lockbox.

-t "<backup_time_stamp>"

Specifies the backup time stamp that you want to restore.

-a "NSR_ENABLE_FC={TRUE | FALSE}"

Enables database restoration to the Data Domain server through Fibre Channel.The default value is FALSE.

-a "NSR_FC_HOSTNAME=<Data_Domain_fibre_channel_server_name>"

Specifies the hostname of the Fibre Channel.

-a "FLAT_FILE_RECOVERY={TRUE | FALSE}"

Performs a flat file restore to files, that is, restores a save set that has a fullbackup and multiple transaction log and differential backups to files.To know the order in which multiple transaction log backup files are restored, usethe save times that are present in the filenames.

The default value is FALSE.

-a "FLAT_FILE_RECOVERY_DIR=<folder_path>"

Specifies the folder, in which the flat file restore files are generated.You can see the generated files in the <flat_file_recovery_folder>\<client_name>\<sql_instance_name> location.

-a "DDBOOST_COMPRESSED_RESTORE={TRUE | FALSE}"

Compresses the restore contents and transports them from the Data DomainReplicator to the application host. This option saves network bandwidth.The default value is FALSE.

-a "RESTORE_START_TIME=<start_date_and_time>"

Restores all the backups that were performed at or after a specified backup time(start date and time) and up to the backup time of the selected save set, that is,-t <Last_Backup_Time_Stamp>.Specify the start date and time in the <mm>/<dd>/<yyyy> <hr>:<mins>:<secs>{AM | PM} format.

The start date and time must not be after the backup time of the selected saveset, that is, -t <Last_Backup_Time_Stamp>.

Restoring Data Domain Boost Backups

178 Microsoft Application Agent 4.7 SQL Server User Guide

Page 179: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

-a "RESTORE_TO_SOURCE_PATH=TRUE"

Ensures that the backup is restored to the original source path by default. The -a"RESTORE_TO_SOURCE_PATH=TRUE" option is overridden if the -C or -Hrelocation options are used.

-a "CLOSE_SQL_CONNECTIONS={TRUE | FALSE}”

Specifies whether to enable exclusive access to the target database by changingthe database to single user mode during the restore operation to ensure asuccessful recovery.

-$ <instance>

Specifies the target SQL Server instance that contains the target databases thatyou want to restore. The default value is the instance where the backup wastaken.Type the value in one of the following formats:

l For the default instance, type MSSQLl For a named instance, type MSSQL$<instance_name>

-d <destination_database>

Specifies the target database, to which you want to restore the backup.Type the value in one of the following formats:

l <destination_database_name>

l MSSQL:<destination_database_name>

l MSSQL$<instance_name>:<destination_database_name>

-C file=path,file2=path2,...

Relocates the database files (.mdf, .ndf, and .ldf) to a different folder.You cannot use the -C parameter and the -H parameter in the same operation.

-H " '<source_path>';'<destination_path>'"

Relocates file paths and all files contained in a path to a different location during arestore operation.The -H command option can be used to relocate multiple file paths in the samecommand line.

The -H option is supported on standard and redirected restores, which includesthe following:

l Normal restore—Same server and same instance.

l Different instance restore—Same server and different instance.

l Restore to different database file.

l Different server restore.

To relocate individual files, see the table entry for the -C option.

You cannot use the -C parameter and the -H parameter in the same operation.

-f

Overwrites the existing database with the current database that you restore if thenames of both the databases are same.

-q

Restoring Data Domain Boost Backups

Perform database restores with the Microsoft application agent for Data Domain Boost recover command 179

Page 180: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Displays ddbmsqlsv messages in the quiet mode, that is, the option displayssummary information and error messages only.

-k

Specifies to perform a checksum before restoring the data.

-u

Specifies to perform a checksum before the restore operation but to proceedwith the operation even in the case of errors.

-D <debug_level_1_through_9>

Generates detailed logs that you can use to troubleshoot backup issues. Thedefault value is 0 (zero).

-a "DELETE_DEBUG_LOG_DAYS=<days>"

Specifies to delete debug log files that are older than the specified number ofdays. The valid range is between 1 and 32767. By default, debug logs are notdeleted. Regularly deleting debug logs prevents the log folder on the installationdrive from becoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

-V

Verifies whether the restore process meets the following requirements:

l The backup set that you want to restore is complete and all volumes arereadable

l Header fields, such as database page IDs, are ready to write data

l Whether the backup was performed by using the checksum option

l Whether the destination host has sufficient space to restore data

-l incr

Restores from the last transaction log backup.When you use the -l incr option, you must restore the backup chain in order.For example, consider the following backup history:

l A full backup taken at 1:31:49PM

l A logs only backup taken at 1:32:42PM

l A logs only backup taken at 1:34:03PM

l A logs only backup taken at 1:34:50PM

To restore this backup chain, perform the following steps:

1. Type the following command to restore up to the second last transaction logbackup:

ddbmsqlrc.exe -a NSR_DFA_SI_DD_HOST=10.34.156.120 -a NSR_DFA_SI_DD_USER=ost -a NSR_DFA_SI_DEVICE_PATH=/msappstu4 -a NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox -c mars-jupiter.planets.com -a SKIP_CLIENT_RESOLUTION=TRUE -f -t 09/06/2017 01:34:03 PM -S norecover MSSQL$TESTDB02:info3

Restoring Data Domain Boost Backups

180 Microsoft Application Agent 4.7 SQL Server User Guide

Page 181: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

2. Type the following command to restore the last transaction log backup with -l incr:

ddbmsqlrc.exe -a NSR_DFA_SI_DD_HOST=10.34.156.120 -a NSR_DFA_SI_DD_USER=ost -a NSR_DFA_SI_DEVICE_PATH=/msappstu4 -a NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox -c mars-jupiter.planets.com -a SKIP_CLIENT_RESOLUTION=TRUE -f -l incr -S normal MSSQL$TESTDB02:info3

-O "<option1>, <option2>, ..."

Specifies advanced recovery options. Separate each option with a comma.The following table describes the advanced recover options that are available:

l BUFFERCOUNT=<number>: Specifies the total number of IO buffers that canbe used during a recovery operation.

l KEEP_CDC: Enables change data capture (CDC) recovery.

l KEEP_REPLICATION: Preserves the replication when you recover apublished database. This option is required if a database was replicated whenthe backup was created.

l READ_WRITE_FILEGROUPS: Recovers only the read/write (active)filegroups from the backup. This option can only be used to recover backupstaken with the READ_WRITE_FILEGROUPS option. You cannot specifyfilegroup or file level recover targets with the READ_WRITE_FILEGROUPSoption.If you are relocating multiple filegroups during the restore, you can use the -Hoption for global relocation.

After you restore a backup with the READ_WRITE_FILEGROUPS option, anyread-only filegroups in the database will enter the recovery pending state andthe rest of the filegroups will go online.

There are two different scenarios to recover cumulative incrementalREAD_WRITE_FILEGROUPS backups:

n If you have taken a full READ_WRITE_FILEGROUPS backup prior to thecumulative incremental backup, the Microsoft application agent will chaintogether the two backups in the correct order and complete the restore.

n If you have not taken a full READ_WRITE_FILEGROUPS backup but wantto use a normal full backup as the differential base for the cumulativeincremental READ_WRITE_FILEGROUPS backup, you must first restorethe full backup normally and leave the database in no recovery mode, andthen apply the READ_WRITE_FILEGROUPS differential backup with the -z option.

-z

Enables implementation of a recovery plan in independent command lineoperations. Normally the Microsoft application agent builds the recovery plan,ensuring that all the required backups are available and that they run in the properorder and with the proper options. The -z option removes safety checks.This option is used in more complex recoveries. The following example commandsuse the following backup history:

l savetime 1:00 - full

l savetime 2:00 - txnlog

Restoring Data Domain Boost Backups

Perform database restores with the Microsoft application agent for Data Domain Boost recover command 181

Page 182: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l savetime 3:00 - txnlog

To recover multiple backups and restore a database in a single command, type thefollowing command:

ddbmsqlrc ... -t "savetime 3:00" ...

This command recovers the entire recovery chain, from the first full backup tothe last logs-only backup.

To recover this recovery chain and restore a database in a series of independentcommands, type:

ddbmsqlrc ... -z -S norecovery -t "savetime 1:00" ...

ddbmsqlrc ... -z -S norecovery -t "savetime 2:00" ...

ddbmsqlrc ... -z -S normal -t "savetime 3:00" ...

These three commands recover each backup individually.

The -z option disables building the recovery plan and recovers only the specifiedbackup. This command is required for all backups except for level full backups.

Use the -S norecovery option with the -z option to prepare the database formore restores. This command is required for all except the last recoverycommand. The final command recovers the last logs-only backup and brings thedatabase online.

Note

A point-in-time restore within the final txnlog can be specified by replacing thesave time. For instance, in the previous example, you can replace 3:00 with 2:45.The database is not available for general use until after the final recoverycompletes. Any missing, incorrect, or out-of-order save times result in SQLServer reporting errors.

Perform database restores with T-SQL scriptsThe Microsoft application agent for Data Domain Boost enables you to generate aSQL-CLR script that you can use to restore SQL Server databases.

The SQL-CLR restore command, emc_run_restore uses the Microsoft applicationagent for Data Domain Boost with SQL Server restore CLI options. You must alsoprovide VARCHAR parameters to this command. To use this command, you must havea detailed knowledge of the Microsoft application agent for Data Domain Boost withSQL Server restore CLI options. Perform database restores with the Microsoftapplication agent for Data Domain Boost recover command on page 174 providesinformation about the Microsoft application agent for Data Domain Boost with SQLServer restore CLI options.

Restoring Data Domain Boost Backups

182 Microsoft Application Agent 4.7 SQL Server User Guide

Page 183: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Sample T-SQL restore script

The following SQL-CLR script is an example of a restore script:

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_restore ' -c win8sqlsp.sharepoint.com -f -t "02/03/2015 04:04:36 AM" -S normal -a "NSR_DFA_SI=TRUE" -a"NSR_DFA_SI_USE_DD=TRUE" -a "NSR_DFA_SI_DD_HOST=10.31.192.10" -a"NSR_DFA_SI_DD_USER=ost" -a "NSR_DFA_SI_DEVICE_PATH=/ddsub7" -d"MSSQL:dbtest" "MSSQL:db100"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

You can use any SQL Server standard interfaces, such as the SSMS Query windowand OSQL command prompt tool, to run the SQL-CLR scripts.

Best practices to back up SQL Server with Data Domain Boost on page 89 providesguidelines for better performance of SQL Server restores by using the Microsoftapplication agent for Data Domain Boost SQL-CLR scripts.

Performing SQL Server push restores by using the Microsoft application agent for Data DomainBoost T-SQL scripts

To restore either all databases or only the specific databases of a SQL Server instancefrom a Data Domain device to a destination host by using a different host, perform thefollowing steps.

Procedure

1. Start SSMS on a different host that you use to perform the restore.

2. Connect to the destination SQL Server instance on the destination host.

3. In the SSMS window on the different host, click New Query.

4. In the New Query window, run the T-SQL script to perform the restore.

Results

You can either generate the T-SQL script by using the Microsoft application agentSSMS plug-in GUI on the destination host and copy it to the New Query window onthe different host or write the T-SQL script in the New Query window. Restore adatabase with the Microsoft app agent for Application Direct plug-in on page 165 and Perform database restores with T-SQL scripts on page 182 provide information.

Example 28 T-SQL push restore script

Consider the following example T-SQL push restore script:

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_restore ' -c clust-sql-01.contoso.com -A clust-sql-02.contoso.com -f -t "06/22/2015 02:38:48 PM" -S normal

Restoring Data Domain Boost Backups

Perform database restores with T-SQL scripts 183

Page 184: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 28 T-SQL push restore script (continued)

-a"NSR_DFA_SI=TRUE" -a "NSR_DFA_SI_USE_DD=TRUE" -a"NSR_DFA_SI_DD_HOST=nmmddtwo.sp2010.com" -a "NSR_DFA_SI_DD_USER=ost" -a "NSR_DFA_SI_DEVICE_PATH=/ddbmav2b75" -d "MSSQL$Inst1:CLUST-SQL-02-DB02" "MSSQL$Inst1:CLUST-SQL-02-DB01"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

where:

l clust-sql-01.contoso.com is the source host from which the backup wasperformed.

l Inst1 is the destination SQL Server instance, to which you must connect from thedifferent host to perform the restore.

l CLUST-SQL-02-DB02 is the destination database.

l CLUST-SQL-02-DB01 is the database that was backed up from the source host.

Restoring SQL Always On availability groups by using T-SQL scripts

To restore databases from federated backups, use the same restore command andoptions that Perform database restores with T-SQL scripts on page 182 describes, butfor <client_name> in -c <client_name>, specify the Windows cluster name.

The options in the following example scripts indicate the modification.

Example 29 Sample T-SQL script to restore a federated backup to the source database

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_restore '-a"NSR_DFA_SI_DD_HOST=ddve-01" -a "NSR_DFA_SI_DD_USER=sqlboost" -a"NSR_DFA_SI_DEVICE_PATH=/sqlboost" -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -c sql2012clus3.brsvlab.local -C" 'testdb1_Data'='E:\sql2012_data\ database1.mdf', 'testdb1_Log'='F:\sql2012_log\database1_log.LDF'" -f -S normal -$ "MSSQL$SQ12INST4:" -d"MSSQL$SQ12INST4:database1" "MSSQL$SQ12INST4:database1"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Example 30 Sample T-SQL script to restore a federated backup to a different instance anddatabase (redirected restore)

Restoring Data Domain Boost Backups

184 Microsoft Application Agent 4.7 SQL Server User Guide

Page 185: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 30 Sample T-SQL script to restore a federated backup to a different instance anddatabase (redirected restore) (continued)

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_restore '-a"NSR_DFA_SI_DD_HOST=ddve-01" -a "NSR_DFA_SI_DD_USER=sqlboost" -a"NSR_DFA_SI_DEVICE_PATH=/sqlboost" -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -c sql2012clus3.brsvlab.local -C" 'testdb1_Data'='E:\sql2012_data\database1.mdf', 'testdb1_Log'='F:\sql2012_log\database1_log.LDF'" -f -S normal -$ "MSSQL$SQ12INST4:" -d"MSSQL$SQ12INST5:copy-database1" "MSSQL$SQ12INST4:database1"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Example 31 Sample T-SQL script to restore multiple databases of a federated backup

Note

When you restore multiple databases, do not use the -C and -d options with the T-SQL restore command. If you do, the restore fails.

USE [master]GODECLARE @returnCode intEXEC @returnCode = dbo.emc_run_restore '-a"NSR_DFA_SI_DD_HOST=ddve-01" -a "NSR_DFA_SI_DD_USER=sqlboost" -a"NSR_DFA_SI_DEVICE_PATH=/sqlboost" -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -c sql2012clus3.brsvlab.local -f -S normal -$ "MSSQL$SQ12INST4:database1" "MSSQL$SQ12INST4:database2"'IF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Performing table-level recoveryThe Microsoft application agent supports table-level recovery of SQL Server datausing the Microsoft app agent for Application Direct SSMS plug-in.

The Microsoft application agent does not support the Script option to perform tablerestores using a command prompt or T-SQL scripts.

Restoring Data Domain Boost Backups

Performing table-level recovery 185

Page 186: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table-level restore workflowBefore you begin

When you install the Microsoft application agent, you must install ItemPoint toperform table-level restores. Otherwise, the Table Restore tab does not appear in theMicrosoft app agent for Application Direct SSMS plug-in.

To perform table-level restores, you must first mount the backup images and specifymount options by using the Microsoft app agent for Application Direct SSMS plug-in.Once the backup is mounted, use ItemPoint for Microsoft SQL Server to complete thetable restore.

NOTICE

In the scenario where you have large databases where a large amount of data isrecently committed to the databases, a table restore may not be appropriate.

Committed data is represented as outstanding transactions when there are SQLServer full and incremental backups on the database. When you perform table-levelrecovery, ItemPoint must load all the outstanding transactions that are present in abackup.

To load large databases, ItemPoint requires a few hours to read the data because ofpoor Virtual File System performance. This problem occurs while ItemPoint loads thedatabase and ItemPoint may appear to stop responding while reading the backup. Ifyou observe this problem, an alternative to using SQL table-level recovery is to restorethe backup as flat files to a server where you have enough space, and then useItemPoint to restore the files on the local disk.

Launching the Microsoft app agent for Application Direct SSMS plug-inTo launch the Microsoft app agent for Application Direct SSMS plug-in, perform thefollowing steps:

1. From the Windows Start menu, select Microsoft SQL Server ManagementStudio.

2. In the Microsoft SQL Server Management Studio, in the Connect to Serverwindow, specify the server information and credentials, and then click Connect.

3. In the toolbar, click Microsoft app agent for Application Direct.

Note

If you have not installed SSMS, to start the Microsoft app agent for Application DirectSSMS plug-in, in the<Microsoft_application_agent_installation_folder>\DPSAPPS\MSAPPAGENT\bin folder, double-click the DDSSMSAddinApp.exe file.

Configure general table restore settingsTo configure SQL table-level restores with the Microsoft app agent for ApplicationDirect SSMS plug-in, you must first specify general table restore options on theDatabase Restore > General page.

Procedure

1. Open the Microsoft app agent for Application Direct window to the TableRestore > General page.

Restoring Data Domain Boost Backups

186 Microsoft Application Agent 4.7 SQL Server User Guide

Page 187: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The General page appears as shown in the following figure.

Figure 29 Data Domain Boost - Table Restore-General page

The Microsoft application agent caches SQL Server restore settings. TheMicrosoft application agent automatically loads the information from the lastrecovery operation and populates restore settings. Caching saves time byeliminating the need to reselect the settings each time you run a restoreoperation. To clear the cached settings, click Clear Cache.

2. Use the DataDomain Server field to select Data Domain server and the storageunit to restore the data. A storage unit contains the backed-up SQL Serverhosts.

Note

When you want to restore a replicated backup from a secondary Data Domainserver, select the relevant server. The Data Domain user on the secondary DataDomain server must be in the same group as the primary Data Domain server.

3. From the SQL Server host list, select the SQL Server host that contains thebackup. Select the Windows cluster name in the case of federated backups.

To perform a redirected restore, select the SQL Server host where you want torestore the backup to.

4. From the SQL Server Instance list, select the SQL Server instance thatcontains the backup.

5. From the Database list, select the database that you want to restore.

Restoring Data Domain Boost Backups

Configure general table restore settings 187

Page 188: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The corresponding save sets appear in the save sets table that is located belowthe Browse time field.

6. To select the backup that you want to restore, perform either of the followingactions:

l Select a save set in the save sets table that is located below the Browsetime field. Use the backup timestamp to choose the backup.

l To browse for a backup that is not listed, perform the following steps:

n From the Browse time list, select a date and time, and then click ShowVersions.

n From the save sets table, select the save set with the timestamp that youwant to restore.Click < < Older or Newer > > to browse additional save sets.

7. To mount the backup and proceed with the table restore, click Run.

Results

The backup is mounted and the ItemPoint for Microsoft SQL Server GUI appears.

Configure optional table restore settingsWhen you configure SQL backups with the Microsoft app agent for Application DirectSSMS plug-in, you can specify optional backup settings on the Table Restore >Options page.

All settings on the Options page are optional.

Procedure

1. From the left panel, click Options.

The Options page appears as shown in the following figure.

Restoring Data Domain Boost Backups

188 Microsoft Application Agent 4.7 SQL Server User Guide

Page 189: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 30 Data Domain Boost - Table Restore-Options page

All settings on the Options page are optional.

2. In the Mount Folder field, specify the location to mount the backup images.

Note

The location (folder or drive) to mount the backup images must be empty.Otherwise, the mount operation fails. To mount the backup as a drive, specifyan unused drive letter. The restore operation, after completion, deletes themount location.

3. In the Mount Expire list, specify the number of hours, after which the mountedbackup image must be dismounted. The default value is 8.

4. To select the level of information recorded in the logs which can be used introubleshooting recovery issues, select Select a debug level.

Levels range 0-9, with 0 representing no information and 9 representing themost amount of information. The default value is 0 (zero).

5. To change the restore parallelism setting, type or select a value in theParallelism field.

Parallelism controls the number of recovery sessions the NWFS process useswhile mounting a backup. The default and maximum value is 31.

6. To mount the backup and proceed with the table restore, click Run.

Restoring Data Domain Boost Backups

Configure optional table restore settings 189

Page 190: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Results

The backup is mounted and the ItemPoint for Microsoft SQL Server GUI appears.

Monitor the table restore mount operationAfter a table-level restore mount operation is run from the Microsoft app agent forApplication Direct SSMS plug-in, the Table Restore > Monitor page displays themount script and status.

The following figure shows the mount information and status as it appears on theMonitor page.

Figure 31 Data Domain Boost - Table Restore-Monitor page

Note

For information about the success or failure of the restore operation, review the logfiles that are located in the installation folder. The typical location of the log files is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

Restore table-level data using ItemPointAfter the backup images are mounted using the Microsft application agent SSMSplug-in, complete the table-level restore using ItemPoint for Microsoft SQL Server.

Before you begin

Configure and run the table level restore operation with the Table Restore tab in theMicrosoft application agent SSMS plug-in.

Restoring Data Domain Boost Backups

190 Microsoft Application Agent 4.7 SQL Server User Guide

Page 191: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Once the table level restore is configured and run through the Microsoft applicationagent SSMS plug-in, ItemPoint launches.

If you select Do not run ItemPoint after mounting the backup images when youconfigure the table level restore, you must manually launch ItemPoint, and then launchthe Data Wizard.

Procedure

1. On the Select Source page, select the source backup files from the mountedvolume that contains the SQL backup data as shown in the following figure, andthen click Next.

Figure 32 ItemPoint Data Wizard: select the source files

2. On the Select Target Server page, specify the details and login credentials forthe target SQL Server and database.

The following figure shows the ItemPoint Data Wizard Select Target Serverpage:

Restoring Data Domain Boost Backups

Restore table-level data using ItemPoint 191

Page 192: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 33 ItemPoint Data Wizard: select the target server

3. Click Finish.

The Data Wizard closes and ItemPoint loads the tables contained in the sourcebackup files.

4. Use ItemPoint to browse and restore the individual tables.

Note

The ItemPoint for Microsoft SQL Server User Guide provides more information onusing ItemPoint for Microsoft SQL Server to restore table-level data.

5. To dismount the mounted backup images, exit ItemPoint for Microsoft SQLServer.

Note

If you select Leave backup images mounted after ItemPoint exits or Do notrun ItemPoint after mounting the backup images when you configure themount operation, the backup image remains mounted for 4 hours. To dismountthe backup manually, use the msagentadmin command.

Restoring Data Domain Boost Backups

192 Microsoft Application Agent 4.7 SQL Server User Guide

Page 193: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Performing SQL Server disaster recoveryWhen a disaster scenario occurs, the Microsoft application agent supports disasterrecovery of data located on both a Data Domain server and Data Domain Cloud Tier.

Perform SQL Server disaster recoveryThe Microsoft application agent for Data Domain Boost supports disaster recovery.

Procedure

1. Create a target Windows host with the same name as the source host name.

2. Install a SQL Server instance with the same name as the source instance name.

3. Install the Microsoft application agent on the target Windows host.

4. Browse the backups of the source instance by selecting the appropriate storageunit.

5. Restore the system databases, such as master, model, msdb, and so on, to thetarget instance.

6. Restore all the user databases to the target instance.

Perform disaster recovery from the Data Domain Cloud TierThe Microsoft application agent provides a command line tool to complete disasterrecovery of save sets that are located in a Data Domain Cloud Tier.

After an Mtree is recovered according to the disaster recovery procedure described in Perform SQL Server disaster recovery on page 193, you must restore the backupindexes from the Data Domain Cloud Tier.

When the Microsoft application agent moves a backup to the cloud, the index files aremaintained on the active tier. A copy of the index files is created and moved to thecloud tier for long-term retention.

After an MTree is restored during a disaster recovery, all the files that resided only onthe active tier are lost and unavailable. Only the files that were moved to the cloud areavailable.

In this case, you must run msagentadmin administration with the --dr-recall or -M flag to restore the indexes.

After the indexes are recalled to the active tier, the data save sets for the same timerange are also recalled unless you type n when prompted with Continue with therecall of the found save sets [y/n]. If you choose to not recall the savesets, you can manually recall the save sets later.

Type the msagentadmin.exe administration command with the followingsyntax to recall the indexes to the active tier:

msagentadmin.exe administration --dr-recall --ddhost "<Data_Domain_server_name>" --ddpath "<name_and_path_of_storage_unit>" --dduser "<DDBoost_username>" --appID "mssql"

where:

--dr-recall

Specifies an operation to recall save sets for disaster recovery.

Restoring Data Domain Boost Backups

Performing SQL Server disaster recovery 193

Page 194: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

You can use the -M alias for the --dr-recall parameter.

--ddhost "<Data_Domain_server_name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

--ddpath "<name_and_path_of_storage_unit>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

--dduser "<DDBoost_username>"

Specifies the username of the DD Boost user.

--appID "mssql"

Specifies the application ID (namespace) to locate backups.You can use the -n alias for the --appID parameter.

Consider the following example commands to perform disaster recovery of SQLServer with data located on a Data Domain Cloud Tier device:

Example 32 Cloud tier disaster recovery recall command without a configuration file

msagentadmin administration --dr-recall --tier --after 1481104962 --before 1481105533 --appID mssql --ddhost "10.70.102.111" --ddpath "/mt1" --dduser "ost" --confirm --client SQLX86.adesc.com --debug 9

Example 33 Cloud tier disaster recovery recall command with a configuration file

msagentadmin.exe administration --dr-recall --tier --after 1481104962 --before 1481105533 --appID mssql --confirm --config c:\temp\config_pp.txt --debug 9

Restoring Data Domain Boost Backups

194 Microsoft Application Agent 4.7 SQL Server User Guide

Page 195: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 7

Restoring ProtectPoint Backups

This chapter includes the following sections:

l ProtectPoint restore workflow......................................................................... 196l Best practices to restore SQL Server with ProtectPoint.................................. 197l Restore a backup from a secondary Data Domain system.................................198l Restoring SQL Server databases..................................................................... 200l Performing rollback restores............................................................................ 215l Restore an availability group to an alternate instance...................................... 228l Restoring SQL Server table-level data............................................................. 229l Performing SQL Server disaster recovery with ProtectPoint...........................242

Restoring ProtectPoint Backups 195

Page 196: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

ProtectPoint restore workflowThe ProtectPoint restore workflow is different for RecoverPoint and VMAX.

ProtectPoint with RecoverPoint restore workflowThe ProtectPoint with RecoverPoint restore workflow includes the following steps:

1. The database administrator starts a ProtectPointrestore by running the databasenative recovery tool on the recovery host.

2. The database native recovery tool requests the Microsoft application agent torestore the required data, and provide a backup handle.

3. The Microsoft application agent looks in its own catalog to find the requestedbackup, which consists of static images on the Data Domain system.

4. The Microsoft application agent instantiates the corresponding static images thatare present on the restore LUNs, on the Data Domain system by using the vdiskservice.

5. By default, the Microsoft application agent directly mounts the restore LUNs tothe recovery host, which can be either the original application host or a differenthost, and copies the required files to the requested locations.

6. If the DBA selects a rollback restore to the original host, the Microsoft applicationagent requires the RecoverPoint cluster to perform a LUN-level restore to theoriginal source LUNs.In the case of a RecoverPoint version that is earlier than 5.0, if the DBA selects arollback restore, the Microsoft application agent requires the RecoverPoint clusterto restore the entire consistency group to the original source LUNs. If theconsistency group that you restore contains multiple LUNs, all the LUNs areoverwritten, and inaccessible during the rollback restore, even if the backed-upobjects are present on only certain LUNs.

Depending on the type of database, the database recovery tool can apply thetransaction logs to make the database consistent or to roll forward to a time after thebackup occurred. If the logs are not present on the application host, the Microsoftapplication agent restores the logs and applies them by using either a Data DomainBoost restore operation or a ProtectPoint restore operation. The type of restoredepends on how the logs were backed up.

ProtectPoint with VMAX restore workflowThe ProtectPoint with VMAX restore workflow includes the following steps:

1. The DBA starts a ProtectPoint restore by running the database native recoverytool on the recovery host.

2. The database native recovery tool requests the Microsoft application agent torestore the required data, and provide a backup handle.

3. The Microsoft application agent looks in its own catalog to find the requestedbackup, which is a static image on the Data Domain system.

4. Depending on the type of restore you are performing, one of the following actionsoccur:

l During rollback restore operations, the Microsoft application agent links thesnapshot to the VMAX LUN, which is known as the Microsoft applicationagent's restore LUN.

Restoring ProtectPoint Backups

196 Microsoft Application Agent 4.7 SQL Server User Guide

Page 197: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l During all other restore operations, the Microsoft application agent instantiatesthe corresponding static image to a Data Domain vdisk device, which is anencapsulated FAST.X LUN on a VMAX array. The FAST.X LUN is known as theMicrosoft application agent's restore LUN.

5. By default, the Microsoft application agent mounts the restore LUN back to therecovery host, and copies the required files to the requested locations.If the DBA selects a rollback restore to the original host, then the Microsoftapplication agent performs a VMAX LUN-level restore to the original sourcedevice.

If the DBA selects a rollback restore to an alternate host, then the Microsoftapplication agent performs a VMAX LUN-level restore to the alternate targetdevice.

Depending on the type of database, the database recovery tool can apply thetransaction logs to make the database consistent or to roll forward to a time after thebackup occurred. If the logs are not present on the application host, the Microsoftapplication agent restores the logs and applies them by using either a Data DomainBoost restore operation or a ProtectPoint restore operation. The type of restoredepends on how the logs were backed up.

Best practices to restore SQL Server with ProtectPointThe following are the best practices to restore SQL Server by using the Microsoftapplication agent for ProtectPoint.

Install PowerPathInstall PowerPath on the host on which you want to use multipathing.

Use supported charactersThe Microsoft application supports locale-specific date and time processing andsetting the date and time display language can be set to non-English characters.However, database and path names must be written in ASCII characters only. Namingconventions for backups with ProtectPoint on page 139 provides more information onsupported characters for database and instance names.

Stop VSS when you stop VSS ProtectPoint Hardware ProviderWhen you manually stop or restart VSS ProtectPoint Hardware Provider, you muststop or restart Volume Shadow Copy also.

Ensure SQL Server binaries are not on the restore driveWhen you perform a restore, ensure that the SQL Server binaries are not present onthe drive that is part of the restore.

Check that the destination host has sufficient spaceAlways ensure that a destination host has sufficient space to restore data.

Use a single volume on each LUN for only one type of application server dataUse a single volume on the XtremIO and VMAX LUNs.

If a LUN contains multiple volumes, the volumes that are not included in the backupbecome only crash-consistent. Also, a rollback (LUN level) restore rolls back an imageon the whole LUN. So, this setup or configuration does not support the rollbackrestore. The Microsoft application agent does not know about the excluded volumesfor the backup because there is no special safety check.

The XtremIO and VMAX LUNs must contain data for only one type of applicationserver. For example, if you are using a LUN to back up SQL Server data, the sameLUN cannot be used to protect Exchange Server data. If the LUNs contain data from

Restoring ProtectPoint Backups

Best practices to restore SQL Server with ProtectPoint 197

Page 198: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

more than one type of application server, the data that is not included in the backupbecomes only crash-consistent.

Note

Do not perform or use nested mounts on volumes because Microsoft VSS does notsupport the feature.

Configure usage limits for Data Domain streamsConfigure a sufficient number of Data Domain streams for better performance ofbackups and restores. The streams control backup and restore parallelism for eachdatabase.

The Microsoft application agent requires one stream per save set that you back up orrestore. When you perform striped backups, each stripe requires one stream. Thestripes are concurrently executed for each database. Databases are sequentiallybacked up and restored. When you use stripes, the number of streams must be equalto or more than the number of stripes.

The minimum number of streams for a non-stripe environment is 1.

Configuring usage limits of Data Domain streams on page 35 provides moreinformation about streams limit, impact of exceeding the limits, and configuring theusage limits.

Restore a backup from a secondary Data Domain systemYou must meet certain configuration requirements before you can browse and restorebackups from a secondary Data Domain system.

Before you begin

Ensure that the Data Domain collection replication pair is deleted. The Data DomainOperating System Administration Guide provides information about how to delete thecollection replication.

These configuration steps allow you to perform any type of restore operation from asecondary Data Domain system.

Procedure

1. Replicate the Mtree (storage unit) that has the Data Domain backup cataloginformation from the primary Data Domain system to the secondary DataDomain system using the Data Domain System Manager.

2. Replicate the vdisk pool from the primary Data Domain system to the secondaryData Domain system using the Data Domain System Manager.

3. Register the vdisk pool with the Data Domain vdisk user who will run the backupby typing the following command on the secondary Data Domain system:

vdisk pool register <vdisk_pool> user <ddvdisk_user>

4. Use the show list command to list the vdisk static-image information on thesecondary Data Domain system. The list should reflect the static imageinformation that is available on the primary Data Domain system.

vdisk device show list

Restoring ProtectPoint Backups

198 Microsoft Application Agent 4.7 SQL Server User Guide

Page 199: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

5. Create a pool, device group, and vdisk devices on the secondary Data Domainsystem.

The Data Domain collection replication replicates all the vdisk pools from thesource Data Domain system to the secondary Data Domain system. However,the vdisk devices in the replicated vdisk pool have no associated WWN. Hence,the Microsoft application agent cannot use them as restore devices. To preparethe restore LUNs on a secondary Data Domain system, you must create a vdiskpool, and create devices within this pool.

a. To create the vdisk pool, run the following command:

vdisk pool create <pool-name> user <user-name>

This pool will be used as the restore device pool of the Microsoft applicationagent.

b. To create a vdisk device group, run the following command:

vdisk device-group create <device-group-name> pool <pool-name>

This group will be used as the restore device group of the Microsoftapplication agent.

c. To create the vdisk devices, run the following command:

vdisk device create [count <count>] capacity <n> {MiB|GiB|TiB|PiB|sectors} pool <pool-name> device-group <device-group-name>

The devices will be used as the restore devices for the Microsoft applicationagent.

Results

After you perform these steps, you can browse and perform restores from thesecondary Data Domain system Mtree (storage unit) created in step 1.

After you finish

While configuring a restore, ensure that the Data Domain parameters point to thesecondary Data Domain system and the new vdisk devices.

The following table lists the Data Domain parameters you must set to the secondaryData Domain system, either directly in the restore command or in the configurationfile. There are no specific parameters for secondary Data Domain systems so set theseparameters as you would for a primary system.

Table 16 Restore parameters to point to a secondary DD system

Parameter Description

DDBOOST_USER=<DDBoost_username> Specifies the username of the DD Boost user configured onthe secondary Data Domain system.

Restoring ProtectPoint Backups

Restore a backup from a secondary Data Domain system 199

Page 200: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Table 16 Restore parameters to point to a secondary DD system (continued)

Parameter Description

DDVDISK_USER=<vdisk_username> Specifies the DD vdisk username that was specified duringcreation of the replication vdisk device pool on the secondaryData Domain system.

DEVICE_HOST=<Data_Domain_server_name> Specifies the hostname as the fully qualified domain name of asecondary Data Domain system.

DEVICE_PATH=<storage_unit_name> Specifies the name of the storage unit or a top-level directorywithin the storage unit on a secondary Data Domain system.

RESTORE_DEVICE_POOL=<Data_Domain_server_restore_device_pool>

Specifies the name of the DD vdisk device pool that providesthe restore LUNs on the secondary Data Domain system.

RESTORE_DEVICE_GROUP=<Data_Domain_server_restore_device_group>

Specifies the DD vdisk device group in the vdisk device poolthat contains the restore LUNs to use.

Restoring SQL Server databasesThe Microsoft application agent for ProtectPoint with SQL Server supports multipletools to recover databases.

You can recover databases using the Microsoft application agent SQL ServerManagement Studio plug-in (GUI), Microsoft application agent for ProtectPointcommands, or T-SQL scripts.

Restoring SQL Server databases using the Microsoft app agent for StorageDirect SSMS plug-in

The Script view is available in each page, which generates a command promptequivalent script, which you can use to create a .bat file to perform scheduledbackups, automation, and other tasks.

l CLI Scripts: To generate the command script, which you can use to run a restoreoperation from the command prompt.

l T-SQL Scripts: To generate a backup script in the T-SQL format. You can use theT-SQL scripts to restore SQL Server using the Microsoft application agent forProtectPoint.

Launch the Microsoft app agent for Storage Direct SSMS plug-in

To open the Microsoft app agent for Storage Direct SSMS plug-in, from the Windowsdesktop, click Start > Microsoft SQL Server Management Studio > Microsoft appagent for Storage Direct.

NOTICE

If you have not installed SSMS, to start the Microsoft app agent for Storage DirectSSMS plug-in, run the DDSSMSAddinApp.exe pp command from the<Microsoft_application_agent_install_path>\DPSAPPS\MSAPPAGENT\bin folder.

Restoring ProtectPoint Backups

200 Microsoft Application Agent 4.7 SQL Server User Guide

Page 201: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Configure general database restore settingsTo configure SQL database restores with the Microsoft app agent for Storage DirectSSMS plug-in, you must first specify general restore options on the DatabaseRestore > General page.

Before you begin

To restore a database that is part of the Always On availability group, you must firstremove the database from the Always On availability group before configuring therestore operation. After the restore is complete, add the database back to the AlwaysOn availability group.

Procedure

1. Open the Microsoft app agent for Storage Direct window to the DatabaseRestore > General page.

The General page appears as shown in the following figure.

Figure 34 ProtectPoint - Database Restore-General page

2. Click the browse button beside Data Domain Server to select the Data Domainserver and the storage unit to restore either SQL Server instance or requireddatabases.

A storage unit contains the backed up SQL Server hosts.

Restoring ProtectPoint Backups

Restoring SQL Server databases using the Microsoft app agent for Storage Direct SSMS plug-in 201

Page 202: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

In the case of a remote (secondary) Data Domain server that has replicateddatabases to restore, select the relevant server. A Data Domain user on theData Domain server must be in the same group as the primary Data Domainserver.

3. Use the SQL Server host list to select a SQL Server host to restore therequired databases.

A SQL Server host contains the backed up SQL Server instances, and thecorresponding databases.

4. Use the Start browsing from list to select a backup save time, and then clickShow Versions.

The backups that were performed within the specified save time appear in thesave sets table.

5. From the SQL Server Instance list, select the SQL Server instance thatcontains the databases that you want to restore.

A SQL Server instance contains databases and can be either stand-alone orcluster.

Note

Consider the following information:

l The target instance must reside on the same system where the restoreoperation is configured. You cannot restore the backup to an instance on aremote host.

l If you are restoring data to an alternate instance, you must restore only onedatabase per restore operation.

The corresponding databases appear in the databases table that is below theSQL Server Instance field.

6. From the databases table, select either the entire SQL Server instance byselecting the check box in the header row or only the required databases torestore.

Note

Do not select the databases that belong to multiple snapshots in the samerestore operation.

The corresponding save sets appear in the save sets table that is below thedatabases table. The restore process restores the latest backup of eachselected database.

7. Under Destination, click Timeline.

The Backup Timeline dialog box appears as shown in the following field.

Restoring ProtectPoint Backups

202 Microsoft Application Agent 4.7 SQL Server User Guide

Page 203: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 35 Specifying the restore point

8. Select the backup timeline, and then click OK.

9. Perform one of the following action sequences, depending on the restore type:

l To perform a recovery directly to a database, perform the following steps:

a. Select Restore to SQL Server.

b. From the Instance list, select the SQL Server instance that contains thetarget database.

Note

The target instance must reside on the same system where the restoreoperation is configured. You cannot restore the backup to an instance ona remote host.

c. From the Database list, select the database where the backup will berecovered to.

l To recover the database as flat-files, perform the following steps:

a. Select Restore backups as files.

b. In the Folder field, specify the destination for the files. The Folder field ispopulated with the default destination path.To perform a redirected restore, change the destination path by clickingthe browse button beside the Folder field, and specifying the requireddestination.

Note

Ensure that the destination path is not a root drive, for example, E:\.

10. To start the database restore operation, click Run.

Configure file destination settingsView and change the default destination folders of the database files that are datafiles (.mdf and .ndf) and log file (.ldf) from the Database Restore > Files page.

All settings on the Files page are optional.

NOTICE

The Relocate all files to folder option and the table on the Files page are disabled ifyou have selected the Restore backups as files option on the General page.

Restoring ProtectPoint Backups

Restoring SQL Server databases using the Microsoft app agent for Storage Direct SSMS plug-in 203

Page 204: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Procedure

1. From the left panel, click Files to perform redirected restores.

The Files page appears as shown in the following figure.

Figure 36 ProtectPoint - Database Restore-Files page

The table on the page displays the source locations of the database files.

2. To change the destination paths of all of the data and log files, perform thefollowing steps:

a. Select Relocate all files to folder.

b. Click the Data file folder browse button to specify a location for the datafiles, or click inside the field to type the folder path.

c. Click the Log file folder browse button to specify a location for the log files,or click inside the field to type the folder path.

3. To change the destination path at the file group level, perform one of thefollowing actions in the table:

l To browse for a destination path, click the browse button to the right ofeach file group.A window appears where you can browse and select the file path.

l To type a new destination path, in the Restore To column, click theappropriate cell and type a destination path.If the path does not exist, a dialog box appears asking if you want to createthe folder.

Restoring ProtectPoint Backups

204 Microsoft Application Agent 4.7 SQL Server User Guide

Page 205: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

Ensure that the destination paths are not root drives, for example, E:\.

4. To start the restore operation, click Run.

Configure optional database restore settingsWhen you configure SQL database restores with the Microsoft app agent for StorageDirect SSMS plug-in, you can specify optional restore settings on the DatabaseRestore > Options page.

All settings on the Options page are optional.

Procedure

1. From the left panel, click Options.

The Options page appears as shown in the following figure.Figure 37 Microsoft app agent for Storage Direct - Database Restore-Options page

2. In the Recovery state list, select one of the following options, as required:

Option Description

RESTORE WITHRECOVERY

To leave the database in the ready-to-use state byrolling back uncommitted transactions, and disable the

Restoring ProtectPoint Backups

Restoring SQL Server databases using the Microsoft app agent for Storage Direct SSMS plug-in 205

Page 206: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Option Description

ability to restore the latest or additional transactionlogs.

RESTORE WITHNORECOVERY

To leave the database in the non-operational state bynot rolling back uncommitted transactions, and enablethe ability to restore the latest or additionaltransaction logs.

3. To compress the restore contents and transport them from the Data DomainReplicator to the application host, select Data Domain Boost compressedrestore.

This option reduces network bandwidth.

4. To generate detailed logs, which you can use to troubleshoot the restore issues,select Select a debug level, and then specify a value of 1 through 9. Thedefault value is 0 (zero).

5. To delete debug logs older than a certain number of days, select Delete debuglogs after, and then specify the number of days with a number between 1 and32767 days. The default value is 0 and does not delete any debug logs.

Note

This option only deletes debug logs named in the default format and located inthe logs folder at <installation_path>\MSAPPAGENT\logs.

Regularly deleting debug logs prevents the log folder on the installation drivefrom becoming too large.

6. To enable advanced restore options, type or select one of the following optionsin the Advanced options list:

Option Description

KEEP_REPLICATION Preserves the replication when recovering a publisheddatabase. This option is required if a database wasreplicated when the backup was created.

KEEP_CDC Enables change data capture (CDC) recovery. Whenrestoring a database with CDC enabled, the recoveroperation works differently depending on the recoverydestination. Use the to KEEP_CDC option to:

l Recover the CDC enabled database with a differentname on the same SQL instance.In this scenario, KEEP_CDC is required.

l Recover the CDC enabled database on a differentSQL server instance.In this scenario, KEEP_CDC is required.

l Recover the CDC enabled database on the sameSQL instance by overwriting an existing database.In this scenario, KEEP_CDC is optional.

Separate multiple advanced options with a comma.

Restoring ProtectPoint Backups

206 Microsoft Application Agent 4.7 SQL Server User Guide

Page 207: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

7. To limit the backup history of the databases on the General page to a setnumber of days, type or select a number in the Days of backup history field.

The default value is 30.

8. To use the client name that is provided as-is without converting it to the fullyqualified domain name (FQDN), select Exclude client name resolution.

Use this option to restore backups taken with Microsoft application agentversion 4.5 or earlier that use the short name as the client name.

9. To perform a transaction log backup of the data before performing restore,select Take tail-log backup before restore.

The tail-log backup ensures that the Microsoft application agent backs up thedata that has changed from the previous backup.

Note

The restore operation does not restore the logs of the previous tail-log backup.This option is disabled if you have selected Restore backups as files on theGeneral page.

The Microsoft application agent does not support the tail-log backup of multipledatabases.

10. Under Restore Method, specify the details for the device that you want therestore operation to use:

l For VMAX environments, to restore with a FAST.X restore device, performthe following steps:

a. From the Restore with menu, select FAST.X (VMAX only).

b. In the Storage Group field, type the name of the VMAX FAST.X restorestorage group where the restore FTS devices are assigned to the host.The default value is NsrSnapSG.

c. In the Static Image Pool field, type the name of the static image poolwhen restoring from a secondary Data Domain.This field is populated by default for restores from the primary DataDomain.

d. If you want to restore from a backup older than the latest backup, selectIgnore local snapshots.By default, the restore operation uses the local snapshot copy on theVMAX array, when available. The local snapshot is the latest availablebackup. To restore from any backup older than the latest snapshot copy,you must select this option.

l To restore with a Data Domain vdisk device, perform the following steps:

a. From the Restore with menu, select Data Domain vdisk.

b. In the Device Pool field, type the name of the vdisk restore device poolthat contains the vdisk devices that you want use to perform the restoreoperation.Ensure that the device pool belongs to the Data Domain server that youhave selected on the General page.

c. In the Device Group field, type the name of the restore device groupthat contains the vdisk devices and the restore device pool that you wantto use to perform the restore operation.

Restoring ProtectPoint Backups

Restoring SQL Server databases using the Microsoft app agent for Storage Direct SSMS plug-in 207

Page 208: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Ensure that device group belongs to the Data Domain server that youhave selected on the General page.

Note

To mount VMAX static images and restore the data directly from DataDomain, ensure that the vdisk devices are masked to the application host.The Data Domain documentation provides information.

d. In the Static Image Pool field, type the name of the static image pool.

11. To start the restore operation, click Run.

Monitor the restore operationAfter a database restore operation is run from the Microsoft app agent for StorageDirect SSMS plug-in, the Database Restore > Monitor page displays the restorescript and status.

The following figure shows the restore information and status as it appears on theMonitor page.

Figure 38 ProtectPoint - Database Restore-Monitor page

Restoring ProtectPoint Backups

208 Microsoft Application Agent 4.7 SQL Server User Guide

Page 209: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

For information about the success or failure of the restore operation, review the logfiles that are located in the installation folder at<Microsoft_application_agent_install_path>\DPSAPPS\MSAPPAGENT\logs. The typical location of the log files is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

Restore SQL Server databases using the ProtectPoint restore commandTo restore SQL Server databases, run the following command:

msagentrc.exe -A "NSR_RESTORE_TYPE=regular [<options>] <path>

In command syntax, the parameters enclosed in square brackets are optional.

Syntax for database restores with RecoverPoint

Use the msagentrc.exe command with the following syntax for ProtectPoint withRecoverPoint restore operations:

msagentrc.exe -c <client_or_hostname> A "RP_MGMT_HOST=<RecoverPoint_hostname>" -A "NSR_DFA_SI_DD_HOST=<server_name>" -A "NSR_DFA_SI_DD_HOST=<Data_Domain_server>" -A "NSR_DFA_SI_DD_USER=<DDBoost_user>" -A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_name_and_path>" -A "NSR_RESTORE_TYPE=regular -A "RESTORE_DEVICE_GROUP=<restore_device_group>" -A "RESTORE_DEVICE_POOL=<restore_device_pool>" [<optional_parameters>] -I --t <save_time> <restore_path>

where:

-c <client_or_hostname>

Specifies the client name that was used for the backup.

-A "RP_MGMT_HOST=<RecoverPoint_hostname>"

Specifies the name of the RecoverPoint management host.

-A "RP_USER=<RecoverPoint_user>"

Specifies the username of the RecoverPoint management host.Full credentials are retrieved from the lockbox to authenticate with the host.

-A "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-A "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.

Restoring ProtectPoint Backups

Restore SQL Server databases using the ProtectPoint restore command 209

Page 210: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

-A "NSR_RESTORE_TYPE=regular

Specifies to perform a database level restore.

-A "RESTORE_DEVICE_GROUP=<restore_device_group>"

Specifies the restore device pool that contains the vdisk devices that you use toperform the restore operation. Ensure that the Data Domain server that you havespecified belongs to this device pool.

-A "RESTORE_DEVICE_POOL=<restore_device_pool>"

Specifies the restore device group that contains the vdisk devices and the restoredevice pool that you use to perform the restore operation. Ensure that the DataDomain server that you have specified belongs to this device group.

-t <save_time>

Specifies the save time of the backup. Specify this parameter along with therestore path for each database in the restore operation. The application pausesfor you to input this option line by line. Press Enter to move to the next line. Ablank line indicates completion of the list.

<restore_path>

Specifies the path to the objects that you want to restore.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Example 34 Restore command with RecoverPoint

Restoring ProtectPoint Backups

210 Microsoft Application Agent 4.7 SQL Server User Guide

Page 211: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 34 Restore command with RecoverPoint (continued)

msagentrc.exe -A "RESTORE_DEVICE_POOL=ledmf112_restore_pool" -A "RESTORE_DEVICE_GROUP=DG_ledmf112_restore" -c ledmf158.msapp.com -A "NSR_DFA_SI_DD_HOST=ledmd035.lss.example.com" -A "NSR_DFA_SI_DD_USER=DD163_user" -A "NSR_DFA_SI_DEVICE_PATH=/SU_DD163" -A "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -A "RP_MGMT_HOST=ledmd163.lss.example.com" -A "RP_USER=admin" -A NSR_RESTORE_TYPE=regular -I --t 1462787749 -A ADDITIONAL_RESTORES=no -A RENAME_TO=dbtest5 APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3\-t 1462787748 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest2\<return>-t 1462787747 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest1\

Syntax for database restores with VMAX

Use the msagentrc.exe command with the following syntax for ProtectPoint withVMAX restore operations:

msagentrc.exe -c <client_or_hostname> -A "NSR_DFA_SI_DD_HOST=<Data_Domain_server>" -A "NSR_DFA_SI_DD_USER=<DDBoost_user>" -A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_name_and_path>" -A "NSR_RESTORE_TYPE=regular -A "VMAX_FASTX_RESTORE_SG=<restore_storage_group>" -A "RESTORE_DEVICE_GROUP=<restore_device_group>" -A "RESTORE_DEVICE_POOL=<restore_device_pool>" [<optional_parameters>] -I --t <save_time> <restore_path>

where:

-c <client_or_hostname>

Specifies the client name that was used for the backup.

-A "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-A "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

-A "NSR_RESTORE_TYPE=regular

Specifies to perform a database level restore.

"VMAX_FASTX_RESTORE_SG=<restore_storage_group>"

Restoring ProtectPoint Backups

Restore SQL Server databases using the ProtectPoint restore command 211

Page 212: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies the restore storage group name of the VMAX array that your setup usesfor ProtectPoint for VMAX. The default value is NsrSnapSG.

-A "RESTORE_DEVICE_GROUP=<restore_device_group>"

Specifies the restore device pool that contains the vdisk devices that you use toperform the restore operation. Ensure that the Data Domain server that you havespecified belongs to this device pool.

-A "RESTORE_DEVICE_POOL=<restore_device_pool>"

Specifies the restore device group that contains the vdisk devices and the restoredevice pool that you use to perform the restore operation. Ensure that the DataDomain server that you have specified belongs to this device group.

-t <save_time>

Specifies the save time of the backup. Specify this parameter along with therestore path for each database in the restore operation. The application pausesfor you to input this option line by line. Press Enter to move to the next line. Ablank line indicates completion of the list.

<restore_path>

Specifies the path to the objects that you want to restore.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Example 35 VMAX restore command example

ddbmsqlrc.exe -c NMMDA241.heroines.local -A "NSR_RESTORE_TYPE=regular -a "NSR_DFA_SI_DD_HOST=10.31.77.27" -a "NSR_DFA_SI_DD_USER=ost" -a "NSR_DFA_SI_DEVICE_PATH=/heroines" "MSSQL$SqlInst1:database1" "MSSQL$SqlInst1:database2" "VMAX_FASTX_RESTORE_SG=restoregroup1" -A "RESTORE_DEVICE_GROUP=group1" -A "RESTORE_DEVICE_POOL=pool1" -I --t 1462787749 -A ADDITIONAL_RESTORES=no -A RENAME_TO=dbtest5 -A "RELOCATE_TO='E:\MSSQL12.INST1\MSSQL\DATA\Customers.mdf'='F:

Restoring ProtectPoint Backups

212 Microsoft Application Agent 4.7 SQL Server User Guide

Page 213: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 35 VMAX restore command example (continued)

\NewData', 'E:\MSSQL12.INST1\MSSQL\DATA\Customers_log.ldf'='G:\NewLogs' APPLICATIONS:\SqlServerWriter\LEDMF158%5CINST1\dbtest3\-t 1462787748 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\LEDMF158%5CINST1\dbtest2\-t 1462787747 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\LEDMF158%5CINST1\dbtest1\

Optional parameters for database-level restores with the msagentrc.exe command

You can use the following optional parameters with the msagentrc.exe command.

-A "NSR_DFA_SI_DD_LOCKBOX_PATH=<full_path_to_lockbox>"

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding usernames in pairs.Each pair is associated with a password that backups use. If you do not specify avalue, the path defaults to the installation path, which is typically C:\ProgramFiles\DPSAPPS\common\lockbox.

-A "ADDITIONAL_RESTORES={yes | no}"

Specifying yes disables the ability to roll back uncommitted transactions anduses the database to restore the latest or additional transaction logs. The defaultvalue is no.

-A "RENAME_TO=<new_database_name>"

Specifies the new name for the destination database. The selected database willbe restored to the new database. The new name of the database must be a validSQL database name. If the destination contains a database with the same nameas the database that you have specified, the restore operation overwrites theexisting database.The database files that are data files (.mdf and .ndf) and log file (.ldf) will berestored to their source locations only. If the source database exists, its files canbe in use. So, to avoid conflicts for using a new database name, use the -ARELOCATE_TO option along with the -A RENAME_TO option.

-A "INSTANCE_TO=<hostname>\<instance>"

Performs a redirected restore operation to a SQL Server instance that is differentfrom the source instance where the backup was taken.

Note

The target instance must reside on the same system where the restore operationis configured. You cannot restore the backup to an instance on a remote host.

-A "RELOCATE_TO='<source_file-1>'='destination_folder-1','<source_file-2>'='destination_folder-2',[...]"

Performs redirected restores of the database files that are data files (.mdfand .ndf) and log file (.ldf). You can rename or change only the destinationfolders, but not the filenames.Ensure that the destination paths are not root drives, for example, E:\.

-A "NSR_SQL_RECOVER_MODE=<alternate_location_path>"

Restoring ProtectPoint Backups

Restore SQL Server databases using the ProtectPoint restore command 213

Page 214: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Performs a redirected restore to the specified path.

-A "NSR_SQL_TARGET_DIR=<destination_folder_path>"

Specifies the destination path, to which you want to copy the restored files. Youcan then manually either move the files to the required folder or attach the filesto a SQL Server instance.Ensure that the destination path is not a root drive, for example, E:\.

-D <debug_level>

Generates detailed logs that you can use to troubleshoot the restore issues. Thesupported debug levels are 1 through 9.

-A "DELETE_DEBUG_LOG_DAYS=<number_of_days>"

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767. By default, debug logs are not deleted. Regularlydeleting debug logs prevents the log folder on the installation drive frombecoming too large.

Note

This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

Restore SQL Server databases with T-SQL scriptsThe Microsoft application agent for ProtectPoint enables you to generate SQL-CLRscript that you can use to restore SQL Server databases.

The SQL-CLR restore command is protectpoint_run_restore.

You must provide a VARCHAR type parameters to this command. Theprotectpoint_run_restore command uses the same command options as themsagentrc.exe command. Optional parameters for database-level restores with themsagentrc.exe command on page 213 provides information about the restorecommand options.

You can use any SQL Server standard interfaces such as, the SQL ServerManagement Studio Query window and T-SQL command prompt to run the SQL-CLRscripts.

Sample T-SQL restore script

USE [master]GODECLARE @returnCode intDECLARE @stdin NVARCHAR(MAX)SET @stdin = '-t 1465210308 -A ADDITIONAL_RESTORES=no -ARENAME_TO=dbtest3 -A "RELOCATE_TO='E:\MSSQL12.MSSQLSERVER00001\MSSQL\DATA\Customers.mdf'='F:\NewData', 'E:\MSSQL12.MSSQLSERVER00001\MSSQL\DATA\Customers_log.ldf'='G:\NewLogs' "APPLICATIONS:\SqlServerWriter\LEDMF176%5CMSSQLSERVER00001\TestDB1\"' + CHAR(10) + '-t 1465210307 -AADDITIONAL_RESTORES=no "APPLICATIONS:\SqlServerWriter\LEDMF176%5CMSSQLSERVER00001\dbtest2\"' + CHAR(10) + '-t 1465210306 -AADDITIONAL_RESTORES=no "APPLICATIONS:\SqlServerWriter\LEDMF176%5CMSSQLSERVER00001\dbtest1\"' + CHAR(10);

Restoring ProtectPoint Backups

214 Microsoft Application Agent 4.7 SQL Server User Guide

Page 215: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

EXEC @returnCode = dbo.protectpoint_run_restore ' -A"RESTORE_DEVICE_POOL=ledmf098_restore_pool_1" -A"RESTORE_DEVICE_GROUP=ledmf098_DG2" -c ledmf176.msapp.com -A"NSR_DFA_SI_DD_HOST=ledmd035.lss.example.com" -A"NSR_DFA_SI_DD_USER=DD163_user" -A "NSR_DFA_SI_DEVICE_PATH=/SU_DD163"-A "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -A NSR_RESTORE_TYPE=regular -I -', @stdinIF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Performing rollback restoresThe Microsoft application agent for ProtectPoint with SQL Server supports multipletools to roll back volumes.

You can roll back volumes using the Microsoft application agent SQL ServerManagement Studio plug-in (GUI), Microsoft application agent for ProtectPointcommands, or T-SQL scripts.

Considerations for rollback restoresConsider the following information before you perform a volume restore:

l You can restore volumes only to the local host.

l The volumes that you selected for the restore must belong to the sameconsistency group. You can resynchronize the restored volumes only with thesource volumes that were backed up.

l If you delete bookmarks or static images on RecoverPoint or Data Domain withoutusing the Microsoft application agent, the deleted backups still appear on theVolume Restore tab of the Microsoft app agent for Storage Direct plug-in, butthe restore operations fail and a relevant message appears.

l In the case of VMAX, if you have selected the latest version of a save set orbackup to restore, the Microsoft application agent restores the save set or backupfrom VMAX. If you have selected any version other than the latest version of asave set or backup to restore, the Microsoft application agent restores the saveset or backup from Data Domain.

l If you are relocating a volume to an alternate VMAX LUN, review the informationin Relocating volumes to an alternate LUN during a VMAX rollback restore on page215 before configuring the restore operation.

Relocating volumes to an alternate LUN during a VMAX rollback restoreThe Microsoft application agent supports restoring a volume to an alternate VMAXLUN.

You can restore a volume to an alternate LUN that is part of the original VMAX arrayor part of a different VMAX array.

When you restore a volume to an alternate location, the destination volume must havean identical file structure to the source volume, including the file system and directorypath, names of the files, and location of the files across the volumes.

Restoring the backup to a volume that was deleted and re-created on the same LUN isconsidered an alternate LUN restore and the same path requirements apply.

Restoring ProtectPoint Backups

Performing rollback restores 215

Page 216: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

Relocating a volume to an alternate VMAX LUN is not supported in an environmentwhere application data resides on multiple VMAX storage arrays on the same site. Youmust restore the backup using the original source VMAX LUN.

The following additional requirements apply when relocating a volume to an alternateLUN on a VMAX array that is different from the original array:

l The Data Domain restore devices must already be encapsulated on the alternateVMAX array.

l The alternate VMAX array must be connected to the original Data Domain system,and you must restore the backup from Data Domain.

Perform rollback restores with the Microsoft app agent for Storage DirectSSMS plug-in

The Script view is available in each page, which generates a command promptequivalent script, which you can use to create a .bat file to perform scheduledbackups, automation, and other tasks.

l CLI Scripts: To generate the command script, which you can use to run a restoreoperation from the command prompt.

l T-SQL Scripts: To generate a backup script in the T-SQL format. You can use theT-SQL scripts to restore SQL Server by using the Microsoft application agent forProtectPoint.

Launch the Microsoft app agent for Storage Direct SSMS plug-in

To open the Microsoft app agent for Storage Direct SSMS plug-in, from the Windowsdesktop, click Start > Microsoft SQL Server Management Studio > Microsoft appagent for Storage Direct.

NOTICE

If you have not installed SSMS, to start the Microsoft app agent for Storage DirectSSMS plug-in, run the DDSSMSAddinApp.exe pp command from the<Microsoft_application_agent_install_path>\DPSAPPS\MSAPPAGENT\bin folder.

Configure general volume restore settingsTo configure SQL volume restores with the Microsoft app agent for Storage DirectSSMS plug-in, you must first specify general restore options on the Volume Restore >General page.

Procedure

1. Open the Microsoft app agent for Storage Direct plug-in to the VolumeRestore > General page.

The Volume Restore page appears as shown in the following figure.

Restoring ProtectPoint Backups

216 Microsoft Application Agent 4.7 SQL Server User Guide

Page 217: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 39 ProtectPoint - Volume Restore page

2. Click the Data Domain Server browse button to select the Data Domain serverand the storage unit to restore either SQL Server instance or requireddatabases.

A storage unit contains the backed up SQL Server hosts.

Note

In the case of a remote (secondary) Data Domain server that has replicateddatabases to restore, select the relevant server. A Data Domain user on thesecondary Data Domain server must be in the same group as the primary DataDomain server.

3. Use the SQL Server host list to select a SQL Server host to restore therequired databases.

A SQL Server host contains the backed up stand-alone SQL Server instancesand the corresponding databases.

4. Use the Start browsing from list to select a backup save time, and then clickShow Versions.

The backups that were performed within the specified save time appear in thesave sets table.

5. Start browsing from: Specify a backup save time and click Show Versions.

All the backups that were performed within the specified save time appear inthe save sets table.

Restoring ProtectPoint Backups

Perform rollback restores with the Microsoft app agent for Storage Direct SSMS plug-in 217

Page 218: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

6. Select the appropriate SQL Server instance in the save sets table.

The selected instance and databases contained in that instance appear in thedatabases table.

7. In the databases table, perform the following steps:

a. Select the databases that you want to include in the volume restore.

Note

Consider the following information for RecoverPoint:

l For RecoverPoint 5.0 or later, the Microsoft application agent supportspartial (subset of databases) restore of a consistency group. From thedatabases table, you can select the required databases to restore.

l For RecoverPoint version earlier than 5.0, the checkboxes in thedatabases table are read-only because the Microsoft application agentdoes not support partial restore of a consistency group.

b. In the Restore To column, use the drop-down list to select location whereyou want to recover the databases.

The original source location is selected by default but you can restore thebackup to an alternate location.

Note

The target instance must reside on the same system where the restoreoperation is configured. You cannot restore the backup to an instance on aremote host.

8. To start the volume restore, click Run.

View files in the backupTo view the files that are in the backup, open the Volume Restore > Files page.

Procedure

1. From the left panel, click Files.

The Files page appears as shown in the following figure.

Restoring ProtectPoint Backups

218 Microsoft Application Agent 4.7 SQL Server User Guide

Page 219: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 40 ProtectPoint - Volume Restore-Files page

2. Review the information in the files table about what files are included in thebackup and the database and volume where each file resides.

3. To start the restore operation, click Run.

Configure volume restore optionsWhen you configure SQL volume restores with the Microsoft app agent for StorageDirect SSMS plug-in, you can specify additional restore options on the VolumeRestore > Options page.

Procedure

1. From the left panel, click Options.

The Options page appears as shown in the following figure.

Restoring ProtectPoint Backups

Perform rollback restores with the Microsoft app agent for Storage Direct SSMS plug-in 219

Page 220: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 41 ProtectPoint - Volume Restore-Options page

2. For RecoverPoint, to select a RecoverPoint appliance to restore the SQLServer instance, click the browse button beside the Management Server field,and then browse and select the RecoverPoint appliance.

3. For VMAX, in the Storage Group field, type the restore storage group name ofthe VMAX array where the restore FTS devices are assigned to the host.

The default value is NsrSnapSG.

4. For VMAX, to restore from Data Domain even if the snapshot is available on thelocal VMAX array, select Restore from Data Domain even if there is a localVMAX snapshot available.

Note

To mount the static image, and restore data directly from Data Domain, ensurethat you have masked the FTS restore devices to the application host. TheVMAX documentation provides information about how to mask the FTS devices.

5. To generate detailed logs, which you can use to troubleshoot the restore issues,select Select a debug level. Specify a value of 1 through 9. The default value is0 (zero).

6. To delete debug logs older than a certain number of days, specify the number ofdays with a number between 1 and 32767 days in the Delete debug logs afterfield. The default value is 0 and does not delete any debug logs.

Restoring ProtectPoint Backups

220 Microsoft Application Agent 4.7 SQL Server User Guide

Page 221: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

This option only deletes debug logs named in the default format and located inthe logs folder at <install_path>\MSAPPAGENT\logs.

Regularly deleting debug logs prevents the log folder on the installation drivefrom becoming too large.

7. To leave the database in an operational state by rolling back uncommittedtransactions, select Restore with NORECOVERY

Additional transaction logs cannot be restored.

8. To enable a confirmation message before the volume is restored, select Requireconfirmation before restoring volumes.

The following prompt appears when you start the restore operation.

Performing a volume restore will completely replace the contents of the affected volumes with their backed up versions. Do you want to proceed?

9. To start the volume restore, click Run.

Monitor the volume restore operationAfter a volume restore operation is run from the Microsoft app agent for StorageDirect SSMS plug-in, the Volume Restore > Monitor page displays the restore scriptand status.

The following figure shows the restore information and status as it appears on theMonitor page.

Restoring ProtectPoint Backups

Perform rollback restores with the Microsoft app agent for Storage Direct SSMS plug-in 221

Page 222: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 42 ProtectPoint - Volume Restore-Monitor page

If the restore succeeds, the Restore completed message appears. Otherwise, theRestore failed message appears.

Note

Review the log files that are available in the<Microsoft_application_agent_for_SQL_Server_installed_folder>\DPSAPPS\MSAPPAGENT\logs folder for information about the success or failure ofthe restore. The typical location is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

Perform rollback restores with the ProtectPoint restore commandTo restore SQL Server volumes, run the following command:

msagentrc.exe -A "NSR_RESTORE_TYPE=lunresync" [<options>] <path>

Restoring ProtectPoint Backups

222 Microsoft Application Agent 4.7 SQL Server User Guide

Page 223: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Syntax for rollback restores with RecoverPoint

Use the msagentrc.exe command with the following syntax for ProtectPoint withRecoverPoint volume restore operations:

msagentrc.exe -c <client_or_hostname> -A "NSR_DFA_SI_DD_HOST=<Data_Domain_server>" -A "NSR_DFA_SI_DD_USER=<DDBoost_user>" -A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_name_and_path>" -A "NSR_RESTORE_TYPE=lunsync -A "RP_MGMT_HOST=<RecoverPoint_management_hostname>" -A "RP_USER=<RecoverPoint_management_host_username> [<optional_parameters>] -I --t <save_time> <restore_path>

where:

-c <client_or_hostname>

Specifies the client name that was used for the backup.

-A "RP_MGMT_HOST=<RecoverPoint_hostname>"

Specifies the name of the RecoverPoint management host.

-A "RP_USER=<RecoverPoint_user>"

Specifies the username of the RecoverPoint management host.Full credentials are retrieved from the lockbox to authenticate with the host.

-A "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-A "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

-A "NSR_RESTORE_TYPE=lunresync"

Specifies to perform a volume-level rollback restore.

-t <save_time>

Specifies the save time of the backup. Specify this parameter along with therestore path for each database in the restore operation. The application pausesfor you to input this option line by line. Press Enter to move to the next line. Ablank line indicates completion of the list.

<restore_path>

Specifies the path to the objects that you want to restore.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

Restoring ProtectPoint Backups

Perform rollback restores with the ProtectPoint restore command 223

Page 224: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Example 36 Example RecoverPoint rollback restore command

msagentrc.exe -A "RESTORE_DEVICE_POOL=ledmf112_restore_pool" -A "RESTORE_DEVICE_GROUP=DG_ledmf112_restore" -c ledmf158.msapp.com -A "NSR_DFA_SI_DD_HOST=ledmd035.lss.example.com" -A "NSR_DFA_SI_DD_USER=DD163_user" -A "NSR_DFA_SI_DEVICE_PATH=/SU_DD163" -A "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -A "RP_MGMT_HOST=ledmd163.lss.example.com" -A "RP_USER=admin" -A "NSR_RESTORE_TYPE=lunresync" -I --t 1462787749 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\LEDMF158%5CINST1\dbtest3\-t 1462787748 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\LEDMF158%5CINST1\dbtest2\-t 1462787747 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\LEDMF158%5CINST1\dbtest1\

Syntax for rollback restores with VMAX

Use the msagentrc.exe command with the following syntax for ProtectPoint withVMAX volume restore operations:

msagentrc.exe -c <client_or_hostname> -A "NSR_DFA_SI_DD_HOST=<Data_Domain_server>" -A "NSR_DFA_SI_DD_USER=<DDBoost_user>" -A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_name_and_path>" -A "NSR_RESTORE_TYPE=lunsync [<optional_parameters>] -I --t <save_time> <restore_path>

where:

-c <client_or_hostname>

Specifies the client name that was used for the backup.

-A "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.

Restoring ProtectPoint Backups

224 Microsoft Application Agent 4.7 SQL Server User Guide

Page 225: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-A "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

-A "NSR_RESTORE_TYPE=lunresync"

Specifies to perform a volume-level rollback restore.

-t <save_time>

Specifies the save time of the backup. Specify this parameter along with therestore path for each database in the restore operation. The application pausesfor you to input this option line by line. Press Enter to move to the next line. Ablank line indicates completion of the list.

<restore_path>

Specifies the path to the objects that you want to restore.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Optional parameters for rollback restores with the msagentrc.exe command

You can use the following optional parameters with the msagentrc.exe command.

-A "NSR_DFA_SI_DD_LOCKBOX_PATH=<full_path_to_lockbox>"

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding usernames in pairs.

Restoring ProtectPoint Backups

Perform rollback restores with the ProtectPoint restore command 225

Page 226: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Each pair is associated with a password that backups use. If you do not specify avalue, the path defaults to the installation path, which is typically C:\ProgramFiles\DPSAPPS\common\lockbox.

-A "ADDITIONAL_RESTORES={yes | no}"

Specifying yes disables the ability to roll back uncommitted transactions anduses the database to restore the latest or additional transaction logs. The defaultvalue is no.

-A "RENAME_TO=<new_database_name>"

Specifies the new name for the destination database. The selected database willbe restored to the new database. The new name of the database must be a validSQL database name. If the destination contains a database with the same nameas the database that you have specified, the restore operation overwrites theexisting database.The database files that are data files (.mdf and .ndf) and log file (.ldf) will berestored to their source locations only. If the source database exists, its files canbe in use. So, to avoid conflicts for using a new database name, use the -ARELOCATE_TO option along with the -A RENAME_TO option.

-A "INSTANCE_TO=<hostname>\<instance>"

Performs a redirected restore operation to a SQL Server instance that is differentfrom the source instance where the backup was taken.

Note

The target instance must reside on the same system where the restore operationis configured. You cannot restore the backup to an instance on a remote host.

-A "RELOCATE_TO='<source_file-1>'='destination_folder-1','<source_file-2>'='destination_folder-2',[...]"

Performs redirected restores of the database files that are data files (.mdfand .ndf) and log file (.ldf). You can rename or change only the destinationfolders, but not the filenames.Ensure that the destination paths are not root drives, for example, E:\.

-D <debug_level>

Generates detailed logs that you can use to troubleshoot the restore issues. Thesupported debug levels are 1 through 9.

-A "RESTORE_FROM_DD_ONLY={true | false}"

For VMAX environments, specify true to restore from Data Domain even if thesnapshot is available locally on the VMAX array.

-A "DELETE_DEBUG_LOG_DAYS=<number_of_days>"

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767. By default, debug logs are not deleted. Regularlydeleting debug logs prevents the log folder on the installation drive frombecoming too large.

Note

This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

Restoring ProtectPoint Backups

226 Microsoft Application Agent 4.7 SQL Server User Guide

Page 227: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restore SQL Server volumes with T-SQL scriptsThe Microsoft application agent for ProtectPoint enables you to generate SQL-CLRscript that you can use to restore SQL Server volumes.

The SQL-CLR volume restore command is the same as the database restorecommand, that is, protectpoint_run_restore.

However to perform volume restores, you must specify the value of theNSR_RESTORE_TYPE option as lunresync.

You must provide a VARCHAR type parameters to theprotectpoint_run_restore command.

You must provide a VARCHAR type parameters to this command. Theprotectpoint_run_restore command uses the same command options as themsagentrc.exe command. Optional parameters for rollback restores with themsagentrc.exe command on page 225 provides information about the restorecommand options.

You can use any SQL Server standard interfaces such as, the SQL ServerManagement Studio Query window and T-SQL command prompt to run the SQL-CLRscripts.

Sample T-SQL volume level or LUN level restore script

USE [master]GODECLARE @returnCode intDECLARE @stdin NVARCHAR(MAX)SET @stdin = '-t 1465211083 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\' + CHAR(10);EXEC @returnCode = dbo.protectpoint_run_restore ' -cledmf176.msapp.com -A "NSR_DFA_SI_DD_HOST=ledmd035.lss.example.com" -A"NSR_DFA_SI_DD_USER=DD163_user" -A "NSR_DFA_SI_DEVICE_PATH=/SU_DD163"-A "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -A "RP_MGMT_HOST=ledmd163.lss.example.com" -A"RP_USER=admin" -A "NSR_RESTORE_TYPE=lunresync" -I -', @stdinIF @returnCode <> 0BEGINRAISERROR ('Fail!', 16, 1)END

Confirming the status of a rollback restoreProcedure

1. Open the msagentsv.log log file from the following path:

<Microsoft_application_agent_install_path>\DPSAPPS\MSAPPAGENT\logs

2. Verify that the following messages are appear in the log file:

Starting LUN resync.Waiting for LUN resync to finish.

Restoring ProtectPoint Backups

Restore SQL Server volumes with T-SQL scripts 227

Page 228: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

The debug level specified for the backup must be set to level 3 or higher forthese messages to appear.

Restore an availability group to an alternate instanceThe Microsoft application agent supports restoring an availability group backup to analternate instance for both database and volume level restore operations.

Before you begin

A backup must exist of the availability group using the Windows cluster name as thehost name.

Note

Multiple availability group databases can be restored to an alternate instance onlythrough a volume level restore.

Procedure

1. On the primary node, perform the following steps:

a. Launch the Microsoft application agent SQL Server Management Studio(SSMS) plugin.

b. Configure a restore operation of availability group databases from either theDatabase Restore or Volume Restore tab using the Windows cluster namein the SQL Server host field.

c. Specify the alternate target location using one of the following methods:

l From the Database Restore tab, use the Instance drop-down list.

l From the Volume Restore tab, use the drop-down list beside eachdatabase in the Restore To column.

Note

The target instance must reside on the same system where the restoreoperation is configured. You cannot restore the backup to an instance on aremote host. For volume restores, the target instance must match the filesystem layout as the source instance.

d. Run the restore operation.

2. On each of the secondary nodes, perform the following steps:

a. Launch the Microsoft application agent SSMS plugin.

b. Configure a restore operation of availability group databases from either theDatabase Restore or Volume Restore tab with the following selections:

l Select the Windows cluster name in the SQL Server host field.

l On the Options page, in the Recovery state drop-down list, selectRESTORE WITH NORECOVERY.

c. Specify the same alternate target location that was configured on theprimary node using one of the following methods:

Restoring ProtectPoint Backups

228 Microsoft Application Agent 4.7 SQL Server User Guide

Page 229: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l From the Database Restore tab, use the Instance drop-down list.

l From the Volume Restore tab, use the drop-down list beside eachdatabase in the Restore To column.

d. Run the restore operation.

e. Repeat these steps on each secondary node.

3. On the primary node, launch the SSMS Availability Group Wizard.

4. Use with the Availability Group Wizard to add the restored databases to theavailability group using the Join only option.

Restoring SQL Server table-level dataThe Microsoft application agent supports table-level recovery of SQL Server datausing the ProtectPoint SSMS plug-in or ProtectPoint commands.

Note

The Microsoft application agent does not support T-SQL scripts to perform tablerestores.

Restore SQL Server table-level data with the Microsoft app agent forStorage Direct SSMS plug-in

Before you begin

Ensure that you have installed ItemPoint to perform table restores. Otherwise, theTable Restore tab does not appear in the Microsoft app agent for Storage DirectSSMS plug-in.

The Script view is available in each page, which generates a command promptequivalent script, which you can use to create a .bat file to perform scheduledbackups, automation, and other tasks.

Launch the Microsoft app agent for Storage Direct SSMS plug-in

To open the Microsoft app agent for Storage Direct SSMS plug-in, from the Windowsdesktop, click Start > Microsoft SQL Server Management Studio > Microsoft appagent for Storage Direct.

NOTICE

If you have not installed SSMS, to start the Microsoft app agent for Storage DirectSSMS plug-in, run the DDSSMSAddinApp.exe pp command from the<Microsoft_application_agent_install_path>\DPSAPPS\MSAPPAGENT\bin folder.

Configure general table restore settingsTo configure SQL table-level restores with the Microsoft app agent for Storage DirectSSMS plug-in, you must first specify general restore options on the Table Restore >General page.

Before you begin

To restore a database that is part of the Always On availability group, you must firstremove the database from the Always On availability group before configuring the

Restoring ProtectPoint Backups

Restoring SQL Server table-level data 229

Page 230: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

restore operation. After the restore is complete, add the database back to the AlwaysOn availability group.

Procedure

1. Open the Microsoft app agent for Storage Direct window to the TableRestore > General page.

The General page appears as shown in the following figure.

Figure 43 ProtectPoint - Table Restore General page

2. Click the browse button beside Data Domain Server to select the Data Domainserver and the storage unit to restore either SQL Server instance or requireddatabases.

A storage unit contains the backed up SQL Server hosts.

Note

In the case of a remote (secondary) Data Domain server that has replicateddatabases to restore, select the relevant server. A Data Domain user on theData Domain server must be in the same group as the primary Data Domainserver.

3. Use the SQL Server host list to select a SQL Server host to restore therequired databases.

A SQL Server host contains the backed up SQL Server instances, and thecorresponding databases.

Restoring ProtectPoint Backups

230 Microsoft Application Agent 4.7 SQL Server User Guide

Page 231: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

4. Use the Start browsing from list to select a backup save time, and then clickShow Versions.

The backups that were performed within the specified save time appear in thesave sets table.

5. Use the SQL Server Instance list to select the name of the SQL Serverinstance that contains the database.

A SQL Server instance contains databases and can be either stand-alone orcluster.

The corresponding databases appear in the databases table that is below theSQL Server Instance field.

6. From the databases table, select the database that contains the tables that youwant to restore.

The corresponding save sets appear in the save sets table.

7. In the save sets table, select the save set that contains the tables that you wantto restore.

8. To mount the database, click Run.

Configure optional table restore settingsWhen you configure SQL table-level restores with the Microsoft app agent forStorage Direct SSMS plug-in, you can specify optional restore settings on the TableRestore > Options page.

All settings on the Options page are optional.

Procedure

1. From the left panel, click Options.

The Options page appears as shown in the following figure.

Restoring ProtectPoint Backups

Restore SQL Server table-level data with the Microsoft app agent for Storage Direct SSMS plug-in 231

Page 232: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 44 Microsoft app agent for Storage Direct: Table Restore-Options page

2. Under Mount, specify the following fields as required:

l The Mount Folder field specifies the location where backup images aremounted. You cannot edit the value in this field.

l Select Do not run ItemPoint after mounting the backup images if you donot want ItemPoint GUI to launch after you run the mount operation.Selecting this option disables the Leave backup images mounted afterItemPoint exits option, and enables you to perform manual table-levelrestores.

l To leave the backup images in the mounted state after you close ItemPoint,select Leave backup images mounted after ItemPoint exits.This option is enabled only if you have not selected the Do not runItemPoint after mounting the backup images option.

You can manually browse the backup images, inspect the images, and thendismount the images by using the msagentadmin.exe dismountcommand. Dismount backup images with the msagentadmin dismountcommand on page 241 provides information.

3. To generate detailed logs, which you can use to troubleshoot the restore issues,select Select a debug level, and then specify a value of 1 through 9. Thedefault value is 0 (zero).

4. To delete debug logs older than a certain number of days, select Delete debuglogs after, and then specify the number of days with a number between 1 and32767 days. The default value is 0 and does not delete any debug logs.

Restoring ProtectPoint Backups

232 Microsoft Application Agent 4.7 SQL Server User Guide

Page 233: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

This option only deletes debug logs named in the default format and located inthe logs folder at <installation_path>\MSAPPAGENT\logs.

Regularly deleting debug logs prevents the log folder on the installation drivefrom becoming too large.

5. To limit the backup history of the databases on the General page to a setnumber of days, type or select a number in the Days of backup history field.

The default value is 30.

6. To use the client name that is provided as-is without converting it to the fullyqualified domain name (FQDN), select Exclude client name resolution.

Use this option to restore backups taken with Microsoft application agentversion 4.5 or earlier that use the short name as the client name.

7. Under Restore Method, specify the details for the device that you want therestore operation to use:

l For VMAX environments, to restore with a FAST.X restore device, performthe following steps:

a. From the Restore with menu, select FAST.X (VMAX only).

b. In the Storage Group field, type the name of the VMAX FAST.X restorestorage group where the restore FTS devices are assigned to the host.The default value is NsrSnapSG.

c. In the Static Image Pool field, type the name of the static image poolwhen restoring from a secondary Data Domain.This field is populated by default for restores from the primary DataDomain.

d. If you want to restore from a backup older than the latest backup, selectIgnore local snapshots.By default, the restore operation uses the local snapshot copy on theVMAX array, when available. The local snapshot is the latest availablebackup. To restore from any backup older than the latest snapshot copy,you must select this option.

l To restore with a Data Domain vdisk device, perform the following steps:

a. From the Restore with menu, select Data Domain vdisk.

b. In the Device Pool field, type the name of the vdisk restore device poolthat contains the vdisk devices that you want use to perform the restoreoperation.Ensure that the device pool belongs to the Data Domain server that youhave selected on the General page.

c. In the Device Group field, type the name of the restore device groupthat contains the vdisk devices and the restore device pool that you wantto use to perform the restore operation.Ensure that device group belongs to the Data Domain server that youhave selected on the General page.

Restoring ProtectPoint Backups

Restore SQL Server table-level data with the Microsoft app agent for Storage Direct SSMS plug-in 233

Page 234: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

To mount VMAX static images and restore the data directly from DataDomain, ensure that the vdisk devices are masked to the application host.The Data Domain documentation provides information.

d. In the Static Image Pool field, type the name of the static image pool.

8. To mount the database, click Run.

Monitor the mount operationAfter a table restore mount operation is run from the Microsoft app agent for StorageDirect SSMS plug-in, the Table Restore > Monitor page displays the mount script andstatus.

The following figure shows the mount information and status as it appears on theMonitor page.

Figure 45 ProtectPoint - Table Restore-Monitor page

Restoring ProtectPoint Backups

234 Microsoft Application Agent 4.7 SQL Server User Guide

Page 235: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

Review the log files that are available in the<Microsoft_application_agent_install_path>\DPSAPPS\MSAPPAGENT\logs folder for information about the success or failure of the mount and thedismount. The default location is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

When the mount operation succeeds, ItemPoint for Microsoft SQL Server GUIlaunches, unless you select the Do not run ItemPoint after mounting the backupimages option when you configure the mount operation.

Restore table-level data using ItemPointAfter the backup images are mounted using the Microsft application agent SSMSplug-in, complete the table-level restore using ItemPoint for Microsoft SQL Server.

Before you begin

Configure and run the table level restore operation with the Table Restore tab in theMicrosoft application agent SSMS plug-in.

Once the table level restore is configured and run through the Microsoft applicationagent SSMS plug-in, ItemPoint launches.

If you select Do not run ItemPoint after mounting the backup images when youconfigure the table level restore, you must manually launch ItemPoint, and then launchthe Data Wizard.

Procedure

1. On the Select Source page, select the source backup files from the mountedvolume that contains the SQL backup data as shown in the following figure, andthen click Next.

Figure 46 ItemPoint Data Wizard: select the source files

2. On the Select Target Server page, specify the details and login credentials forthe target SQL Server and database.

Restoring ProtectPoint Backups

Restore SQL Server table-level data with the Microsoft app agent for Storage Direct SSMS plug-in 235

Page 236: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

The following figure shows the ItemPoint Data Wizard Select Target Serverpage:

Figure 47 ItemPoint Data Wizard: select the target server

3. Click Finish.

The Data Wizard closes and ItemPoint loads the tables contained in the sourcebackup files.

4. Use ItemPoint to browse and restore the individual tables.

Note

The ItemPoint for Microsoft SQL Server User Guide provides more information onusing ItemPoint for Microsoft SQL Server to restore table-level data.

5. To dismount the mounted backup images, exit ItemPoint for Microsoft SQLServer.

Note

If you select Leave backup images mounted after ItemPoint exits or Do notrun ItemPoint after mounting the backup images when you configure themount operation, the backup image remains mounted for 4 hours. To dismountthe backup manually, use the msagentadmin command.

Restoring ProtectPoint Backups

236 Microsoft Application Agent 4.7 SQL Server User Guide

Page 237: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restore SQL Server table-level data with ProtectPoint commandsYou can restore SQL Server table-level data by mounting backups with ProtectPointmount command, and then restoring the tables with ItemPoint for Micosoft SQLServer.

Mount the backup images

Run the following command to mount backup images:

msagentrc.exe -A NSR_RESTORE_TYPE=mount -A "RESTORE_DEVICE_POOL=<restore_device_pool>" -A "RESTORE_DEVICE_GROUP=<restore_device_group>" -c <client_or_hostname> -A "NSR_DFA_SI_DD_HOST=<server_name>" -A "NSR_DFA_SI_DD_USER=<DDBoost_user>" -A "NSR_DFA_SI_DEVICE_PATH=</storage_unit_and_path>" -I - -t <save_time> <restore_path>

where:

-A NSR_RESTORE_TYPE=mount

Specifies a mount operation

-A "RESTORE_DEVICE_POOL=<restore_device_pool>"

Specifies the restore device group that contains the vdisk devices and the restoredevice pool that you use to perform the restore operation. Ensure that the DataDomain server that you have specified belongs to this device group.

-A "RESTORE_DEVICE_GROUP=<restore_device_group>"

Specifies the restore device pool that contains the vdisk devices that you use toperform the restore operation. Ensure that the Data Domain server that you havespecified belongs to this device pool.

-c <client_or_hostname>

Specifies the client name that was used for the backup.

-A "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-A "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

-t <save_time>

Specifies the save time of the backup. Specify this parameter along with therestore path for each database in the restore operation. The application pauses

Restoring ProtectPoint Backups

Restore SQL Server table-level data with ProtectPoint commands 237

Page 238: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

for you to input this option line by line. Press Enter to move to the next line. Ablank line indicates completion of the list.

<restore_path>

Specifies the path to the objects that you want to restore.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Example 37 Mount backup command example

msagentrc.exe -A "RESTORE_DEVICE_POOL=msagent-restore-pool" -A "RESTORE_DEVICE_GROUP=lfcp1018-restore.dg" -c lfcp1018.msappagentqa.com -A "NSR_DFA_SI_DD_HOST=lfcp0023.lss.emc.com" -A "NSR_DFA_SI_DD_USER=rpuser" -A "NSR_DFA_SI_DEVICE_PATH=/appagent-backup" -A "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -A NSR_RESTORE_TYPE=mount -I - -t 1463148949 -A ADDITIONAL_RESTORES=no APPLICATIONS:\SqlServerWriter\LFCP1018%5CMSSQLSERVER1\userDB01\

Restore table-level data using ItemPointProcedure

1. Launch the command prompt.

2. Run the following command:

C:\Program Files (x86)\DPSAPPS\MSAPPAGENT\ItemPoint\Sql\EMCIPSQL.exe

The ItemPoint for Microsoft SQL Server appears.

Restoring ProtectPoint Backups

238 Microsoft Application Agent 4.7 SQL Server User Guide

Page 239: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

3. Launch the Data Wizard.

The Data Wizard appears to the Select Source page.

4. On the Select Source page, select the source backup files from the mountedvolume that contains the SQL backup data as shown in the following figure, andthen click Next.

Figure 48 ItemPoint Data Wizard: select the source files

5. On the Select Target Server page, specify the details and login credentials forthe target SQL Server and database.

The following figure shows the ItemPoint Data Wizard Select Target Serverpage:

Restoring ProtectPoint Backups

Restore SQL Server table-level data with ProtectPoint commands 239

Page 240: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 49 ItemPoint Data Wizard: select the target server

6. Click Finish.

The Data Wizard closes and ItemPoint loads the tables contained in the sourcebackup files.

7. Use ItemPoint to browse and restore the individual tables.

Note

The ItemPoint for Microsoft SQL Server User Guide provides more information onusing ItemPoint for Microsoft SQL Server to restore table-level data.

After you finish

Dismount the backups using the msagentadmin.exe command.

Managing mounted backupsThe Microsoft application agent supports command line tools to list and dismountmounted backups.

List mounted backups with the msagentadmin command

To list mounted backups, run the following command:

msagentadmin mounts --ddhost "<Data_Domain_server_name>" --ddpath "<name_and_path_of_storage_unit>" --dduser "<DDBoost_username>" [<optional_parameters>]

where:

--ddhost "<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

Restoring ProtectPoint Backups

240 Microsoft Application Agent 4.7 SQL Server User Guide

Page 241: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

--ddpath "/<storage_unit_name_and_path>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

--dduser "<DDBoost_user>"

Specifies the username of the DD Boost user.

Dismount backup images with the msagentadmin dismount command

To dismount the backup images after the restore completes, run the followingcommand:

msagentadmin dismount --ddhost "<Data_Domain_server_name>" --ddpath "<name_and_path_of_storage_unit>" --dduser "<DDBoost_username>" [<optional_parameters>]

where:

dismount

Specifies an operation to dismount backups.

--ddhost "<name>"

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

--ddpath "/<storage_unit_name_and_path>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

--dduser "<DDBoost_user>"

Specifies the username of the DD Boost user.

Example 38 Dismount command

msagentadmin.exe dismount --ddhost "ledmd035.lss.example.com" --dduser "DD163_user" --ddpath "/SU_DD163" --lockbox "C:\Program Files\DPSAPPS\common\lockbox"

Example 39 Dismount command using a configuration file

msagentadmin.exe dismount --config c:\temp\config_pp.txt

Optional parameters to manage mounted backups with msagentadmin

The following list describes the optional parameters for managing mounted backupswith the msagentadmin command:

--deleteDebugLog <number_of_days>

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767. By default, debug logs are not deleted. Regularly

Restoring ProtectPoint Backups

Managing mounted backups 241

Page 242: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

deleting debug logs prevents the log folder on the installation drive frombecoming too large.This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

--debug <level_1_through_9>

Specifies the debug level for listing backups. The default value is 0 (zero).You can use the -D alias for the --debug parameter.

--help

Prints a brief help message.You can use the -h alias for the --help parameter.

--config "<configuration_file_path>"

Specifies the full path to the configuration file.You can use the -z alias for the --config parameter.

--lockbox <lockbox_path>

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding user names in pairs.Each pair is associated with a password that backups use.If you do not specify a value, the path defaults to the installation path, which istypically C:\Program Files\DPSAPPS\common\lockbox.

--bybackupid <backupid>

Specifies to display the backup ID for mounted backups.

--bypath <path>

Specifies to display the mount path for mounted backups.

--byssid <ssid>

Specifies to display the save set IDs for mounted backups.

Performing SQL Server disaster recovery with ProtectPointPerform the following steps on the new disaster recovery host.

Procedure

1. On the new disaster recovery host, install and configure SQL Server.

2. Create the same SQL Server instances that existed before the disaster.

3. According to your setup, mask the restore FTS devices or vdisk devices to theapplication (disaster recovery) host to mount the static image.

4. Restore the image and the backed up save sets to the SQL Server instancesthat you have created.

5. After the restore completes, manually create the logs folder in the SQL Serverinstallation folder, and start the SQL Server service.

Restoring ProtectPoint Backups

242 Microsoft Application Agent 4.7 SQL Server User Guide

Page 243: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

After the disaster recovery completes, the SQL Server service does notautomatically start because the logs folder is not present in the SQL Serverinstallation folder. The Microsoft application agent for ProtectPoint with SQLServer backup operation does not back up the SQL Server installation logsfolder even if the selected instance contains the logs folder.

Restoring ProtectPoint Backups

Performing SQL Server disaster recovery with ProtectPoint 243

Page 244: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restoring ProtectPoint Backups

244 Microsoft Application Agent 4.7 SQL Server User Guide

Page 245: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 8

Restoring Virtual Machine Backups with vProxyEngine

This chapter includes the following sections:

l Overview of SQL Server virtual machine restore operations ........................... 246l Prerequisites....................................................................................................246l Restoring SQL Server databases to a virtual machine...................................... 247l Performing SQL Server table-level recovery to a virtual machine.....................261

Restoring Virtual Machine Backups with vProxy Engine 245

Page 246: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Overview of SQL Server virtual machine restore operationsUse the Microsoft application agent tools to restore backups to a SQL Server hostedon a VMware virtual machine.

When you add a SQL Server virtual machine asset to an eCDM virtual machineapplication consistent protection policy, the Microsoft application agent and ItemPointsilently install on the protected SQL Server.

The Microsoft application agent automatically stores the eCDM and Data Domain hostand login information from the protection settings that are configured in the eCDMProtection Policy. This automatic configuration occurs when the SQL Server virtualmachine asset is added to the eCDM Protection Policy.

The Microsoft application agent can perform database or table-level restores to thesource virtual machine or an alternate virtual machine. To perform restores to analternate virtual machine, that virtual machine must be an asset of eCDM. However,instance-level restores can only be performed to the original source instance.

You can use the Microsoft app agent for vProxy Engine SQL Server ManagementStudio (SSMS) plug-in or the command prompt to perform restore operations. T-SQLscripts are not supported with vProxy Engine.

PrerequisitesAn environment must meet the following requirements for application-aware virtualmachine restore operations:

l vCenter 6.5 and VMware ESXi 6.5 or later must be installed.

l VMware tools version 10.1 or later must be installed and running on the targetvirtual machine.

l The UUID attribute must be enabled in the vSphere Client(disk.EnableUUID=TRUE) .

l The virtual machine must use SCSI disks only and the number of available SCSIslots must match the number of disks at a minimum.For example, a virtual machine with 7 disks requires one SCSI controller but avirtual machine with 8 disks requires 2 SCSI controllers.

l The SQL Server instance must be up and running on the virtual machine.

l The SQL Server must be a standalone instance. Cluster configurations, includingAlways On availability groups and Failover Cluster Instances, are not supported forvProxy Engine recstore operations.

l The SQL writer service must be running.

l The user account that is configured in the eCDM Protection Policy must haveaccess to perform backup and recovery operations.To configure the required permissions, perform the following steps on eachprotected SQL Server instance:

1. Create a SQL Login with the user account configured in the eCDM ProtectionPolicy.

2. Add the user the sysadmin SQL Server role.

l The SQL Server must be hosted on a virtual machine that is a protected asset inan eCDM Protection Policy.

Restoring Virtual Machine Backups with vProxy Engine

246 Microsoft Application Agent 4.7 SQL Server User Guide

Page 247: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

If you are restoring data to an alternate location to a SQL Server virtual machinethat is not protected in eCDM, you must manually install the Microsoft applicationagent on the target virtual machine before you can restore the data. The MicrosoftApplication Installation Guide provides instructions to install the Microsoftapplication agent for vProxy Engine. When you configure the restore operation,you must manually register the Data Domain server, eCDM appliance, and lockboxdetails.

Restoring SQL Server databases to a virtual machineLearn how to restore Microsoft SQL Server database backups taken in an eCDMvirtual machine application-consistent Protection Policy.

You can restore database full and transaction log backups from the primary DataDomain or the secondary Data Domain if replication is enabled for the eCDMProtection Policy. However, when you are restoring from the secondary Data Domain,the tail log backup option is not supported.

Restore a SQL Server databases with the vProxy Engine SSMS plug-inLearn how to perform a vProxy Engine SQL Server database restore operation usingthe Microsoft app agent for vProxy Engine SSMS plug-in.

Launch the Microsoft app agent for vProxy Engine SSMS plug-inProcedure

1. From the Windows Start menu, select Microsoft SQL Server ManagementStudio.

2. In the Microsoft SQL Server Management Studio, in the Connect to Serverwindow, specify the server information and credentials, and then click Connect.

3. In the toolbar, click Microsoft App Agent (vProxy Engine).

The Microsoft app agent for vProxy Engine window appears.

Note

If the Microsoft App Agent (vProxy Engine) button is not on the toolbar, theplug-in may be unable to register. In this scenario, you can launch the plug-indirectly from the start menu. From the Windows Start menu, select DDBMAPlugin for SQL Server Management Studio.

Configure general database restore settingsTo configure SQL restores with the Microsoft app agent for vProxy Engine SSMSplug-in, you must first specify general restore options on the Database Restore >General page.

Procedure

1. Open the Microsoft app agent for vProxy Engine window to the DatabaseRestore > General page.

The General page appears as shown in the following figure.

Restoring Virtual Machine Backups with vProxy Engine

Restoring SQL Server databases to a virtual machine 247

Page 248: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 50 vProxy Engine: Database Restore General page

2. Beside Data Domain Server, click ...

The Data Domain Server List & Lockbox Settings window appears and liststhe Data Domain server and lockbox that is configured in the eCDM ProtectionLifecycle policy. If the Protection Lifecycle policy is configured for replication,the secondary Data Domain server and storage unit also appear.

3. In the Data Domain Server List & Lockbox Settings window, select the DataDomain server that contains the backup, and then click OK.

Note

If you are restoring the backup to an alternate virtual machine that is notprotected in an eCDM Protection Policy, contact the eCDM administrator toretrieve the Data Domain host details for the Protection Policy associated withthe original virtual machine. You must also request the eCDM administrator toperform either of the following actions:

l Approve (whitelist) the Mircosoft application agent on the target virtualmachine.

l Provide the Data Domain storage unit login credentials

The SQL Server host field is updated with the client backups that are availableon the selected Data Domain server.

4. From the SQL Server host list, select the SQL Server host that is the source ofthe backup.

Restoring Virtual Machine Backups with vProxy Engine

248 Microsoft Application Agent 4.7 SQL Server User Guide

Page 249: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

5. Use the Start browsing from list to select a backup save time, and then clickShow Versions.

The SQL Server Instance field and save sets table are updated with thebackups that are within the specified browse time. If no level full backups arefound in the specified time range, you are prompted for confirmation to load thelatest full backup.

6. From the SQL Server Instance list, select the SQL Server instance thatcontains the databases that you want to restore.

The databases located on the SQL Server instance appear in the database tablebelow the SQL Server Instance field.

7. From the database table, select either the entire SQL Server instance byselecting the check box in the header row or select only the required databasesto restore.

The corresponding save sets appear in the save sets table that is below thedatabases table.

8. For single database restores, from the save sets table, select the databasebackup and timestamp that you want to restore.

By default, the most recent backup is selected.

Note

This step only applies to single database restores. For multiple database andinstance-level restores, the most recent backup is restored.

9. (Optional) To restore the database to a specific point in time, perform thefollowing steps:

a. Under Destination, click Timeline.

The Backup Timeline dialog box appears as shown in the following figure.Figure 51 Specifying the restore point

b. Specify the backup date and time, and then click OK.

10. Specify the restore destination by performing one of the following actionsequences:

l To perform a recovery directly to a database, perform the following steps:

a. Select Restore to SQL Server.

b. From the Instance list, select the SQL Server instance where you wantto restore the backup.

Restoring Virtual Machine Backups with vProxy Engine

Restore a SQL Server databases with the vProxy Engine SSMS plug-in 249

Page 250: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

If you are restoring the backup to an alternate instance, the data and logfiles are automatically relocated to the target SQL instance default dataand log path. You can change the file destination settings on the Filespage.

c. From the Database list, select or type the name of the database wherethe backup will be restored to.If the database exists, the operation prompts you for confirmation tooverwrite the database.

l To recover the database as flat-files, perform the following steps:

a. Select Restore backups as files.

b. In the Folder field, specify the destination for the files. The Folder field ispopulated with the default destination path.To perform a redirected restore, change the destination path byclicking ... beside the Folder field, and specifying the requireddestination.

Note

Ensure that the destination path is not a root drive, for example, E:\.

Note

Full backups are restored as .mdf, .ndf, and .ldf files. Transaction logbackups are restored as .bak files.

After you finish

Specify the eCDM server details and additional restore options on the Options page.Also, to change the file destination settings, use the Files page.

Configure file destination settingsView and change the default destination folders of the database files that are datafiles (.mdf and .ndf) and log files (.ldf) from the Database Restore > Files page.

All settings on the Files page are optional.

File information on the Files page is shown only when a single database and a backupversion is selected on the General page. If you select multiple databases or do notselect a backup version, file information does not appear and the databases arerestored to the latest backup.

Note

If you are restoring the backup to an alternate instance, the data and log files areautomatically relocated to the target SQL instance default data and log path. You canchange the file destination settings on the Files page.

Procedure

1. From the left panel, click Files.

The Files page appears as shown in the following figure.

Restoring Virtual Machine Backups with vProxy Engine

250 Microsoft Application Agent 4.7 SQL Server User Guide

Page 251: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 52 vProxy Engine: Database Restore Files page

The table on the page displays the source locations of the database files.

2. To change the destination paths of all of the data and log files, perform thefollowing steps:

a. Select Relocate all files to folder.

b. Click the Data file folder browse button to specify a location for the datafiles, or click inside the field to type the folder path.

c. Click the Log file folder browse button to specify a location for the log files,or click inside the field to type the folder path.

3. To change the destination path at the file group level, perform one of thefollowing actions in the table:

l To browse for a destination path, click the browse button to the right ofeach file group.A window appears where you can browse and select the file path.

l To type a new destination path, in the Restore To column, click theappropriate cell and type a destination path.If the path does not exist, a dialog box appears asking if you want to createthe folder.

Note

Ensure that the destination paths are not root drives, for example, E:\.

Restoring Virtual Machine Backups with vProxy Engine

Restore a SQL Server databases with the vProxy Engine SSMS plug-in 251

Page 252: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

After you finish

Specify the eCDM server details and additional restore options on the Options page.

Configure database restore optionsWhen you configure SQL database restores with the Microsoft app agent for vProxyEngine SSMS plug-in, you can specify additional restore options on the DatabaseRestore > Options page.

Procedure

1. From the left panel, click Options.

The Options page appears as shown in the following figure.Figure 53 vProxy Engine: Database Restore Options page

2. In the Recovery state list, select one of the following options, as required:

Option Description

RESTORE WITHRECOVERY

(Default) To leave the database in the ready-to-usestate by rolling back uncommitted transactions, anddisable the ability to restore the latest or additionaltransaction logs.

RESTORE WITHNORECOVERY

To leave the database in the non-operational state bynot rolling back uncommitted transactions, and enablethe ability to restore the latest or additionaltransaction logs.

Restoring Virtual Machine Backups with vProxy Engine

252 Microsoft Application Agent 4.7 SQL Server User Guide

Page 253: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

3. To compress the restore contents and transport them from the Data DomainReplicator to the application host, select Data Domain Boost compressedrestore.

This option reduces network bandwidth.

4. To generate detailed logs, which you can use to troubleshoot the restore issues,select Select a debug level, and then specify a value of 1 through 9. Thedefault value is 0 (zero).

5. To delete debug logs older than a certain number of days, select Delete debuglogs after, and then specify the number of days with a number between 1 and32767 days. The default value is 0 and does not delete any debug logs.

Note

This option only deletes debug logs named in the default format and located inthe logs folder at <installation_path>\MSAPPAGENT\logs.

Regularly deleting debug logs prevents the log folder on the installation drivefrom becoming too large.

6. To enable advanced restore options, type or select one of the following optionsin the Advanced options list:

Option Description

KEEP_REPLICATION Preserves the replication when recovering a publisheddatabase. This option is required if a database wasreplicated when the backup was created.

KEEP_CDC Enables change data capture (CDC) recovery. Whenrestoring a database with CDC enabled, the recoveroperation works differently depending on the recoverydestination. Use the to KEEP_CDC option to:

l Recover the CDC enabled database with a differentname on the same SQL instance.In this scenario, KEEP_CDC is required.

l Recover the CDC enabled database on a differentSQL server instance.In this scenario, KEEP_CDC is required.

l Recover the CDC enabled database on the sameSQL instance by overwriting an existing database.In this scenario, KEEP_CDC is optional.

Separate multiple advanced options with a comma.

7. To limit the backup history of the databases on the General page to a setnumber of days, type or select a number in the Days of backup history field.

The default value is 7 days.If no level full backups are found in the specified time range, you are promptedfor confirmation to load the latest full backup.

8. To use the client name that is provided as-is without converting it to the fullyqualified domain name (FQDN), select Exclude client name resolution.

Restoring Virtual Machine Backups with vProxy Engine

Restore a SQL Server databases with the vProxy Engine SSMS plug-in 253

Page 254: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Use this option to restore backups taken with Microsoft application agentversion 4.5 or earlier that use the short name as the client name.

9. To perform a transaction log backup of the data before performing restore,select Take tail-log backup before restore.

The tail-log backup ensures that the Microsoft application agent backs up thetransaction logs that has changed from the previous backup. The restoreoperation does not restore the logs of the previous tail-log backup.

Note

Tail-log backup is not supported in the following scenarios:

l When you select Restore backups as files on the General page.

l When the eCDM Protection Policy has Data Domain Mtree replicationenabled and you select the secondary Data Domain as the backup source.

The Microsoft application agent does not support tail-log backups of multipledatabases.

10. To specify the eCDM appliance, perform the following steps:

a. Beside Appliance Host, click ...

The eCDM Appliance List & Lockbox Settings window appears.When you restore a backup to the original virtual machine, the details for theeCDM appliance that protects the SQL Server in a Protection Policyautomatically appear.

b. If you do not see the eCDM appliance that you want to use for the restoreoperation, click Add, and then in the Add eCDM appliance details dialogbox, perform one of the following actions:

l To add an eCDM with credential-based authentication, specify theappliance hostname and the login credentials.Contact the eCDM administrator to retrieve the eCDM appliance hostand login details.

l To add an eCDM with certificate-based authentication, specify only theappliance hostname. Do not specify the username and password fields.To use certificate-based authentication, the eCDM administrator mustwhitelist the target Microsoft application agent.

When you add a virtual machine to a Protection Policy, that virtualmachine is whitelisted with a certificate that expires after one day. If youare restoring to an alternate virtual machine that is an asset of eCDM butnot a member of a Protection Policy, the eCDM must whitelist the targetvirtual machine.

The eCDM administrator can approve (whitelist) the target Microsoftapplication agent on the eCDM Infrastructure > Application Agentspage.

c. Select the eCDM appliance that will mount the backup, and then click OK.

11. To start the restore operation, click Run.

Restoring Virtual Machine Backups with vProxy Engine

254 Microsoft Application Agent 4.7 SQL Server User Guide

Page 255: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Monitor the database restore operationAfter a database restore operation is run from the Microsoft app agent for vProxyEngine SSMS plug-in, the Database Restore > Monitor page displays the restorescript and status.

The following figure shows the restore information and status as it appears on theMonitor page.

Figure 54 vProxy Engine: Database Restore Monitor page

Note

For information about the success or failure of the restore operation, review the logfiles that are located in the installation folder. The location of the log files when theMicrosoft application agent is installed in the default path is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

Restoring Virtual Machine Backups with vProxy Engine

Restore a SQL Server databases with the vProxy Engine SSMS plug-in 255

Page 256: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restore a SQL Server database with the vProxy Engine recover commandLearn how to perform a vProxy Engine SQL Server database restore operation usingthe command line.

Syntax to restore a database with a level full backup

Run the following command to restore databases with vProxy Engine:

msagentrc.exe -A VM_DIRECT=TRUE -A "NSR_RESTORE_TYPE=regular" -c <client_or_hostname> -A "NSR_DFA_SI_DD_HOST=<Data_Domain_server>" -A "NSR_DFA_SI_DD_USER=<DDBoost_user>" -A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_name_and_path>" -A "DM_HOST=<eCDM_appliance_hostname>" -A "DM_USER=<eCDM_appliance_user>" [<optional_parameters>]-I --t <save_time> <restore_path>

where:

-A VM_DIRECT=TRUE

Specifies to use the vProxy Engine workflow for the recover operation.

-A "NSR_RESTORE_TYPE=regular

Specifies to perform a database level restore.

-c <client_or_hostname>

Specifies the client name that was used for the backup.

-A "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-A "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

-A "DM_HOST=<eCDM_appliance_hostname>"

Specifies the eCDM appliance hostname or IP address.

-A "DM_USER=<eCDM_appliance_user>"

Specifies the username to use for the eCDM connection.This parameter is mandatory only for credential-based access to the eCDMappliance. You are not required to specify this parameter when the Microsoftapplication agent is whitelisted by eCDM.

When you add a virtual machine to a Protection Policy, that virtual machine iswhitelisted with a certificate that expires after one day. The eCDM administrator

Restoring Virtual Machine Backups with vProxy Engine

256 Microsoft Application Agent 4.7 SQL Server User Guide

Page 257: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

can approve (whitelist) the target Microsoft application agent on the eCDMInfrastructure > Agents page.

-t <save_time>

Specifies the save time of the backup. Specify this parameter along with therestore path for each database in the restore operation. The application pausesfor you to input this option line by line. Press Enter to move to the next line. Ablank line indicates completion of the list.

<restore_path>

Specifies the path to the backup objects that you want to restore.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Example 40 Example vProxy Engine level full database restore commands

msagentrc.exe -A VM_DIRECT=TRUE -A DM_MOUNT_TIMEOUT=240 -A DM_HOST=12.34.155.77 -A DM_PORT=8443 -c appvm-sql.appvmtest.com -A NSR_DFA_SI_DD_HOST=mars.jupiter.emc.com -A NSR_DFA_SI_DD_USER=admin_user -A NSR_DFA_SI_DEVICE_PATH=/PLC-PROTECTION-11234 -A "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -A RESTORE_FROM_DD_ONLY=YES -A NSR_RESTORE_TYPE=regular -I - -t 1541991384 APPLICATIONS:\SqlServerWriter\APPVM-SQL\DB1\

msagentrc.exe -A VM_DIRECT=TRUE -A DM_MOUNT_TIMEOUT=240 -A DM_HOST=12.34.222.184 -A DM_PORT=8443 -c win-appvm-000.appsvm.com -A NSR_DFA_SI_DD_HOST=host.lss.emc.com -A NSR_DFA_SI_DD_USER=PLC-PROTECTION-USER -A NSR_DFA_SI_DEVICE_PATH=/PLC-PROTECTION-154 -A "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -A RESTORE_FROM_DD_ONLY=YES -A NSR_RESTORE_TYPE=regular -I -

Restoring Virtual Machine Backups with vProxy Engine

Restore a SQL Server database with the vProxy Engine recover command 257

Page 258: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 40 Example vProxy Engine level full database restore commands (continued)

-t 1543513971 APPLICATIONS:\SqlServerWriter\WIN-APPVM-191\ReportServerTempDB\ -t 1543513971 APPLICATIONS:\SqlServerWriter\WIN-APPVM-191\master\ -t 1543513971 APPLICATIONS:\SqlServerWriter\WIN-APPVM-191\model\ -t 1543513971 APPLICATIONS:\SqlServerWriter\WIN-APPVM-191\msdb\ -t 1543513971 -A ADDITIONAL_RESTORES=yes APPLICATIONS:\SqlServerWriter\WIN-APPVM-191\ReportServer\ -t 1543513971 -A ADDITIONAL_RESTORES=yes APPLICATIONS:\SqlServerWriter\WIN-APPVM-191\data1\ -t 1543513971 -A ADDITIONAL_RESTORES=yes APPLICATIONS:\SqlServerWriter\WIN-APPVM-191\data10\ -t 1543513971 -A ADDITIONAL_RESTORES=yes APPLICATIONS:\SqlServerWriter\WIN-APPVM-191\data11\

Syntax to restore a database with a transaction log backupUse the ddbmsqlrc command to restore a transaction log from command prompt forvProxy Engine workflow backups.

Run the following command to restore database transaction logs in a standaloneenvironment with vProxy Engine:

ddbmsqlrc.exe -a VM_DIRECT=TRUE -a "NSR_DFA_SI_DD_HOST=<Data_Domain_server>" -a "NSR_DFA_SI_DD_USER=<DDBoost_user>" -a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_name_and_path>" -c <client_or_hostname> -a "SKIP_CLIENT_RESOLUTION=TRUE" -t <Last_Backup_Time_Stamp> -S normal -a "RESTORE_START_TIME= <start_date_and_time>" <restore_path>

where:

-A VM_DIRECT=TRUE

Specifies to use the vProxy Engine workflow for the recover operation.

-a "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-a "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-a "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

-c <client_or_hostname>

Specifies the client name that was used for the backup.

-a "SKIP_CLIENT_RESOLUTION=TRUE"

Restoring Virtual Machine Backups with vProxy Engine

258 Microsoft Application Agent 4.7 SQL Server User Guide

Page 259: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies to use the client name as it is exactly entered with the -c option and toskip the FQDN lookup to automatically resolve the client name.

-t "<Last_Backup_Time_Stamp>"

Specifies the backup time stamp that you want to restore.

-S normal

Enables you to roll back uncommitted transactions and use the database torestore the most recent or additional transaction logs.

-a "RESTORE_START_TIME=<start_date_and_time>"

Restores all the backups that were performed at or after a specified backup time(start date and time) and up to the backup time of the selected save set, that is,-t <Last_Backup_Time_Stamp>.Specify the start date and time in the <mm>/<dd>/<yyyy> <hr>:<mins>:<secs>{AM | PM} format.

The start date and time must not be after the backup time of the selected saveset, that is, -t <Last_Backup_Time_Stamp>.

"<restore_path>"

Specifies the path to the backup objects that you want to restore.Type the restore path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To restore backups of the entire instance, type MSSQL:n To restore backups of specific databases, type [MSSQL:]<database>

[[MSSQL:]<database> [...]]For example: "MSSQL:database1" "MSSQL:database2"

l For a named instance, type the path in one of the following formats:

n To restore backups of the entire instance, type MSSQL$<Instance_Name>:

n To restore backups of specific databases, type MSSQL$<Instance_Name>:<database> [...]

For example: "MSSQL$SqlInst1:database1" "MSSQL$SqlInst1:database2"

Example 41 Example vProxy Engine transaction logs database restore commands

ddbmsqlrc.exe -a NSR_DFA_SI_DD_HOST=mars.jupiter.emc.com -a NSR_DFA_SI_DD_USER=PLC-PROTECTION-USER -a NSR_DFA_SI_DEVICE_PATH=/PLC-PROTECTION-123456 -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -c appvm-sql.appvmdc.com -a "SKIP_CLIENT_RESOLUTION=TRUE" -C "'DB1'='C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\DB1.mdf', 'DB1_log'='C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\DB1_log.ldf'" -t "11/12/2018 08:54:53 AM" -S normal -a "RESTORE_START_TIME=11/12/2018 08:26:25 AM" -a VM_DIRECT=TRUE MSSQL:DB1

Restoring Virtual Machine Backups with vProxy Engine

Restore a SQL Server database with the vProxy Engine recover command 259

Page 260: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 41 Example vProxy Engine transaction logs database restore commands (continued)

ddbmsqlrc.exe -a NSR_DFA_SI_DD_HOST=host.lss.emc.com -a NSR_DFA_SI_DD_USER=PLC-PROTECTION-USER -a NSR_DFA_SI_DEVICE_PATH=/PLC-PROTECTION-154 -a "NSR_DFA_SI_DD_LOCKBOX_PATH=C:\Program Files\DPSAPPS\common\lockbox" -c win-appvm-191.appsvm.com -a "SKIP_CLIENT_RESOLUTION=TRUE" -C "'ReportServer'='C:\Program Files (x86)\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\ReportServer.mdf', 'ReportServer_log'='C:\Program Files (x86)\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\ReportServer_log.ldf'" -S normal -a "RESTORE_START_TIME=11/29/2018 09:52:52 AM" -a VM_DIRECT=TRUE MSSQL:ReportServer

Optional parameters for vProxy Engine database-level restores

You can use the following optional parameters with the msagentrc.exe command.

-A "NSR_DFA_SI_DD_LOCKBOX_PATH=<full_path_to_lockbox>"

Specifies the folder that contains the lockbox file, which contains encryptedinformation about the registered hosts and the corresponding usernames in pairs.Each pair is associated with a password that backups use. If you do not specify avalue, the path defaults to the installation path, which is typically C:\ProgramFiles\DPSAPPS\common\lockbox.

-A "DM_PORT=<eCDM_appliance_port_number>"

Specifies the port number to communicate with the eCDM server. The defaultvalue is 8443.

-A "DM_LOG_LEVEL={WARNINGS | INFO | TRACE | DEBUG}"

Specifies the eCDM log level, with WARNINGS providing the least amount ofdetail, and DEBUG providing the most amount of detail.

-A "DM_LOG_TAG=<eCDM_log_tag>"

Specifies the eCDM log tag.

-A "ADDITIONAL_RESTORES={yes | no}"

Specifying yes disables the ability to roll back uncommitted transactions anduses the database to restore the latest or additional transaction logs. The defaultvalue is no.

-A "RENAME_TO=<new_database_name>"

Specifies the new name for the destination database. The selected database willbe restored to the new database. The new name of the database must be a validSQL database name. If the destination contains a database with the same nameas the database that you have specified, the restore operation overwrites theexisting database.The database files that are data files (.mdf and .ndf) and log file (.ldf) will berestored to their source locations only. If the source database exists, its files canbe in use. So, to avoid conflicts for using a new database name, use the -ARELOCATE_TO option along with the -A RENAME_TO option.

-A "INSTANCE_TO=<hostname>\<instance>"

Performs a redirected restore operation to a SQL Server instance that is differentfrom the source instance where the backup was taken.

Restoring Virtual Machine Backups with vProxy Engine

260 Microsoft Application Agent 4.7 SQL Server User Guide

Page 261: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

The target instance must reside on the same system where the restore operationis configured. You cannot restore the backup to an instance on a remote host.

-A "RELOCATE_TO='<source_file-1>'='destination_folder-1','<source_file-2>'='destination_folder-2',[...]"

Performs redirected restores of the database files that are data files (.mdfand .ndf) and log file (.ldf). You can rename or change only the destinationfolders, but not the filenames.Ensure that the destination paths are not root drives, for example, E:\.

-A "NSR_SQL_RECOVER_MODE=<alternate_location_path>"

Performs a redirected restore to the specified path.

-A "NSR_SQL_TARGET_DIR=<destination_folder_path>"

Specifies the destination path, to which you want to copy the restored files. Youcan then manually either move the files to the required folder or attach the filesto a SQL Server instance.Ensure that the destination path is not a root drive, for example, E:\.

-D <debug_level>

Generates detailed logs that you can use to troubleshoot the restore issues. Thesupported debug levels are 1 through 9.

-A "DELETE_DEBUG_LOG_DAYS=<number_of_days>"

Deletes debug log files that are older than the specified number of days. The validrange is between 1 and 32767. By default, debug logs are not deleted. Regularlydeleting debug logs prevents the log folder on the installation drive frombecoming too large.

Note

This parameter only deletes debug logs named in the default format and locatedin the logs folder at <installation_path>\MSAPPAGENT\logs.

Performing SQL Server table-level recovery to a virtualmachine

To recover table-level data, you must first mount the backup, and then browse andrestore the tables using ItemPoint for Microsoft SQL Server.

Note

When you are restoring hybrid backups that use Data Domain Boost for transactionlog backups, you can only mount and restore tables from the level full backups.

Table-level restore operations mount the application-aware virtual machine imagebackup on the target virtual machine.

The Microsoft application agent sends a request to the eCDM appliance to mount theselected backup.

Restoring Virtual Machine Backups with vProxy Engine

Performing SQL Server table-level recovery to a virtual machine 261

Page 262: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

When the backup is mounted, the VMDK images from the virtual machine imagebackup are added to the target-virtual machine and assigned mount points.

The backup is mounted with the eCDM appliance for 4 hours by default. View themounted backup in eCDM on the Instant Access Sessions page.

Note

While the backup images are mounted, you cannot perform any further backups of thevirtual machine.

Restore SQL Server tables with the vProxy Engine SSMS plug-inLearn how to perform a vProxy Engine SQL Server table-level restore operation usingthe Microsoft app agent for vProxy Engine SSMS plug-in.

Launch the Microsoft app agent for vProxy Engine SSMS plug-inProcedure

1. From the Windows Start menu, select Microsoft SQL Server ManagementStudio.

2. In the Microsoft SQL Server Management Studio, in the Connect to Serverwindow, specify the server information and credentials, and then click Connect.

3. In the toolbar, click Microsoft App Agent (vProxy Engine).

The Microsoft app agent for vProxy Engine window appears.

Note

If the Microsoft App Agent (vProxy Engine) button is not on the toolbar, theplug-in may be unable to register. In this scenario, you can launch the plug-indirectly from the start menu. From the Windows Start menu, select DDBMAPlugin for SQL Server Management Studio.

Configure general table restore settingsTo configure SQL table-level restores with the Microsoft app agent for vProxy EngineSSMS plug-in, you must first specify general table restore options on the TableRestore > General page.

Procedure

1. Open the Microsoft app agent for vProxy Engine window to the TableRestore > General page.

The General page appears as shown in the following figure.

Restoring Virtual Machine Backups with vProxy Engine

262 Microsoft Application Agent 4.7 SQL Server User Guide

Page 263: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 55 vProxy Engine: Table Restore General page

2.Beside Data Domain Server, click .

The Data Domain Server List & Lockbox Settings window appears and liststhe Data Domain server and lockbox that is configured in the eCDM ProtectionLife Cycle (PLC) policy. If the Protection Lifecycle policy is configured forreplication, the secondary Data Domain server and storage unit also appear.

3. In the Data Domain Server List & Lockbox Settings window, select the DataDomain server that contains the backup, and then click OK.

The SQL Server host field is updated with the client backups that are availableon the selected Data Domain server.

4. From the SQL Server host list, select the SQL Server host that is the source ofthe backup.

5. Use the Start browsing from list to select a backup save time, and then clickShow Versions.

The SQL Server Instance field and save sets table are updated with thebackups that are within the specified browse time. If no level full backups arefound in the specified time range, you are prompted for confirmation to load thelatest full backup.

6. From the SQL Server Instance list, select the SQL Server instance thatcontains the databases that you want to restore.

The databases located on the SQL Server instance appear in the database tablebelow the SQL Server Instance field.

Restoring Virtual Machine Backups with vProxy Engine

Restore SQL Server tables with the vProxy Engine SSMS plug-in 263

Page 264: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

7. From the databases table, select the database that contains the tables that youwant to restore.

The corresponding save sets appear in the save sets table.

8. In the save sets table, select the save set that contains the tables that you wantto restore.

After you finish

Specify the eCDM server details and additional restore options on the Options page.

Configure table restore optionsWhen you configure SQL table-level restores with the Microsoft app agent for vProxyEngine SSMS plug-in, you can specify additional restore options on the TableRestore > Options page.

Procedure

1. From the left panel, click Options.

The Options page appears as shown in the following figure.

Figure 56 vProxy Engine: Table Restore Options page

2. Under Mount, specify the following fields as required:

l The Mount Folder field specifies the location where backup images aremounted. You cannot edit the value in this field.

l In the Mount Expire list, specify the number of hours, after which themounted backup image must be dismounted. The default value is 4.

Restoring Virtual Machine Backups with vProxy Engine

264 Microsoft Application Agent 4.7 SQL Server User Guide

Page 265: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l To prevent ItemPoint from launching after you run the mount operation,select Do not run ItemPoint after mounting the backup images.Selecting this option disables the Leave backup images mounted afterItemPoint exits option, and enables you to perform manual table-levelrestores.

l To leave the backup images in the mounted state after you close ItemPoint,select Leave backup images mounted after ItemPoint exits.This option is enabled only if you have not selected the Do not runItemPoint after mounting the backup images option.

3. To generate detailed logs, which you can use to troubleshoot the restore issues,select Select a debug level, and then specify a value of 1 through 9. Thedefault value is 0 (zero).

4. To delete debug logs older than a certain number of days, select Delete debuglogs after, and then specify the number of days with a number between 1 and32767 days. The default value is 0 and does not delete any debug logs.

Note

This option only deletes debug logs named in the default format and located inthe logs folder at <installation_path>\MSAPPAGENT\logs.

Regularly deleting debug logs prevents the log folder on the installation drivefrom becoming too large.

5. To limit the backup history of the databases on the General page to a setnumber of days, type or select a number in the Days of backup history field.

The default value is 7 days.If no level full backups are found in the specified time range, you are promptedfor confirmation to load the latest full backup.

6. To use the client name that is provided as-is without converting it to the fullyqualified domain name (FQDN), select Exclude client name resolution.

Use this option to restore backups taken with Microsoft application agentversion 4.5 or earlier that use the short name as the client name.

7. To specify the eCDM appliance, perform the following steps:

a. Beside Appliance Host, click ...

The eCDM Appliance List & Lockbox Settings window appears.When you restore a backup to the original virtual machine, the details for theeCDM appliance that protects the SQL Server in a Protection Policyautomatically appear.

b. If you do not see the eCDM appliance that you want to use for the restoreoperation, click Add, and then in the Add eCDM appliance details dialogbox, perform one of the following actions:

l To add an eCDM with credential-based authentication, specify theappliance hostname and the login credentials.Contact the eCDM administrator to retrieve the eCDM appliance hostand login details.

l To add an eCDM with certificate-based authentication, specify only theappliance hostname. Do not specify the username and password fields.To use certificate-based authentication, the eCDM administrator mustwhitelist the target Microsoft application agent.

Restoring Virtual Machine Backups with vProxy Engine

Restore SQL Server tables with the vProxy Engine SSMS plug-in 265

Page 266: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

When you add a virtual machine to a Protection Policy, that virtualmachine is whitelisted with a certificate that expires after one day. If youare restoring to an alternate virtual machine that is an asset of eCDM butnot a member of a Protection Policy, the eCDM must whitelist the targetvirtual machine.

The eCDM administrator can approve (whitelist) the target Microsoftapplication agent on the eCDM Infrastructure > Application Agentspage.

c. Select the eCDM appliance that will mount the backup, and then click OK.

8. To mount the backup and proceed with the table restore, click Run.

Monitor the table restore mount operationAfter a table-level restore mount operation is run from the Microsoft app agentvProxy Engine SSMS plug-in, the Table Restore > Monitor page displays the mountscript and status.

The following figure shows the mount information and status as it appears on theMonitor page.

Figure 57 vProxy Engine: Table Restore Monitor page

Restoring Virtual Machine Backups with vProxy Engine

266 Microsoft Application Agent 4.7 SQL Server User Guide

Page 267: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

For information about the success or failure of the restore operation, review the logfiles that are located in the installation folder. The typical location of the log files is C:\Program Files\DPSAPPS\MSAPPAGENT\logs.

Restore table-level data using ItemPointAfter the backup images are mounted using the Microsft application agent SSMSplug-in, complete the table-level restore using ItemPoint for Microsoft SQL Server.

Before you begin

Configure and run the table level restore operation with the Table Restore tab in theMicrosoft application agent SSMS plug-in.

Once the table level restore is configured and run through the Microsoft applicationagent SSMS plug-in, ItemPoint launches.

If you select Do not run ItemPoint after mounting the backup images when youconfigure the table level restore, you must manually launch ItemPoint, and then launchthe Data Wizard.

Procedure

1. On the Select Source page, select the source backup files from the mountedvolume that contains the SQL backup data as shown in the following figure, andthen click Next.

Figure 58 ItemPoint Data Wizard: select the source files

2. On the Select Target Server page, specify the details and login credentials forthe target SQL Server and database.

The following figure shows the ItemPoint Data Wizard Select Target Serverpage:

Restoring Virtual Machine Backups with vProxy Engine

Restore SQL Server tables with the vProxy Engine SSMS plug-in 267

Page 268: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 59 ItemPoint Data Wizard: select the target server

3. Click Finish.

The Data Wizard closes and ItemPoint loads the tables contained in the sourcebackup files.

4. Use ItemPoint to browse and restore the individual tables.

Note

The ItemPoint for Microsoft SQL Server User Guide provides more information onusing ItemPoint for Microsoft SQL Server to restore table-level data.

5. To dismount the mounted backup images, exit ItemPoint for Microsoft SQLServer.

Note

If you select Leave backup images mounted after ItemPoint exits or Do notrun ItemPoint after mounting the backup images when you configure themount operation, the backup image remains mounted for 4 hours. To dismountthe backup manually, use the msagentadmin command.

Restoring Virtual Machine Backups with vProxy Engine

268 Microsoft Application Agent 4.7 SQL Server User Guide

Page 269: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restore SQL Server tables with the vProxy Engine recover commandLearn how to perform a vProxy Engine SQL Server table-level restore operation usinga command prompt.

Mount vProxy Engine backups for table-level recovery using the command promptUse the msagentrc.exe command with the -A NSR_RESTORE_TYPE=mountparameter to mount backups for table-level recovery.

Type the recover command with the following syntax to mount vProxy Engine backupimages:

msagentrc.exe -c <client_or_hostname> -A NSR_RESTORE_TYPE=mount -A "NSR_DFA_SI_DD_HOST=<Data_Domain_Server_Name>" -A "NSR_DFA_SI_DD_USER=<DDBoost_Username>" -A "NSR_DFA_SI_DEVICE_PATH=</Storage_Unit_Name>" -A "DM_HOST=<eCDM_appliance_hostname>" -A "DM_USER=<eCDM_appliance_tenant_user>" [-A "DM_PORT=<eCDM_appliance_port_number>"] [-A "DM_MOUNT_TIMEOUT=<number_of_minutes>"] [-A "NSR_DFA_SI_DD_LOCKBOX_PATH=<full_path_to_lockbox>"]I - -t <save_time> <restore_path>

where:

-c <client_or_hostname>

Specifies the client name that was used for the backup.

-A NSR_RESTORE_TYPE=mount

Specifies a mount operation

-A "NSR_DFA_SI_DD_HOST=<server_name>"

Specifies the name of the Data Domain server that contains the backup.When you have a remote (secondary) Data Domain server that has replicateddatabases to restore, type the name of the secondary server. A Data Domain useron the secondary Data Domain server must be in the same group as the primaryData Domain server.

-A "NSR_DFA_SI_DD_USER=<DDBoost_user>"

Specifies the username of the DD Boost user.You must register the hostname and the DD Boost username in the lockbox toenable Microsoft application agent to retrieve the password for the registereduser.

-A "NSR_DFA_SI_DEVICE_PATH=<storage_unit_and_path>"

Specifies the name and the path of the storage unit that contains the backup.

-A "DM_HOST=<eCDM_appliance_hostname>"

Specifies the eCDM appliance hostname or IP address.

-A "DM_USER=<eCDM_appliance_user>"

Specifies the username to use for the eCDM connection.This parameter is mandatory only for credential-based access to the eCDMappliance. You are not required to specify this parameter when the Microsoftapplication agent is whitelisted by eCDM.

Restoring Virtual Machine Backups with vProxy Engine

Restore SQL Server tables with the vProxy Engine recover command 269

Page 270: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

When you add a virtual machine to a Lifecycle group, that virtual machine iswhitelisted with a certificate that expires after one day. The eCDM administratorcan approve (whitelist) the target Microsoft application agent on the eCDMInfrastructure > Agents page.

-A "DM_PORT=<eCDM_appliance_port_number>"

(Optional) Specifies the port number to communicate with the eCDM server. Thedefault value is 8443.

-A "DM_MOUNT_TIMEOUT=<number_of_minutes>"

(Optional) Specifies the amount of time in minutes until the mount times out. Thedefault value is 4 hours (240 minutes).

-A "NSR_DFA_SI_DD_LOCKBOX_PATH=<full_path_to_lockbox>"

(Optional) Specifies the folder that contains the lockbox file, which containsencrypted information about the registered hosts and the correspondingusernames in pairs. Each pair is associated with a password that backups use. Ifyou do not specify a value, the path defaults to the installation path, which istypically C:\Program Files\DPSAPPS\common\lockbox.

-t <save_time>

Specifies the save time of the backup. Specify this parameter along with therestore path for each database in the restore operation. The application pausesfor you to input this option line by line. Press Enter to move to the next line. Ablank line indicates completion of the list.

<restore_path>

Specifies the path to the objects that you want to restore.Type the backup path in one of the following formats:

l For a default instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<backup_client_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<backup_client_name>\<database_name>\[...]\

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158\dbtest3"

l For a named instance, type the path in one of the following formats:

n To restore a backup of the entire instance, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>

n To restore a backup of specific databases, type APPLICATIONS:\SqlServerWriter\<URL-encoded_SQL_instance_name>\<database_name>\ [...]\The <URL-encoded_SQL_instance_name> is typically<backup_client_name>%5C<SQL_instance_name>

For example: "APPLICATIONS:\SqlServerWriter\LEDMF158%5Cinst1\dbtest3"

Restoring Virtual Machine Backups with vProxy Engine

270 Microsoft Application Agent 4.7 SQL Server User Guide

Page 271: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restore table-level data using ItemPointProcedure

1. Launch the command prompt.

2. Run the following command:

C:\Program Files (x86)\DPSAPPS\MSAPPAGENT\ItemPoint\Sql\EMCIPSQL.exe

The ItemPoint for Microsoft SQL Server appears.

3. Launch the Data Wizard.

The Data Wizard appears to the Select Source page.

4. On the Select Source page, select the source backup files from the mountedvolume that contains the SQL backup data as shown in the following figure, andthen click Next.

Figure 60 ItemPoint Data Wizard: select the source files

5. On the Select Target Server page, specify the details and login credentials forthe target SQL Server and database.

The following figure shows the ItemPoint Data Wizard Select Target Serverpage:

Restoring Virtual Machine Backups with vProxy Engine

Restore SQL Server tables with the vProxy Engine recover command 271

Page 272: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Figure 61 ItemPoint Data Wizard: select the target server

6. Click Finish.

The Data Wizard closes and ItemPoint loads the tables contained in the sourcebackup files.

7. Use ItemPoint to browse and restore the individual tables.

Note

The ItemPoint for Microsoft SQL Server User Guide provides more information onusing ItemPoint for Microsoft SQL Server to restore table-level data.

After you finish

Dismount the backups using the msagentadmin.exe command.

Dismount the backup imagesYou must dismount the backup images after the table-level restore operation iscomplete.

To dismount the backup images, run the following command:

msagentadmin dismount --ddhost "<Data_Domain_server_name>" --ddpath "<name_and_path_of_storage_unit>" --dduser "<DDBoost_username>" --dmhost "<eCDM_appliance_hostname>" -–dmport “<eCDM_appliance_port>” [--lockbox <path>]

where:

dismount

Specifies an operation to dismount backups.

--ddhost "<name>"

Restoring Virtual Machine Backups with vProxy Engine

272 Microsoft Application Agent 4.7 SQL Server User Guide

Page 273: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Specifies the name of the Data Domain server that contains the storage unit, towhich you backed up the databases.

--ddpath "/<storage_unit_name_and_path>"

Specifies the name and the path of the storage unit, to which you backed up thedatabases.

--dduser "<DDBoost_user>"

Specifies the username of the DD Boost user.

---dmhost "<eCDM_appliance_hostname>"

Specifies the eCDM appliance hostname or IP address.

--dmport “<eCDM_appliance_port>”

Specifies the port number to communicate with the eCDM server. The defaultvalue is 8443.

--lockbox <path>

(Optional) Specifies the folder that contains the lockbox file, which containsencrypted information about the registered hosts and the correspondingusernames in pairs. Each pair is associated with a password that backups use. Ifyou do not specify a value, the path defaults to the installation path, which istypically C:\Program Files\DPSAPPS\common\lockbox.

Example 42 Example vProxy Engine dismount command

msagentadmin.exe dismount --ddhost mars.jupiter.emc.com --ddpath /PLC-PROTECTION-123456 --dduser PLC-PROTECTION-USER --dmhost 11.22.333.44 --dmport 8443 --lockbox "C:\Program Files\DPSAPPS\common\lockbox"

Restoring Virtual Machine Backups with vProxy Engine

Restore SQL Server tables with the vProxy Engine recover command 273

Page 274: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Restoring Virtual Machine Backups with vProxy Engine

274 Microsoft Application Agent 4.7 SQL Server User Guide

Page 275: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

PART 4

Troubleshooting

This part includes the following chapters:

Chapter 9, "Troubleshooting Resources"

Chapter 10, "Troubleshooting Data Domain Boost Issues"

Chapter 11, "Troubleshooting ProtectPoint Issues"

Troubleshooting 275

Page 276: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Troubleshooting

276 Microsoft Application Agent 4.7 SQL Server User Guide

Page 277: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 9

Troubleshooting Resources

This chapter includes the following sections:

l Error codes in the msagentadmin administration command output.................. 278l Expiry tool command return (error) codes....................................................... 278

Troubleshooting Resources 277

Page 278: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Error codes in the msagentadmin administration commandoutput

The Microsoft application agent enables the msagentadmin administrationcommand to report the severity of the error and the unique message IDs thatassociate with the error.

The following table lists the return codes and description:

Table 17 Return codes and description

Return code Description

0 Success

1 Error or notice

2 Warning

3, 4, or 5 Major error

Only the return code 0 indicates that the operation has succeeded. Other returncodes indicate failure.

Note

The return codes are mapped to the severity, which is set when the error occurs.Potential errors, which you cannot control, can occur at any time. The severity of onlya few errors are consistently or correctly set. So, use the return codes only as a hintor a guide.

Expiry tool command return (error) codesThe Microsoft application agent enables the expiry tool to report the severity of theerror and the unique message IDs that associate with the error.

The following table lists the return codes and description:

Table 18 Return codes and description

Return code Description

0 Success

1 Error or notice

2 Warning

3, 4, or 5 Major error

Only the return code 0 indicates that the operation has succeeded. Other returncodes indicate failure.

Troubleshooting Resources

278 Microsoft Application Agent 4.7 SQL Server User Guide

Page 279: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Note

The return codes are mapped to the severity, which is set when the error occurs.Potential errors that you cannot control can occur at any time. The severity of only afew errors are consistently or correctly set. Use the return codes only as a hint or aguide.

Examples

l When you perform a delete operation, and when there are no backups in thespecified save time range, the following error appears:

C:\Program Files\DPSAPPS\MSAPPAGENT\bin>ddbmexptool -d -z c:\tmp\config.txt -e "10 days ago" -n mssql108012:ddbmexptool:The media database range lookup could not find any save sets in the specified range.C:\Program Files\DPSAPPS\MSAPPAGENT\bin>echo %errorlevel%2

This error does not need your intervention.

l When you perform a delete operation, and when you incorrectly specified theapplication ID, the following error appears:

C:\Program Files\DPSAPPS\MSAPPAGENT\bin>ddbmexptool -d -z c:\tmp\config.txt -e "10 days ago" -n mssqly127178:ddbmexptool:Application name 'mssqly' is unknown. Supported application names are: mssql.C:\Program Files\DPSAPPS\MSAPPAGENT\bin>echo %errorlevel%5

This error needs your intervention to correctly specify the application ID.

Troubleshooting Resources

Expiry tool command return (error) codes 279

Page 280: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Troubleshooting Resources

280 Microsoft Application Agent 4.7 SQL Server User Guide

Page 281: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 10

Troubleshooting Data Domain Boost Issues

This chapter includes the following sections:

l SQL Server Management Studio plug-in is hidden........................................... 282l Instant file initialization warning appears..........................................................282

Troubleshooting Data Domain Boost Issues 281

Page 282: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

SQL Server Management Studio plug-in is hiddenIssueIn the Microsoft SQL Server Management Studio (SSMS), the Microsoft app agentfor Application Direct plug-in and the Microsoft app agent for Storage Direct plug-incan be hidden.

This issue occurs when the SSMS toolbar does not have room to display the Microsoftapp agent plug-in button.

Workaround

On the far right of the toolbar, click to display the hidden Microsoft app agentplug-in button. To unhide the button from the toolbar, customize the toolbar to dockthe Microsoft app agent plug-in button at the top.

Instant file initialization warning appearsDuring a Data Domain Boost SQL Server restore operation, if you did not enable theinstant file initialization feature on the SQL Server, the following warning messageappears:

Instant file initialization is not enabled; please enable this feature for improved restore performance.

This warning does not prevent the restore operation from completing successfully.

The Microsoft SQL Server documentation provides information about how to enablethe database instant file initialization feature on the SQL Server.

Troubleshooting Data Domain Boost Issues

282 Microsoft Application Agent 4.7 SQL Server User Guide

Page 283: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

CHAPTER 11

Troubleshooting ProtectPoint Issues

This chapter includes the following sections:

l Troubleshooting mount failures........................................................................284l SQL Server Management Studio plug-in is hidden........................................... 286l Failed to set up SymAPi handle: Unable to list VMax arrays :

SYMAPI_C_NO_SYMM_DEVICES_FOUND....................................................286l Rollback restore fails with the error "The process cannot access the file".......286l ResyncLuns: SymSnapvxControl failed for Target Device = 01441. Error: The

Device(s) is (are) already in the desired state or mode.................................... 287l Rollback restore fails when the VMAX LUNs are unavailable............................ 287l The log file contains messages about VSS snapshot failure with code

0x80042306.....................................................................................................288l Registry keys are overwritten when the Solutions Enabler is installed after the

Microsoft application agent............................................................................. 289l Remove the link between the source devices and the backup (FTS) devices on

Data Domain and terminate the snapvx session............................................... 290

Troubleshooting ProtectPoint Issues 283

Page 284: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Troubleshooting mount failuresSometimes the mount operations fail because vdisks are in the locked/in use state.

To troubleshoot the problem, perform the following steps:

Procedure

1. View the status of the vdisks by running the following command:

msagentadmin devmaint -z <full_path_to_the_configuration_file>

Consider the following example command:

msagentadmin devmaint -z C:\Only-Vmax-DD-Config-Details.txt

Output similar to the following appears:

Physical Device World Wide Name Data Domain Device Restore Pool Restore Group\\.\PHYSICALDRIVE5 600218800000008e4d057b6d30c037be vdisk-dev1979 esx_pool E16Vmax10-31-228-167.dg [locked/in use]\\.\PHYSICALDRIVE6 600218800000008e4d057b6d30c037bf vdisk-dev1980 esx_pool E16Vmax10-31-228-167.dg [locked/in use]\\.\PHYSICALDRIVE7 600218800000008e4d057b6d30c037c0 vdisk-dev1981 esx_pool E16Vmax10-31-228-167.dg [locked/in use]

2. Unlock the vdisks by running the following command:

msagentadmin devmaint -z <full_path_to_the_configuration_file> --clear *

Consider the following example command:

msagentadmin devmaint -z C:\Only-Vmax-DD-Config-Details.txt --clear *

Output similar to the following appears:

Forcing a clear (unlock) on device 600218800000008e4d057b6d30c037be'\\.\PHYSICALDRIVE5' cleared (was locked by 'E16Node1-Vmax.PP-Vmax.MsAppQA:26C152C9-7082-45E0-9BC4-2BFCBD6975C4').Forcing a clear (unlock) on device 600218800000008e4d057b6d30c037bf'\\.\PHYSICALDRIVE6' cleared (was locked by 'E16Node1-Vmax.PP-Vmax.MsAppQA:26C152C9-7082-45E0-9BC4-2BFCBD6975C4').Forcing a clear (unlock) on device 600218800000008e4d057b6d30c037c0'\\.\PHYSICALDRIVE7' cleared (was locked by 'E16Node1-Vmax.PP-Vmax.MsAppQA:26C152C9-7082-45E0-9BC4-2BFCBD6975C4').

Troubleshooting ProtectPoint Issues

284 Microsoft Application Agent 4.7 SQL Server User Guide

Page 285: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Use the <diskshadow> command 'delete shadows' to delete orphan VSS shadow sets if necessary.Physical Device World Wide Name Data Domain Device Restore Pool Restore Group\\.\PHYSICALDRIVE5 600218800000008e4d057b6d30c037be vdisk-dev1979 esx_pool E16Vmax10-31-228-167.dg\\.\PHYSICALDRIVE6 600218800000008e4d057b6d30c037bf vdisk-dev1980 esx_pool E16Vmax10-31-228-167.dg\\.\PHYSICALDRIVE7 600218800000008e4d057b6d30c037c0 vdisk-dev1981 esx_pool E16Vmax10-31-228-167.dg

3. Delete the stale entries or orphan VSS shadow sets:

a. Run the diskshadow.exe command.

b. To delete the shadows, type delete shadows all, and press Enter.

c. To exit the command prompt, type Exit, and press Enter.

4. Delete all the entries in the <Product_installation_folder>\config\mounts folder.

Note

Performing this step dismounts all the active mounts.

5. To ensure that the vdisks are unlocked, view the status of the vdisks by runningthe following command:

msagentadmin devmaint -z <full_path_to_the_configuration_file>

Consider the following example command:

msagentadmin devmaint -z C:\Only-Vmax-DD-Config-Details.txt

Output similar to the following appears:

Physical Device World Wide Name Data Domain Device Restore Pool Restore Group\\.\PHYSICALDRIVE5 600218800000008e4d057b6d30c037be vdisk-dev1979 esx_pool E16Vmax10-31-228-167.dg\\.\PHYSICALDRIVE6 600218800000008e4d057b6d30c037bf vdisk-dev1980 esx_pool E16Vmax10-31-228-167.dg\\.\PHYSICALDRIVE7 600218800000008e4d057b6d30c037c0 vdisk-dev1981 esx_pool E16Vmax10-31-228-167.dg

Troubleshooting ProtectPoint Issues

Troubleshooting mount failures 285

Page 286: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

SQL Server Management Studio plug-in is hiddenIssueIn the Microsoft SQL Server Management Studio (SSMS), the Microsoft app agentfor Application Direct plug-in and the Microsoft app agent for Storage Direct plug-incan be hidden.

This issue occurs when the SSMS toolbar does not have room to display the Microsoftapp agent plug-in button.

Workaround

On the far right of the toolbar, click to display the hidden Microsoft app agentplug-in button. To unhide the button from the toolbar, customize the toolbar to dockthe Microsoft app agent plug-in button at the top.

Failed to set up SymAPi handle: Unable to list VMax arrays :SYMAPI_C_NO_SYMM_DEVICES_FOUND

IssueThe hardware provider fails and logs a message similar to the following:

Failed to set up SymAPi handle: Unable to list VMax arrays : SYMAPI_C_NO_SYMM_DEVICES_FOUND

WorkaroundEnsure that the Solutions Enabler database is up-to-date by running the followingcommand:

symcfg discover

Rollback restore fails with the error "The process cannotaccess the file"

IssueRollback restore fails with following error:

CreateFile(\\.\PHYSICALDRIVE<name>), 0x80070020, The process cannot access the file because it is being used by another process.

VSS requires exclusive access to the devices that you restore so that it can changetheir status to offline to perform a volume restore. During the volume restore, if anyprocesses access these devices, VSS fails and the restore aborts. The devices areoffline. You must manually change their status to online.

WorkaroundEnsure that the following rollback requirements are met:

Troubleshooting ProtectPoint Issues

286 Microsoft Application Agent 4.7 SQL Server User Guide

Page 287: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l Ensure that you have provisioned the array according to the Solutions Enabler’srecommendations. The Solutions Enabler documentation provides informationabout provisioning arrays for optimal performance.

l Ensure that external programs, for example, Windows Disk Management, do notuse the disks.

ResyncLuns: SymSnapvxControl failed for Target Device =01441. Error: The Device(s) is (are) already in the desiredstate or mode

IssueThe VMAX hardware provider log file contains the following message:

ResyncLuns: SymSnapvxControl failed for Target Device = 01441. Error: The Device(s) is (are) already in the desired state or mode

This error indicates that the snapshot is not properly closed.

Example 43 Workaround

1. List the STD devices by running the following command:

symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID> list

2. In the output, if the R flag contains X for the snapshot, delete the snapshot byrunning the following command:

symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID> -snapshot_name <Snapshot_Name> terminate -restored

Rollback restore fails when the VMAX LUNs are unavailableIssueTo perform rollback restores, the VMAX hardware provider uses temporary restoreLUNs. If the restore LUNs are not available, the resyncluns operation fails and displaysthe following message:

ResyncLuns: Failed to select restore eLUN for Static Image <GUID>

When you provision a new VMAX array with production LUNs, you must additionallyprovide at least one eLUN. When you perform a restore, the array uses the eLUN toinstantiate static images before it copies the images to the production LUN.

To select an eLUN, ensure that you meet the following requirements:

l The size of the eLUN is either more than or the same as the size of the staticimage to restore.

l The eLUN is a Data Domain-encapsulated device.

l The array can access the eLUN.

Troubleshooting ProtectPoint Issues

ResyncLuns: SymSnapvxControl failed for Target Device = 01441. Error: The Device(s) is (are) already in the desired state or

mode 287

Page 288: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

l The eLUN is in the ready state.If the VMAX hardware provider cannot find the restore eLUNs, perform thefollowing steps to ensure that the array is in the restorable state:

Example 44 Workaround

1. If you are using the Windows Disk Management program, ensure that all of therestore eLUNs are offline. Otherwise, when the VSS brings the restored volumeonline, Windows will detect two disks with identical disk signatures. This causesthe resync restore operation to fail and can introduce instability to the array.

2. Ensure that the restore eLUNs do not have snapshots linked to them by runningthe following command for each restore eLUN:

symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID> list

For example: symsnapfx -sid 031 -devs 03E list3. If the output of the command in step 2 does not contain the No snapshot was

found message, delete the snapshot by running the following command:

symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID> -snapshot_name <Snapshot_Name> terminate

For example: symsnapvx -sid 031 -devs 03E -nameVSS_121938_10192016 terminate

4. Move the eLUN to the ready state by running the following command:

symdev -sid <Symmetrix_VMAX_ID> ready -devs <STD_Device_ID>

For example: symdev -sid 031 ready 03E

The log file contains messages about VSS snapshot failurewith code 0x80042306

IssueThe log files contain messages about the VSS snapshot failure with the code0x80042306.

Example 45 Workaround

Disable the VSS ProtectPoint hardware provider:

1. By using the administrator command prompt, go to the<Product_Installation_Folder>\MSAPPAGENT\bin folder.

Troubleshooting ProtectPoint Issues

288 Microsoft Application Agent 4.7 SQL Server User Guide

Page 289: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 45 Workaround (continued)

2. Unregister the VSS ProtectPoint hardware provider service by running thefollowing command:

regsvr32 /u VSSPPHwp.dll

3. Unload the VSS ProtectPoint hardware provider service by performing one of thefollowing steps:

l Wait for approximately 15 minutes for the service to automatically unload.

l Restart the host.

Registry keys are overwritten when the Solutions Enabler isinstalled after the Microsoft application agent

IssueThe Solution Enabler should be installed before the Microsoft application agent.

If you install the Solution Enabler after you install the Microsoft application agent, theVMAX registry key settings are overwritten with the Microsoft application agentdefault settings.

Example 46 Workaround

Use the following steps to manually set registry keys:

1. Run the following commands, which are mandatory to set registry keys:

a. reg add "HKLM\SOFTWARE\EMC\ShadowCopy" /v "EnforceTimefinderVX" /t REG_SZ /d "True"

b. reg add "HKLM\SOFTWARE\EMC\ShadowCopy" /v "SelectVXTarget" /t REG_SZ /d "ANY"

c. reg add "HKLM\SOFTWARE\EMC\ShadowCopy" /v "RetainVXTarget" /t REG_SZ /d "True"

d. reg add "HKLM\SOFTWARE\EMC\ShadowCopy" /v "VXTimeToLive" /t REG_SZ /d "1"

e. reg add "HKLM\SOFTWARE\EMC\ShadowCopy" /v "SymmetrixStaticMount" /t REG_SZ /d "True"

2. (Optional) To create the C:\Program Files\EMC\SYMAPI\log\hwprov.txtlog file that contains full debug information, run the following additionalcommands.This step is useful when you need to provide full debug information whilecontacting support.

a. reg add "HKLM\SOFTWARE\EMC\ShadowCopy" /f /v "LogFile" /t REG_SZ /d "hwprov.txt"

Troubleshooting ProtectPoint Issues

Registry keys are overwritten when the Solutions Enabler is installed after the Microsoft application agent 289

Page 290: Microsoft Application Agent for SQL Server User Guide · 2020-08-06 · SQL Server transparent data encryption ... Deleting backups.....127 Delete backups with the msagentadmin administration

Example 46 Workaround (continued)

b. reg add "HKLM\SOFTWARE\EMC\ShadowCopy" /f /v "LogLevel" /t REG_SZ /d "Debug"

c. reg add "HKLM\SOFTWARE\EMC\ShadowCopy" /f /v "LogPath" /t REG_SZ /d "C:\Program Files\EMC\SYMAPI\log"

Remove the link between the source devices and the backup(FTS) devices on Data Domain and terminate the snapvxsession

IssueYou may be required to remove the link between the source devices and the backup(FTS) devices on Data Domain and terminate the snapvx session.

NOTICE

Perform this procedure with caution. This action will force all blocks to move in thenext backup.

Example 47 Workaround

1. Identify the snapshot to delete or clean up by running the following command:

symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID> list

2. Unlink the source device and the backup device by running the followingcommand:

symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID> -lndevs <Backup_Device_ID> -snapshot_name <Snapshot_Name> unlink -symforce

3. Delete the snapshot by running the following command:

symsnapvx -sid <Symmetrix_VMAX_ID> -devs <STD_Device_ID> -snapshot_name <Snapshot_Name> terminate

Note

This procedure does not delete the snapshots on Data Domain.

Troubleshooting ProtectPoint Issues

290 Microsoft Application Agent 4.7 SQL Server User Guide