从 SQL Server 数据库备份克隆
您可以使用SnapCenter克隆 SQL Server 数据库备份。如果您想访问或恢复旧版本的数据,您可以根据需要克隆数据库备份。
-
您应该已经通过完成添加主机、识别资源和创建存储系统连接等任务为数据保护做好了准备。
-
您应该已经备份数据库或资源组。
-
数据 LUN 和日志 LUN 的保护类型(例如镜像、保管库或镜像保管库)应该相同,以便在使用日志备份克隆到备用主机期间发现辅助定位器。
-
如果在SnapCenter克隆操作期间找不到已安装的克隆驱动器,则应将SnapCenter Server 的 CloneRetryTimeout 参数更改为 300。
-
您应确保托管卷的聚合位于存储虚拟机 (SVM) 的已分配聚合列表中。
-
克隆到独立数据库实例时,请确保挂载点路径存在并且是专用磁盘。
-
克隆到故障转移群集实例 (FCI) 时,请确保挂载点存在、它是共享磁盘,并且路径和 FCI 应该属于同一个 SQL 资源组。
-
确保每个主机仅连接一个 vFC 或 FC 启动器。这是因为, SnapCenter每个主机仅支持一个启动器。
-
如果源数据库或目标实例位于集群共享卷(csv)上,则克隆的数据库将位于 csv 上。
-
SCRIPTS_PATH 是使用插件主机的 SMCoreServiceHost.exe.Config 文件中的 PredefinedWindowsScriptsDirectory 键定义的。
如果需要,您可以更改此路径并重新启动 SMcore 服务。为了安全起见,建议您使用默认路径。
可以通过 API 从 Swagger 显示该键的值:API /4.7/configsettings
您可以使用 GET API 来显示键的值。不支持 SET API。
|
对于虚拟环境(VMDK/RDM),确保挂载点是专用磁盘。 |
-
对于ONTAP 9.12.1 及以下版本、作为恢复的一部分从SnapLock Vault 快照创建的克隆将继承SnapLock Vault 到期时间。存储管理员应在SnapLock到期后手动清理克隆。
-
在左侧导航窗格中,选择“资源”,然后从列表中选择“适用于 SQL Server 的SnapCenter插件*”。
-
在资源页面中,从*视图*列表中选择*数据库*或*资源组*。
不支持克隆实例的备份。 -
选择数据库或资源组。
-
从*管理副本*视图页面中,选择来自主或辅助(镜像或保管)存储系统的备份。
-
选择备份,然后选择*
*.
-
在“克隆选项”页面中,执行以下操作:
对于这个领域… 操作 克隆服务器
选择要创建克隆的主机。
克隆实例
选择要将数据库备份克隆到的克隆实例。
此 SQL 实例必须位于指定的克隆服务器中。
克隆后缀
输入将附加到克隆文件名的后缀,以标识该数据库是克隆的。
例如,db1_clone。如果要克隆到与原始数据库相同的位置,则必须提供后缀以区分克隆的数据库和原始数据库。否则,操作失败。
自动分配挂载点或自动分配路径下的卷挂载点
选择是否自动分配挂载点或路径下的卷挂载点。
自动分配路径下的卷挂载点:路径下的挂载点允许您提供特定的目录。挂载点将在该目录内创建。在选择此选项之前,您必须确保目录为空。如果目录中存在数据库,则挂载操作后数据库将处于无效状态。
-
在日志页面中,选择以下选项之一:
对于这个领域… 操作 无
当您只想克隆完整备份而不克隆任何日志时,请选择此选项。
所有日志备份
选择此选项可以克隆完整备份之后的所有可用日志备份。
通过日志备份直到
选择此选项可根据所选日期的备份日志创建的备份日志克隆数据库。
按特定日期直至
指定事务日志不再应用于克隆数据库的日期和时间。
此时间点克隆会停止在指定日期和时间之后记录的事务日志条目的克隆。
-
在*脚本*页面中,分别输入脚本超时、路径以及克隆操作之前或之后应运行的预脚本或后脚本的参数。
例如,您可以运行脚本来更新 SNMP 陷阱、自动发出警报、发送日志等。
前言或后记路径不应包含驱动器或共享。该路径应相对于 SCRIPTS_PATH。 默认脚本超时为 60 秒。
-
在*通知*页面中,从*电子邮件首选项*下拉列表中,选择您想要发送电子邮件的场景。
您还必须指定发件人和收件人的电子邮件地址以及电子邮件的主题。如果您想附加执行的克隆操作的报告,请选择*附加作业报告*。
对于电子邮件通知,您必须使用 GUI 或 PowerShell 命令 Set-SmSmtpServer 指定 SMTP 服务器详细信息。 对于 EMS,您可以参考 "管理 EMS 数据收集"
-
查看摘要,然后选择*完成*。
-
通过选择 Monitor > Jobs 来监控操作进度。
创建克隆后,您永远不应对其进行重命名。
-
使用 Open-SmConnection cmdlet 为指定用户启动与SnapCenter服务器的连接会话。
Open-SmConnection -SMSbaseurl https://snapctr.demo.netapp.com:8146
-
列出可以使用 Get-SmBackup 或 Get-SmResourceGroup cmdlet 克隆的备份。
此示例显示有关所有可用备份的信息:
C:\PS>PS C:\> Get-SmBackup BackupId BackupName BackupTime BackupType -------- ---------- ---------- ---------- 1 Payroll Dataset_vise-f6_08... 8/4/2015 Full Backup 11:02:32 AM 2 Payroll Dataset_vise-f6_08... 8/4/2015 11:23:17 AM
此示例显示有关指定资源组、其资源和相关策略的信息:
PS C:\> Get-SmResourceGroup -ListResources –ListPolicies Description : CreationTime : 8/4/2015 3:44:05 PM ModificationTime : 8/4/2015 3:44:05 PM EnableEmail : False EmailSMTPServer : EmailFrom : EmailTo : EmailSubject : EnableSysLog : False ProtectionGroupType : Backup EnableAsupOnFailure : False Policies : {FinancePolicy} HostResourceMaping : {} Configuration : SMCoreContracts.SmCloneConfiguration LastBackupStatus : VerificationServer : EmailBody : EmailNotificationPreference : Never VerificationServerInfo : SMCoreContracts.SmVerificationServerInfo SchedulerSQLInstance : CustomText : CustomSnapshotFormat : SearchResources : False ByPassCredential : False IsCustomSnapshot : MaintenanceStatus : Production PluginProtectionGroupTypes : {SMSQL} Name : Payrolldataset Type : Group Id : 1 Host : UserName : Passphrase : Deleted : False Auth : SMCoreContracts.SmAuth IsClone : False CloneLevel : 0 ApplySnapvaultUpdate : False ApplyRetention : False RetentionCount : 0 RetentionDays : 0 ApplySnapMirrorUpdate : False SnapVaultLabel : MirrorVaultUpdateRetryCount : 7 AppPolicies : {} Description : FinancePolicy PreScriptPath : PreScriptArguments : PostScriptPath : PostScriptArguments : ScriptTimeOut : 60000 DateModified : 8/4/2015 3:43:30 PM DateCreated : 8/4/2015 3:43:30 PM Schedule : SMCoreContracts.SmSchedule PolicyType : Backup PluginPolicyType : SMSQL Name : FinancePolicy Type : Id : 1 Host : UserName : Passphrase : Deleted : False Auth : SMCoreContracts.SmAuth IsClone : False CloneLevel : 0 clab-a13-13.sddev.lab.netapp.com DatabaseGUID : SQLInstance : clab-a13-13 DbStatus : AutoClosed DbAccess : eUndefined IsSystemDb : False IsSimpleRecoveryMode : False IsSelectable : True SqlDbFileGroups : {} SqlDbLogFiles : {} AppFileStorageGroups : {} LogDirectory : AgName : Version : VolumeGroupIndex : -1 IsSecondary : False Name : TEST Type : SQL Database Id : clab-a13-13\TEST Host : clab-a13-13.sddev.mycompany.com UserName : Passphrase : Deleted : False Auth : SMCoreContracts.SmAuth IsClone : False
-
使用 New-SmClone cmdlet 从现有备份启动克隆操作。
此示例从包含所有日志的指定备份创建克隆:
PS C:\> New-SmClone -BackupName payroll_dataset_vise-f3_08-05-2015_15.28.28.9774 -Resources @{"Host"="vise-f3.sddev.mycompany.com"; "Type"="SQL Database";"Names"="vise-f3\SQLExpress\payroll"} -CloneToInstance vise-f3\sqlexpress -AutoAssignMountPoint -Suffix _clonefrombackup -LogRestoreType All -Policy clonefromprimary_ondemand PS C:> New-SmBackup -ResourceGroupName PayrollDataset -Policy FinancePolicy
此示例创建指定 Microsoft SQL Server 实例的克隆:
PS C:\> New-SmClone -BackupName "BackupDS1_NY-VM-SC-SQL_12-08-2015_09.00.24.8367" -Resources @{"host"="ny-vm-sc-sql";"Type"="SQL Database"; "Names"="ny-vm-sc-sql\AdventureWorks2012_data"} -AppPluginCode SMSQL -CloneToInstance "ny-vm-sc-sql" -Suffix _CLPOSH -AssignMountPointUnderPath "C:\SCMounts"
-
使用 Get-SmCloneReport cmdlet 查看克隆作业的状态。
此示例显示指定作业 ID 的克隆报告:
PS C:\> Get-SmCloneReport -JobId 186 SmCloneId : 1 SmJobId : 186 StartDateTime : 8/3/2015 2:43:02 PM EndDateTime : 8/3/2015 2:44:08 PM Duration : 00:01:06.6760000 Status : Completed ProtectionGroupName : Draper SmProtectionGroupId : 4 PolicyName : OnDemand_Clone SmPolicyId : 4 BackupPolicyName : OnDemand_Full_Log SmBackupPolicyId : 1 CloneHostName : SCSPR0054212005.mycompany.com CloneHostId : 4 CloneName : Draper__clone__08-03-2015_14.43.53 SourceResources : {Don, Betty, Bobby, Sally} ClonedResources : {Don_DRAPER, Betty_DRAPER, Bobby_DRAPER, Sally_DRAPER}
可以通过运行_Get-Help command_name_来获取有关可与 cmdlet 一起使用的参数及其描述的信息。或者,您也可以参考 "SnapCenter软件 Cmdlet 参考指南"。