数据库备份与恢复方案
备份方案
SQL Server的备份策略需结合完整备份、差异备份和事务日志备份,具体实施如下:
1. 备份类型与频率
- 完整备份:每周执行一次,记录数据库所有数据。通过“管理-维护计划-维护计划向导”创建,设置备份路径、过期时间(如保留4周),并指定每周日凌晨执行。
- 差异备份:每日执行,记录自上次完整备份后的数据变化。新建维护计划时选择“差异备份”类型,设置与完整备份相同的存储路径,但保留周期可缩短(如保留2周)。
- 事务日志备份:每半小时执行一次,记录所有事务操作。维护计划中需将备份类型设为“事务日志”,并设置高频执行周期(如每30分钟)。
2. 自动化与权限管理
- 自动化实现:通过SQL Server代理的维护计划功能,拖动“备份数据库任务”和“清除维护任务”到任务框,建立关联顺序。清除任务用于删除过期备份文件,释放磁盘空间。
- 权限配置:确保运行SQL Server服务的账户对备份设备有读写权限,且备份文件存放磁盘与数据库文件分离,避免IO冲突。同时,备份执行时间需与数据库作业错开。
恢复方案
根据备份类型组合,恢复策略分为以下三种:
1. 还原完整备份
- 操作路径:选择“还原数据库”,在常规选项中指定目标数据库名称和源设备(完整备份文件)。
- 关键设置:选择“覆盖现有数据库”,并启用“回滚未提交事务”,确保数据一致性。
2. 还原完整备份+差异备份
- 步骤:先还原完整备份(不勾选“回滚未提交事务”),使数据库处于“还原中”状态;再还原差异备份文件,更新数据至差异备份时点。
- 注意事项:差异备份需与完整备份关联,且还原路径需与备份时一致。
3. 还原完整备份+差异备份+事务日志备份
- 步骤:依次还原完整备份、差异备份(均不勾选“回滚未提交事务”),最后还原事务日志备份。
- 时间点恢复:在事务日志还原选项中设置“还原时间点”,可将数据库恢复至指定时刻(如故障发生前5分钟)。若未指定时间,则恢复至最后一次事务日志备份时的状态。
关键原则
- 备份存储:备份文件需存放于独立磁盘,避免单点故障。
- 权限隔离:限制备份操作权限至sysadmin、db_owner或db_backupoperator角色成员。
- 测试验证:定期执行恢复测试,确保备份文件可用性。