本部分介绍如何装载捕获的 Microsoft SQL Server 数据:
- 实例
- AlwaysOn 可用性组的主数据库
- 一致性组
- 一致性组的各个成员
- 系统数据库
- 用户数据库
装载捕获的 Microsoft SQL Server 数据
通过标准装载,您可以将 Microsoft SQL Server 数据装载到另一台服务器,以便其他 Microsoft SQL Server 可以提取和使用这些数据。 如需仅装载捕获的 Microsoft SQL 数据,请按以下步骤操作:
打开应用管理器 ,然后打开应用列表 。
右键点击 SQL Server 服务器实例、用户数据库、系统数据库、集群或可用性组,然后选择访问 。使用过滤条件查找所需的数据库。
在跑道上,选择要装载的特定备份,然后选择装载 。
(可选)输入标签,以便您清楚地标识此装载的数据。
在装载映像 对话框的应用选项 部分中,请勿选择创建新的虚拟应用 。 如需将 Microsoft SQL 数据装载为虚拟数据库,请参阅 将 SQL Server 数据库装载为新的虚拟数据库。
填写映射选项 和项选择 字段(如果适用)。
显示的选项因所选来源而异。 例如,VMware 虚拟机上的数据库具有映射到所有 ESX 主机 选项。集群数据库具有映射到集群节点 选项。
点击提交 ,系统会提交装载作业。
装载操作成功后,登录到数据库服务器,并 验证装载的备份是否在“活跃装载”中可用。
将 SQL Server 数据库装载为新的虚拟数据库
虚拟应用装载操作会将捕获的数据库装载为虚拟应用。这样一来,您无需实际移动数据,也无需手动配置数据库的新实例,即可快速将数据库联机。虚拟应用装载解决了在无需数据库、服务器和存储管理员手动干预的情况下创建和管理生产数据库副本的难题。
本部分介绍如何将捕获的 Microsoft SQL Server 数据库装载为虚拟应用。您可以为 Microsoft SQL Server 装载以下内容:
- 实例
- 系统数据库
- 用户数据库
- 一致性组
- 一致性组的各个成员
- AlwaysOn 可用性组中的数据库
在装载备份之前,请确保已在装载备份的主机上配置 iSCSI,或者已在 VMware 中配置 NFS 数据存储区。
如果您只想装载 Microsoft SQL 数据文件 而不向 SQL Server 实例添加任何数据库,请参阅 装载捕获的 Microsoft SQL 数据。
对于损坏或已删除的数据库,将 SQL Server 数据库作为虚拟应用装载到其原始服务器是执行数据库恢复的有效替代方案。
如需将捕获的 Microsoft SQL Server 数据库装载为虚拟应用,请按以下步骤操作:
打开设备管理控制台,然后打开应用管理器 > 应用 列表。
右键点击 SQL Server 实例、用户数据库、系统数据库、集群或可用性组,然后选择访问 。使用过滤条件查找所需的数据库。
在备份跑道上,选择要装载的备份。 在右侧,选择装载 。 您可以使用左上角的日历小部件来缩小备份范围。
在应用选项 部分中,(可选)输入标签,以便您清楚地标识此装载的数据。
选择创建新的虚拟应用 。
如果数据库是与其日志一起捕获的,则应用选项对话框 会提供一个选项,用于根据日志的捕获时间和频率将日志回滚到特定时间点。
从 SQL Server 实例名称 下拉列表中,选择应将新数据库添加到的 SQL Server 实例。如果下拉列表中未包含所需的实例名称,您可以在提供的空间中手动输入该名称。
如果您要装载单个数据库,请在 SQL Server 数据库名称 字段中输入新虚拟数据库的名称。
如果您要装载多个数据库,请在一致性组的名称 字段中输入包含虚拟数据库的新一致性组的名称。
虚拟应用装载是一个新的虚拟数据库。 如需保护新的虚拟数据库,请选择管理新应用 ,然后选择要使用的模板和配置文件。
虚拟应用装载是一个新数据库。数据库的快照是增量快照。
虚拟应用会显示在应用管理器 的应用列表中。
如果您未选择管理新应用 ,则该应用在应用管理器 中会显示为不受保护的应用。您可以像保护任何其他应用一样保护它。
装载到 SQL Server 实例的虚拟 SQL Server 数据库始终与实例的用户数据库和系统数据库分开保护。
恢复数据库(恢复后):如果您希望将数据库置于可处理事务的联机 状态,请保留此选项(默认)。取消选中此选项可将数据库置于恢复状态,以便手动应用其他事务日志备份,将数据库向前回滚到特定时间点。
恢复用户登录信息:如果您已启用政策选项 备份 SQL Server 登录信息,则选择此选项会将这些登录信息恢复到目标 SQL Server 实例。 对于网域账号,如果目标 实例位于同一网域中的服务器上,或者位于与源 SQL Server 具有信任 关系的网域中,则仅恢复用户账号。SQL 本地账号始终会 恢复。 如果您希望确保所有可以 访问原始源数据库的用户都可以访问新的虚拟数据库,请使用此选项。
在用户名和密码 字段中,仅在需要时输入用户名和密码。如果 Backup and DR 代理账号在卸载操作期间没有分离数据库的权限,或者没有应用事务日志的权限,请在此处输入具有这些权限的账号的凭据。如需了解详情,请参阅 Windows 用户所需的 SQL Server 角色。
如果您想更改新虚拟数据库的恢复模式,请选择恢复模式 。默认设置为保留原始数据库的恢复模式。
对于覆盖现有数据库,请指明何时 覆盖目标服务器或实例上与要装载的新数据库同名的数据库 :是、否或 仅当数据库过时时。
在映射选项 中,您可以输入装载位置。 如果应用只有一个卷,您只能在此处指定装载位置。如果应用有多个卷,您可以:
输入装载位置。所有卷都会自动装载到指定的装载位置,并使用指定的装载点处的顺序驱动器盘符或编号目录。
将此空间留空,然后在高级选项 中,为每个卷手动指定装载位置。
点击提交 ,系统会提交作业。
装载作业完成后,登录到数据库服务器,并 验证装载的备份是否在“活跃装载”中可用。
管理活跃装载
创建装载后,您可以从应用管理器 > 活跃装载 中跟踪备份。理想情况下,请勿无限期地装载任何备份。这是因为,在删除所有装载之前,无法使创建装载所依据的备份过期。使用完装载的备份后,您可以执行以下任一操作:
- 卸载 备份。如有需要,您可以重新装载它。然后,当您确定不再需要该备份时,可以稍后将其 删除 。
- 卸载并删除备份。此操作会删除装载的备份,而不是装载所依据的备份。
- 迁移备份。此操作仅适用于 Microsoft SQL Server 装载。
装载加密的 SQL Server 数据
备份/恢复设备会捕获加密的 SQL Server 数据库,但不会捕获其私钥、加密证书或密码。
本部分介绍以下内容:
确定是否启用了 SQL TDE
排查 SQL Server 加密问题
SQL Server 主密钥、加密证书和密码程序
如果您要通过现有 SQL Server 数据库恢复加密的 SQL Server 数据库,则私钥、加密证书和密码已存在于 SQL Server 实例中,并且恢复操作完成后,SQL Server 数据库将按预期运行。
如果您要执行加密数据库的虚拟应用装载,或者仅装载加密的 SQL Server 数据,则装载加密数据库或数据的 SQL Server 实例必须具有以下内容:
已启用透明数据加密 (TDE)
源 SQL Server 数据库中的私钥 的副本
源 SQL Server 数据库中的加密证书的副本
提供源 SQL Server 数据库的密码
相关程序位于 SQL Server 主密钥、加密证书和密码程序中。
确定是否启用了 SQL Server TDE
如需确定是否在 SQL Server 实例上启用了 TDE,您可以使用 Microsoft 的 SQL Server Management Studio 的用户界面 (SSMS),也可以使用手动 查询来确定是否在数据库上启用了加密。例如:
SELECT
DB_NAME(database_id)AS dbname,
encryption_state,
case encryption_state
WHEN 0 THEN 'Unencrypted (no
database encryption key present)'
WHEN 1 THEN 'Unencrypted'
WHEN 2 THEN 'Encryption in Progress'
WHEN 3 THEN 'Encrypted'
WHEN 4 THEN 'Key Change in Progress'
WHEN 5 THEN 'Decryption in Progress'
ELSE CAST(encryption_state AS
varchar(20))
END AS encryption_state,
key_algorithm,
key_length
FROM sys.dm_database_encryption_keys
SSMS
如需使用 SSMS 确定是否在数据库上启用了加密,请按以下步骤操作:
在 SSMS 中,右键点击数据库名称。
从下拉菜单中选择属性 ,系统会显示数据库的属性。
在选择页面下,点击选项,系统会显示数据库的选项 。
在状态下,确保已启用加密设置为是。
排查 SQL Server 加密问题
以下是两种常见的错误:
SQL 错误 24583:这表示缺少加密证书。以下 24583 SQL Server 错误表示您尝试对没有源 SQL Server 实例的加密证书的 SQL Server 实例执行装载。
SQL 错误 33117:透明数据加密未启用。以下 33117 SQL Server 错误表示您尝试对未启用透明数据加密 的 SQL Server 实例执行加密的 SQL Server 数据库的装载。
SQL Server 主密钥、加密证书和密码程序
创建和复制主密钥和加密证书是标准的 Microsoft SQL Server 程序,并非备份/恢复设备独有。 此处提供这些程序是为了方便您使用:
创建新的主密钥
创建新的加密证书
应用服务器主密钥和加密证书
创建服务器主密钥和加密证书的副本,并提供源密码
复制加密证书、私钥,并提供源密码
如需了解详情,请参阅 Microsoft 关于安全证书和密钥的详细信息:https://msdn.microsoft.com/en-us/library/ff848768.aspx
创建新的主密钥
use master;
go
create master key encryption by password = 'SMKSourcePassword';
go
创建新的加密证书
use master;
go
create certificate sourcedbcert with subject = 'Act Test Cert';
go
应用服务器主密钥和加密证书
use DATABASENAME;
go
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_128
ENCRYPTION BY SERVER CERTIFICATE sourcedbcert;
go
alter database DATABASENAME
set encryption on;
go
创建服务器主密钥和加密证书的副本,并提供源密码
如果一个 SQL Server 实例上的 SQL Server 数据库装载到另一个 SQL Server 实例,您必须手动复制要装载的数据库的服务器主密钥、加密证书和密码。然后,将服务器主密钥、加密证书和密码复制到另一个 SQL Server 实例。
如需创建服务器主密钥、加密证书和密码的副本,请完成以下操作:
use master;
go
backup certificate sourcedbcert to file = 'E:\Enc\Sourcecert'
with PRIVATE KEY (file='E:\Enc\Privatekey',
ENCRYPTION BY PASSWORD='SecurePassword');
go
复制加密证书、私钥,并提供源密码
如果启用了加密的 SQL Server 数据库或数据装载到新的 SQL Server 实例,则新实例必须具有源 SQL Server 实例的服务器主密钥、加密证书和密码的副本。手动将您在上一个部分中在源 SQL Server 实例上创建的加密证书和密码副本复制到新的 SQL Server 实例。从新的 SQL Server 实例中, 完成以下操作:
create certificate destinationdbcert
FROM file = 'C:\Program Files\Backup and DR\sqlenc\Sourcecert'
with private key (file = 'C:\Program Files\Backup and DR\sqlenc\Privatekey',
decryption by password = 'SecurePassword')
go
Microsoft SQL Server 的 Backup and DR 的其他文档
本页面是关于使用 Backup and DR 保护和恢复 Microsoft SQL Server 数据库和支持二进制文件的一系列页面中的一个。您可以在以下页面中找到更多信息:
- Microsoft SQL Server 的 Backup and DR 服务
- 为 Backup and DR Service 准备 SQL Server 数据库
- 添加 SQL Server 数据库主机并发现数据库
- 为 Microsoft SQL Server 实例和数据库配置备份方案
- 装载 SQL Server 数据库
- 将数据库装载到 SQL Always On 可用性组
- 管理活跃装载
- 迁移 SQL Server 数据库
- 克隆 SQL Server 数据库
- 恢复 SQL Server 备份