文章目录

  • 1.数据库备份
  • 2.创建备份设备
    • 使用SSMS工具创建备份设备
    • 使用SQL方式创建备份设备
  • 3.完整备份与还原
    • 使用SSMS工具完整备份与还原
    • 使用SQL方式完整备份与还原
  • 4.差异备份与还原
    • 使用SSMS工具差异备份与还原
    • 使用SQL方式差异备份与还原
  • 5.事务日志备份与还原
    • 使用SSMS工具事务日志备份与还原
    • 使用SQL方式事务日志备份与还原

1.数据库备份

    数据库备份,即从SQL Server数据库或其事务日志中将数据或日志记录复制到相应的设备,以创建数据副本或事务日志副本。数据还原用于将指定SQL Server备份中的所有数据和日志复制到指定数据库,然后通过应用记录的更改使该数据在时间上向前移动,以回滚备份中记录的所有事物。
    设计一个好的备份和还原策略需考虑多方面的因素,包括备份内容、备份计划、备份介质、备份设备、备份类型和恢复模式。在SQL Server 2012系统中,常见的备份类型有完整备份、差异备份、事务日志备份、文件和文件组备份。
    “恢复模式”是一种数据库属性,它控制如何记录事务、事务日志是否需要或允许备份,以及可以使用哪些类型的还原操作。有三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式。通常情况下,数据库使用简单恢复模式或完整恢复模式。
    ① 简单恢复模式:数据库记录大多数事务,并不会记录所有的事务,数据库在备份之后,自动截断事务日志,即把不活动的事务日志删除。因此,不支持事务日志备份,也不能恢复到出现故障的时间点,具有较高的安全风险,建议只有对数据安全性要求不高的数据库使用该模式。
    ② 完整恢复模式:数据库完整地记录了所有的事务,并保留所有事务的详细日志。支持恢复到出现故障的时间点。该模式可在最大范围内防止出现故障时丢失数据,为数据安全提供了全面的保护。建议对数据安全性、可靠性要求高的数据库使用该恢复模式。
    ③ 大容量日志恢复模式:数据库不会对所有事务做完整详细的记录,只对大容量操作做最少的记录。通常情况下,只有在要进行大容量操作之前,才改用该恢复模式,大容量操作结束之后,再设置回原来的恢复模式。

2.创建备份设备

    在SQL Server 2012中,数据库备份设备分为物理备份设备和逻辑备份设备。物理备份设备是指保存备份数据的操作系统所识别的磁带或磁盘文件。逻辑备份设备是指数据库系统所识别的逻辑对象,是指向特定物理设备的可选用户定义名称,是物理备份设备的一个逻辑别名,别名名称必须唯一。

使用SSMS工具创建备份设备
  1. 展开数据库实例,打开“服务器对象”,右击“备份设备”,选择“新建备份设备”
  2. 在备份设备窗口中,输入备份设备名称,选择备份设备路径和文件名,点击“确定”,完成备份设备的创建
  3. 备份设备创建成功
使用SQL方式创建备份设备

语法格式:

EXEC sp_addumpdevice <存储类型> ,<备份设备逻辑名>, <物理文件路径>

使用示例:

use master
go
EXEC sp_addumpdevice 'disk' 'schoolDB_backup' 'E:\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup\schoolDB_backup.bak'

3.完整备份与还原

使用SSMS工具完整备份与还原
  1. 右击需要备份的数据库,选择“任务”,再选择“备份”
  2. 在“备份数据库”窗口中选择备份类型为“完整”,点击“删除”按钮,将目标下的原路径删除
  3. 点击“添加”按钮,弹出选择备份目标对话框,选择备份设备并选中创建的备份设备,点击“确定”按钮返回
  4. 在选择页中选择“选项”,备份介质中选择“覆盖所有现有备份集”,点击确定完成数据库完整备份
  5. 删除源数据库,要恢复完整备份的数据库,右击“数据库”,选择“还原数据库”
  6. 在“还原数据库”窗口中,选择源为“设备”,点击“…”按钮
  7. 弹出“选择备份设备”窗口,点击“添加”按钮,选择对应的备份设备,返回“还原数据库”窗口
  8. 选择需要还原的数据库,勾选需要还原的备份文件,点击“确定”进行还原
  9. 数据库还原成功
使用SQL方式完整备份与还原

语法格式:

--备份数据库
USE master
GO
BACKUP DATABASE <数据库> TO <备份设备>--还原数据库
USE master
GO
RESTORE DATABASE <数据库> FROM <备份设备>

使用示例:

--备份数据库
USE master
GO
BACKUP DATABASE schoolDB TO schoolDB_backup--还原数据库
USE master
GO
RESTORE DATABASE schoolDB FROM schoolDB_backup

4.差异备份与还原

使用SSMS工具差异备份与还原
  1. 创建一份完整数据库备份
  2. 修改数据库中的数据或结构,本处将student表中的数据复制到student_new表中
  3. 右击需要备份的数据库,选择“任务”,再选择“备份”
  4. 在“备份数据库”窗口中选择备份类型为“差异”,如果目标不是备份设备,则参照完整备份处理
  5. 在选择页中选择“选项”,备份介质中选择“追加到现有备份集”,点击确定完成数据库差异备份
  6. 删除源数据库,要恢复备份的数据库,右击“数据库”,选择“还原数据库”
  7. 在“还原数据库”窗口中,选择源为“设备”,点击“…”按钮
  8. 弹出“选择备份设备”窗口,点击“添加”按钮,选择对应的备份设备,返回“还原数据库”窗口
  9. 选择需要还原的数据库,勾选需要还原的备份文件,点击“确定”进行还原
  10. 数据库还原成功
使用SQL方式差异备份与还原

语法格式:

--数据库差异备份
USE master
GO
BACKUP DATABASE <数据库> TO <备份设备>
WITH DIFFERENTIAL--数据库还原
--备份集编号可在对应的备份设备右击选择属性,查看备份介质即可找到备份集的编号
USE master
GO
RESTORE DATABASE <数据库> FROM <备份设备>
WITH FILE=<备份集标号>,NORECOVERY  --NORECOVERY  表示还原未恢复
GO
...
GO
RESTORE DATABASE  <数据库> FROM <备份设备>
WITH FILE=<备份集标号>,RECOVERY --RECOVERY  表示还原已恢复

使用示例:

--数据库差异备份
USE master
GO
BACKUP DATABASE schoolDB TO schoolDB_backup
WITH DIFFERENTIAL--数据库还原
USE master
GO
RESTORE DATABASE schoolDB FROM schoolDB_backup
WITH FILE=1,NORECOVERY
GO
RESTORE DATABASE schoolDB FROM schoolDB_backup
WITH FILE=2,RECOVERY

5.事务日志备份与还原

使用SSMS工具事务日志备份与还原
  1. 创建一份完整数据库备份
  2. 修改数据库中的数据或结构,本处将student表中的数据复制到student_new表中
  3. 右击需要备份的数据库,选择“任务”,再选择“备份”
  4. 在“备份数据库”窗口中选择备份类型为“事务日志”,如果目标不是备份设备,则参照完整备份处理
  5. 在选择页中选择“选项”,备份介质中选择“追加到现有备份集”,点击确定完成数据库事务日志备份
  6. 删除新创建的数据表,使用事务日志备份恢复数据库,右击“数据库”,选择“还原数据库”
  7. 在“还原数据库”窗口中,选择源为“设备”,点击“…”按钮
  8. 弹出“选择备份设备”窗口,点击“添加”按钮,选择对应的备份设备,返回“还原数据库”窗口
  9. 选择需要还原的数据库,勾选需要还原的备份文件,点击“确定”进行还原
  10. 在选择页中选择“选项”,在还原选项中勾选“覆盖现有数据库”,并在服务器连接中勾选“关闭到目标数据库的现有连接”,点击“确定”进行数据库还原
  11. 数据库还原成功
使用SQL方式事务日志备份与还原

语法格式:

--备份事务日志
USE master
GO
BACKUP LOG <数据库> TO <备份设备>--恢复数据库备份
--备份集编号可在对应的备份设备右击选择属性,查看备份介质即可找到备份集的编号
USE master
GO
RESTORE DATABASE <数据库> FROM <备份设备>
WITH REPLACE,FILE=<备份集编号>,NORECOVERY   --NORECOVERY  表示还原未恢复
GO
...
GO
RESTORE LOG <数据库> FROM <备份设备>
WITH FILE=<备份集编号>,RECOVERY   --RECOVERY  表示还原已恢复

使用示例:

--备份事务日志
USE master
GO
BACKUP LOG schoolDB TO schoolDB_backup--恢复数据库备份
USE master
GO
RESTORE DATABASE  schoolDB FROM schoolDB_backup
WITH REPLACE,FILE=1,NORECOVERY   --NORECOVERY  表示还原未恢复
GO
RESTORE LOG  schoolDB FROM schoolDB_backup
WITH FILE=2,RECOVERY   --RECOVERY  表示还原已恢复

SQL Server 2012 数据库备份还原相关推荐

  1. SQL Server 2012 数据库镜像配置完整篇

    "数据库镜像"是一种提高 SQL Server 数据库的可用性的解决方案. 镜像基于每个数据库实现,并且只适用于使用完整恢复模式的数据库.数据库镜像维护一个数据库的两个副本,这两个 ...

  2. 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——1.5 安装SMO

    本节书摘来自异步社区出版社<PowerShell V3-SQL Server 2012数据库自动化运维权威指南>一书中的第1章,第1.5节,作者:[加拿大]Donabel Santos,更 ...

  3. SQL SERVER 2000 数据库备份和SQL Server数据库备份有两种方式,

    SQL SERVER 2000 数据库备份与还原时间:2006-08-30 10:23:23  来源:CSDN  作者:佚名备份数据库,例如: BACKUP DATABASE Northwind    ...

  4. 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.8 创建数据库...

    本节书摘来自异步社区出版社<PowerShell V3-SQL Server 2012数据库自动化运维权威指南>一书中的第2章,第2.8节,作者:[加拿大]Donabel Santos,更 ...

  5. 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.19 使用bcp实施批量导出...

    本节书摘来自异步社区出版社<PowerShell V3-SQL Server 2012数据库自动化运维权威指南>一书中的第2章,第2.19节,作者:[加拿大]Donabel Santos, ...

  6. 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.13 创建视图...

    本节书摘来自异步社区出版社<PowerShell V3-SQL Server 2012数据库自动化运维权威指南>一书中的第2章,第2.13节,作者:[加拿大]Donabel Santos, ...

  7. 安装和卸载 MS SQL Server 2012数据库

    卸载数据库大体分三大步 (1)控制面板卸载所有SQL Server相关的软件: (2)删除本地的SQL Server相关文件; (3)删注册表. 卸载SQL Server 2012数据库 1.打开控制 ...

  8. 数据库原理与应用实验指导书 实验一:熟悉SQL Server 2012数据库管理系统

    数据库原理与应用实验指导书 实验一:熟悉SQL Server 2012数据库管理系统 实验类型: 综合性 实验要求: 必修 适用对象: 信息管理与信息系统.计算机科学与技术.软件工程.物联网工程 一. ...

  9. 微软sql服务器如何安装,Microsoft SQL Server 2012 数据库安装图解教程

    原标题:Microsoft SQL Server 2012 数据库安装图解教程 1, 当系统打开"SQL Server安装中心",则说明我们可以开始正常的安装SQL Server2 ...

最新文章

  1. Android开发教程 - 使用Data Binding(二)集成与配置
  2. SAP SD 关于信用管理--信用更新
  3. C++学习003-#define 自定义宏
  4. 13 KNN背景分割器
  5. mysql递归查询所有上下节点_非递归打印二叉树的所有路径,保存父节点和孩子节点到底有啥差别...
  6. mysql从盘延迟_Mysql-主从延迟解决方法
  7. mysql clickhouse_通过mysql操作clickhouse
  8. linux内存专题,linux内存浅析
  9. ABP实现EF执行SQL(增删改查)解决方案
  10. LED液晶显示屏自动扫描测试软件特点,led显示屏控制软件自动校正是什么作用?...
  11. 069 模块基础总结
  12. Linux常用命令汇总--tree
  13. ConstraintLayout 完全解析 快来优化你的布局吧
  14. L298电机驱动原理图+PCB
  15. 软件工程实验报告一软件开发准备及Visio应用
  16. win10怎么查看计算机用户名和密码,技术员详解win10系统查看电脑密码的详细方案...
  17. 与华为SIP硬终端(TE40)对接注意事项
  18. 血战上海滩寻找英雄血量地址 实现无敌效果深入分析
  19. H264/HEVC 常用缩写词及其含义
  20. C++工程编译链接错误汇总VisualStudio

热门文章

  1. 【并发编程】程序的启动和终结
  2. AD10右下角显示标题
  3. 【避免if else标准写法】阿里P7级别(年薪40w-70w)是如何避免用if else写代码
  4. 串管理——鸟友们快来看啊——看清楚点_悟sphenic_新浪博客
  5. 小马智行进军前装量产,从自研域控制器入手?
  6. 安装Redist,运行智慧工厂管理系统
  7. AE安装包+安装教程
  8. android模拟器限制网速,安卓模拟器设置网速和延迟
  9. 看完这篇Excel数组简介,你也是Excel高手了!
  10. 让Apache Shiro保护你的应用