VSS APP(SQL Server)备份实践

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 阿里云混合备份服务是一套已经商业化的原生备份服务,提供了简单易用,并且高效安全的数据保护方案。现在,混合云备份服务推出了全新的VSS APP功能。通过VSS APP功能,可以把ECS实例上SQL Server中的数据库以全量、差量和日志备份的方式备份上云,如果SQL Server数据库需要恢复,可以快速恢复到相应的备份。

阿里云混合备份服务是一套已经商业化的原生备份服务,提供了简单易用,并且高效安全的数据保护方案。现在,混合云备份服务推出了全新的VSS APP功能,目前正在公测中。通过VSS APP功能,可以把ECS实例上SQL Server中的数据库以全量、差量和日志备份的方式备份上云,如果SQL Server数据库需要恢复,可以快速恢复到相应的备份。

优势

  • 不需要写复杂的备份脚本
  • 集中管理监控所有备份
    在数据库备份失败时,用户会收到邮件或短信通知。用户可以查看所有进行中和已经完成的备份任务。
  • 恢复到任意时间点(精确到秒级)
  • 原生的SQL API集成
    VSS APP使用SQL Server的原生API,用户可以在SSMS监控备份/恢复任务。

三种备份方式

开始备份前,先介绍一下SQL Server备份的三种方式。

Full Backup

Full Backup(全量备份)是SQL Server所有备份类型中,最为简单、最基础的数据库备份方法,它提供了某个数据库在备份时间点的完整拷贝。但是,它仅支持还原到数据库备份成功结束的时间点,即不支持任意时间点还原操作。下面这张图解释了全量备份的工作原理。
0d7ab4ed302577a9f6bff75f4fff032ce55eb215

Transaction Log Backup

SQL Server数据库完全备份是数据库的完整拷贝,所以备份文件空间占用相对较大,加之可能会在备份过程中导致事务日志一直不断增长。为了解决这个问题,事务日志备份可以很好的解决这个问题,因为:事务日志备份记录了数据库从上一次日志备份到当前时间内的所有事务提交的数据变更,它可以配合数据库全量备份和差量备份(可选)来实现时间点的还原。但是这里需要有一个前提是数据库必须是FULL恢复模式,SIMPLE恢复模式的数据库不支持事务日志的备份,当然就无法实现时间点的还原。

Differential Backup

事务日志备份会导致数据库还原链条过长的问题,而差量备份就是来解决事务日志备份的这个问题的。差量备份是备份至上一次数据库全量备份以来的所有变更的数据页,所以差量备份相对于数据库完全备份而言往往数据空间占用会小很多。因此,备份的效率更高,还原的速度更快,可以大大提升我们灾难恢复的能力。下面这张图解释了差量备份的工作方式。
85742634d6459e7f0e27905ee40e2b447ed2b2c9

开始备份

了解了这三种备份方式以后,综合考虑RTO(恢复时间目标)和RPO(恢复点目标)两个指标,实践中的一种常用备份方案是,每周做一次全量备份,每天做一次差量备份,每小时做一次日志备份。接下来以这种方案为例,我们介绍使用混合云备份的VSS APP备份SQL Server。

注册SQL Server实例

进入混合云备份控制台的【SQL Server备份】页面,选择【注册SQL Server实例】,
90975911b81314f58bcfd5f9255be30593d8b8d0
在弹出的边框中,配置存放SQL Server备份的仓库名称和SQL Server的连接信息。
d93acfa662aee9c1a16418af18a00f32547ec792
选择SQL Server所在的ECS实例,选择【创建】,做完这一步,SQL Server备份客户端在ECS上就已经创建好了。

创建备份计划

创建全量备份计划

b348ffdbdc069bda3038e666b67d1a0f57b882c7
在前一步创建出来的SQL Server实例上选择【备份】,
710e1fc4a38bab1e40ba7adaa67b92ebc5d42d1a
在弹出的【新建备份计划】中选择要备份的若干个数据库,输入数据库组的名称,选中的数据库会自动创建成为一个数据库组,后续再创建其他备份计划时可以重用该数据库组,进入【下一步】,
353404daca704d2a293d50804deebc3d844f0a72
选择备份类型为【全量】,备份执行间隔为一周,备份数据默认保留2年,
353404daca704d2a293d50804deebc3d844f0a72
选择【创建】。

创建差量备份计划

在SQL Server实例上选择【备份】,
73cfe50da553d58a8e8edeb4129ccf48328160db
在弹出的【新建备份计划】中选择前一步创建出来的数据库组,进入【下一步】,
479cb2b3e560b311635dbf71f0629a540aab5331
选择备份类型为【差量】,备份执行间隔为一天,选择【创建】。

创建日志备份计划

在SQL Server实例上选择【备份】,在弹出的【新建备份计划】中选择前一步创建出来的数据库组,进入【下一步】,
609b6d84c78ecd76bde3e77a7b99e7b029722b6f
选择备份类型为【日志】,备份执行间隔为一小时,选择【创建】。
至此,全量、差量和日志备份计划已经创建好了,我们在【备份计划】页面中可以查看创建出来的所有备份计划。
注:
1.由于同一时间只有一个备份计划可以执行,不同备份计划的执行时间尽可能错开。
2.支持不同备份方式的数据库尽可能放在不同的数据库组中。比如master数据库不支持差量/日志备份,把master和其他只支持全量备份的数据库放在一个数据库组中。

恢复数据库

5ed041ff45223740fc7376ceb8b85294ce9e41af
在SQL Server实例上选择【恢复】,
4d6c8c72195e4b3b6c56fa7c1079649492b79a97
在弹出的【新建恢复任务】中选择要恢复的数据库,进入【下一步】,
1a87b593aac578a88dce0ab84474a8dac7e0cb4c
输入【目标数据库名】,恢复方式有三种,【最近时间】是恢复到最近一次备份,【指定时间】是恢复到指定的时间点,可以精确到秒级,【指定备份】是恢复到指定的全量或差量备份。
选择【下一步】,【创建】,然后可以在【恢复任务】页面中查看正在进行的恢复。

小结

以上就是使用混合云备份VSS APP备份和恢复SQL Server的整个过程。接下来我们还会推出更多新的功能,

  • 恢复备份到其他ECS(可以跨不同region)上的SQL Server实例
  • 自动备份新加入SQL Server实例的数据库
  • 恢复到时间点时提供可选的时间范围
  • 支持Always On Availability Group中数据库的备份

除了SQL Server,混合云备份还支持文件、SAP HANA、虚机等的备份。更多的混合云备份产品信息,欢迎访问混合云备份服务官网了解更多详情。

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
7天前
|
SQL 人工智能 算法
【SQL server】玩转SQL server数据库:第二章 关系数据库
【SQL server】玩转SQL server数据库:第二章 关系数据库
47 10
|
1月前
|
SQL 数据库 数据安全/隐私保护
Sql Server数据库Sa密码如何修改
Sql Server数据库Sa密码如何修改
|
1月前
|
SQL 存储 数据库
SQL实践篇(二):为什么微信用SQLite存储聊天记录
SQL实践篇(二):为什么微信用SQLite存储聊天记录
57 1
|
1月前
|
存储 SQL Web App开发
SQL实践篇(一):使用WebSQL在H5中存储一个本地数据库
SQL实践篇(一):使用WebSQL在H5中存储一个本地数据库
43 2
|
17天前
|
SQL
启动mysq异常The server quit without updating PID file [FAILED]sql/data/***.pi根本解决方案
启动mysq异常The server quit without updating PID file [FAILED]sql/data/***.pi根本解决方案
15 0
|
7天前
|
SQL 算法 数据库
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(二)数据查询
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(二)数据查询
64 6
|
3天前
|
SQL 自然语言处理 测试技术
NL2SQL进阶系列(4):ConvAI、DIN-SQL等16个业界开源应用实践详解[Text2SQL]
NL2SQL进阶系列(4):ConvAI、DIN-SQL等16个业界开源应用实践详解[Text2SQL]
NL2SQL进阶系列(4):ConvAI、DIN-SQL等16个业界开源应用实践详解[Text2SQL]
|
7天前
|
SQL 人工智能 自然语言处理
NL2SQL进阶系列(2):DAIL-SQL、DB-GPT开源应用实践详解Text2SQL
NL2SQL进阶系列(2):DAIL-SQL、DB-GPT开源应用实践详解Text2SQL
NL2SQL进阶系列(2):DAIL-SQL、DB-GPT开源应用实践详解Text2SQL
|
7天前
|
SQL 监控 数据库
数据库管理与电脑监控软件:SQL代码优化与实践
本文探讨了如何优化数据库管理和使用电脑监控软件以提升效率。通过SQL代码优化,如使用索引和调整查询语句,能有效提高数据库性能。同时,合理设计数据库结构,如数据表划分和规范化,也能增强管理效率。此外,利用Python脚本自动化收集系统性能数据,并实时提交至网站,可实现对电脑监控的实时性和有效性。这些方法能提升信息系统稳定性和可靠性,满足用户需求。
29 0
|
8天前
|
SQL 存储 数据挖掘
数据库数据恢复—RAID5上层Sql Server数据库数据恢复案例
服务器数据恢复环境: 一台安装windows server操作系统的服务器。一组由8块硬盘组建的RAID5,划分LUN供这台服务器使用。 在windows服务器内装有SqlServer数据库。存储空间LUN划分了两个逻辑分区。 服务器故障&初检: 由于未知原因,Sql Server数据库文件丢失,丢失数据涉及到3个库,表的数量有3000左右。数据库文件丢失原因还没有查清楚,也不能确定数据存储位置。 数据库文件丢失后服务器仍处于开机状态,所幸没有大量数据写入。 将raid5中所有磁盘编号后取出,经过硬件工程师检测,没有发现明显的硬件故障。以只读方式将所有磁盘进行扇区级的全盘镜像,镜像完成后将所
数据库数据恢复—RAID5上层Sql Server数据库数据恢复案例