将 SQL Server 数据库还原到某个时点(完整恢复模式)
适用范围:
- SQL Server
本主题介绍如何使用 SQL Server Management Studio 或 Transact-SQL 将数据库还原到 SQL Server 中的某个时间点。 本主题仅与使用完整恢复模式或大容量日志恢复模式的 SQL Server 数据库相关。
在大容量日志恢复模式下,如果日志备份包含大容量更改,则不能使用时点恢复方式恢复到该备份内的某个点。 必须将数据库恢复到事务日志备份的结尾。
1、安全性
1.1、权限
如果不存在要还原的数据库,则用户必须有 CREATE DATABASE 权限才能执行 RESTORE。 如果数据库存在,则 RESTORE 权限默认授予 sysadmin 和 dbcreator 固定服务器角色成员以及数据库的所有者 (dbo)(对于 FROM DATABASE_SNAPSHOT 选项,数据库始终存在)。
RESTORE 权限被授予那些成员身份信息始终可由服务器使用的角色。 因为只有在固定数据库可以访问且没有损坏时(在执行 RESTORE 时并不会总是这样)才能检查固定数据库角色成员身份,所以 db_owner 固定数据库角色成员没有 RESTORE 权限。
2、使用 SQL Server Management Studio
将数据库还原到时间点
-
在对象资源管理器中,连接到相应的 SQL Server 实例,然后展开服务器树。
-
展开 “数据库” 。 根据具体的数据库,选择一个用户数据库,或展开“系统数据库”并选择一个系统数据库。
-
右键单击数据库,指向“任务”,再指向“还原”,然后单击“数据库”。
-
在 “常规” 页上,使用 “源” 部分指定要还原的备份集的源和位置。 选择以下任一选项:
-
Database
从下拉列表中选择要还原的数据库。 此列表仅包含已根据 msdb 备份历史记录进行备份的数据库。
备注 如果备份是从另一台服务器执行的,则目标服务器不具有指定数据库的备份历史记录信息。 这种情况下,请选择 “设备” 以手动指定要还原的文件或设备。
-
设备
单击“浏览”按钮 (…) 以打开“选择备份设备”对话框。 在 “备份介质类型” 框中,从列出的设备类型中选择一种。 若要为 “备份介质” 框选择一个或多个设备,请单击 “添加”。
将所需设备添加到 “备份介质” 列表框后,单击 “确定” 返回到 “常规” 页。
在 “源: 设备: 数据库” 列表框中,选择应还原的数据库名称。
注意 :此列表仅在选择了 “设备” 时才可用。 只有在所选设备上具有备份的数据库