Backup-SCVMMServer

备份 Virtual Machine Manager 数据库。

语法

Backup-SCVMMServer
      -Path <String>
      [-VMMServer <ServerConnection>]
      [-RunAsynchronously]
      [-PROTipID <Guid>]
      [-JobVariable <String>]
      [<CommonParameters>]

说明

Backup-SCVMMServer cmdlet 将 VMM 服务器上的 Virtual Machine Manager (VMM) 数据库备份到本地文件夹或远程网络共享。 备份数据库的文件夹必须可供 SQL Server 访问。

确定 SQL Server 是本地还是远程服务器上

如果不知道 VMM 数据库是存储在本地还是存储在运行 Microsoft SQL Server 的远程服务器上,请执行以下操作:

1. 在 VMM 服务器上,打开注册表编辑器。 2.导航到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft System Center Virtual Machine Manager Server\Settings\Sql 3。查看 OnRemoteServer 的值:

-- If it is set to 0, the database is on the local VMM server. 

-- If it is set to 1, the database is on a remote SQL server.

还原备份的数据库

使用 Backup-SCVMMServer cmdlet 备份 VMM 数据库(请参阅示例 1 和 2),可以使用 SCVMMRecover.exe 命令还原数据库(请参阅示例 3)。 此命令不是 Windows PowerShell cmdlet,随 VMM 一起安装。 默认情况下,SCVMMRecover.exe 安装在 <%system-drive%>\Program Files\Microsoft System Center 2016\Virtual Machine Manager\bin。

重要说明:若要备份和还原充当虚拟机主机的服务器或 VMM 环境中的库服务器,请使用标准服务器备份和还原过程。

示例

示例 1:将 VMM 数据库备份到本地文件夹

PS C:\> Backup-SCVMMServer -VMMServer "VMMServer01.Contoso.com" -Path "D:\VMMBackups"

此命令将名为 VMMServer01 的 VMM 服务器上的 VMM 数据库备份到指定的路径。

笔记:

  • Backup-SCVMMServer 必须将数据库备份到运行 SQL Server 的服务器。 此示例假定 SQL Server(适用于 VMM 数据库)安装在 VMMServer01 而不是远程服务器上。

  • 将数据库备份到本地文件夹时,该文件夹必须可供 SQL Server 服务写入。

示例 2:将 VMM 数据库备份到网络共享

PS C:\> Backup-SCVMMServer -VMMServer "VMMServer01.Contoso.com" -Path "\\SQLServer01\VMMBackups"

此命令将名为 VMMServer01 的 VMM 服务器上的 VMM 数据库备份到名为 SQLServer01 的服务器上指定的共享。

重要:

  • Backup-SCVMMServer 必须将数据库备份到运行 SQL Server 的服务器,因此此示例假定 SQL Server(适用于 VMM 数据库)安装在 SQLServer01 上。
  • 将数据库备份到远程共享时,该共享必须可供 SQL Server 服务写入。

示例 3:还原 VMM 数据库

C:\> SCVMMRecover.exe -Path <%backup-folder-path%>\<%backup-file-name%>.bak -Confirm

此示例演示如何使用 SCVMMRecover.exe,而不是 PowerShell cmdlet。 必须打开命令提示符窗口(而不是 PowerShell 窗口),并使用随 VMM 一起安装的 SCVMMRecover.exe 命令来执行此操作。 必须在要还原数据库的 VMM 服务器上本地运行 SCVMMRecover.exe。 SCVMMRecover.exe 不适用于高度可用的 VMM 安装。

此示例将 VMM 数据库还原到 VMM 服务器,其中:

<%backup-folder-path%> 是运行 SQL Server 的服务器上保存.bak文件的路径。 <%backup-file-name%> 是备份操作期间创建的.bak文件的名称。

此示例假定 SCVMMRecover.exe 安装在 vmm 的默认位置 <%system-drive%>\Program Files\Microsoft System Center 2016\Virtual Machine Manager\bin\SCVMMRecover.exe

参数

-JobVariable

指定在此参数命名的变量中跟踪和存储作业进度。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Path

指定操作的目标路径。

示例格式:

  • 本地路径:-Path "F:\"
  • UNC 路径:-Path "\\Library\Templates"
  • 卷 GUID 路径:-Path "\\?\Volume{4703c1ea-8ae7-11db-b473-00123f7603e3}\"
  • VMware ESX 路径:-Path "\[storage1\]\MyVMwareFolderForVMs\MyVM.vmx"
  • Citrix XenServer 路径:-Path "Local storage\[99b6212f-b63d-c676-25f9-d6c460992de7\]"
类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-PROTipID

指定触发此操作的性能和资源优化提示(PRO 提示)的 ID。 此参数允许你审核 PRO 提示。

类型:Guid
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RunAsynchronously

指示作业以异步方式运行,以便控件立即返回到命令行界面。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-VMMServer

指定 VMM 服务器对象。

类型:ServerConnection
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

输出

VMMServer

此 cmdlet 返回 VMMServer 对象。