SQL Server 2005灾难恢复最佳实践

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,基础系列 2核4GB
日志服务 SLS,月写入数据量 50GB 1个月
简介:
灾难恢复计划: 什么是灾难恢复? 灾难恢复(容灾,Disaster Recovery)-->灾难恢复是在灾难发生之前所做的预防和在灾难发生之后进行系统还原和数据恢复的过程 其目标和实质是确保业务系统的持续正常运行
                                       灾难是任何导致系统结构损坏和数据丢失的事件-->物理设备的损坏 误操作导致的数据丢失 自然和外界因素导致的系统损坏
              备份不是全部-不打无准备的战役-->备份计划: 备份执行计划 有效性测试计划 备份管理策略  资源获取列表: 设备、人员、技术支持  灾难处理预案: 灾难恢复步骤 状态检查列表(恢复基线)
              开发灾难恢复计划-->实现: 方案实施管理 灾难恢复过程控制  分析: 灾难分析 业务风险分析 当前业务环境分析  设计: 灾难恢复策略制订 灾难恢复方案设计
              制订计划需要考虑的问题-->可用性要求 数据恢复要求 人员因素 数据库的规模 数据使用模式 技术环境
               灾难恢复的要求-->数据恢复的时间目标: 数据离线情况下可以容忍的时间  数据恢复的程度和所需要的时间: 数据的丢失程度 数据恢复的有效点  数据恢复后对业务的影响
               制订备份计划-->应该备份那些数据 备份执行的时间与周期 采用什么样的备份介质与设备 备份内容的有效性验证策略 自动化备份任务的实现与程度 选择备份介质的保留、循环使用和归档策略 如何确保备份的计划和内容符合计划制定的要求
              灾难恢复资源清单-->硬件、软件信息和获取途径: 硬件型号、数量、存放位置和获取方式 软件版本、服务包、补丁更新  灾难恢复相关人员及其联系方式: 决策人、负责人 技术团队  技术支持和相应的获取方式: 软硬件产品的技术支持电话、站点、邮件 技术文档的存放位置
               灾难处理预案-->针对可能的灾难情况,制订详细的处理步骤: 清晰可行,便于灾难处理中的实施 验证操作性  提供系统和数据验证的方法: 提供数据还原程度和系统恢复程度检测的检查表  确定灾难处理过程中的优先级
               推荐做法(1)-操作管理-->标准化的操作流程: 文档化的操作过程,按照预定的计划执行每个环节  团队组织: 为每个成员分配和确定相应的角色 明确的任务和责任范围 通过培训确保每个人熟悉当前的灾难恢复计划内容  变更控制: 通过文档清晰记录所有对系统和配置的改变
               推荐做法(2)-技术实现-->考虑使用地理位置分布的多数据中心结构: 数据的重要性、成本的因素  多层次纵深和冗余的备份方案: 热备份方案、冷备份方案 周期性对所有数据库进行完整备份  测试: 备份可用性测试 灾难恢复计划的预演与测试 在灾难恢复后依照基准测试整个系统和数据状态
               推荐做法(3)-灾难恢复计划的改进-->保留和分析灾难发生以及恢复过程的信息: 产生原因 灾难处理过程 灾难处理结果和存在的问题  修订已有的灾难恢复计划,以便更好地应对下一次灾难: 修改备份计划 完善灾难恢复预案
创建有效的数据备份:  确定适当的备份策略(1)-->分析业务需求确定数据恢复的需求  根据恢复标准对数据库进行分类: 以分类作为备份策略指定的标准 Ex."高频度关键应用数据库"、"低频度关键应用数据库"、"非关键应用数据库"  为每种类型的数据库指定恢复模型: 最小化数据损失 批量数据导入时的性能最大化 最小化维护成本
                          确定适当的备份策略(2)-->确定每种类型的数据库的备份需求: 完整数据库备份 差异备份 事务日志备份  为每种类型的数据库确定备份频度: 备份周期 介质的重复使用、归档计划  为每种类型的数据库确定备份安全策略  文档化整个备份策略  创建备份有效性验证和测试策略
                          保证备份的有效性(1)-->保障备份过程中有效性: 使用BACKUP的CHECKSUM选项进行页级和备份级的校验和检测  验证备份内容的可用性: 使用RESTORE VERIFYONLY验证备份内容  通过实际备份还原测试有效性: 进行抽样备份还原测试,检查备份的有效性
                        保证备份的有效性(2)-->使用备份镜像媒体集: 一次备份过程镜像生成多个备份副本 组合使用不同媒体集中的媒体卷达到最大的备份可用性
                        自动化备份任务-->根据备份策略和计划创建自动化备份作业: 定制SQL Server Agent作业 自动验证备份结果 创建备份失败提醒机制,及时发现失败的备份作业
                      保护备份内容的安全-->在安全的位置存放备份介质  确保备份介质传递中的安全  使用口令保护备份: BACKUP的PASSWORD选项不是强保护措施  加密备份内容: 使用EFS加密备份文件 使用第三方技术加密备份
                     数据库快照-->使用数据库快照创建阶段性数据还原基准: 为需要阶段性一致数据的应用提供还原基线
最短停机时间的系统还原: 还原数据库前的准备-->尾日志备份: 尽可能备份当前状态的事务日志 使用带有COPY_ONLY选项的尾日志备份  根据灾难恢复计划确定业务数据的优先级和备份位置
                                利用SQL 2005新特性实现快速还原-->在线还原减少停机时间: 尽快让数据库在线可用,再逐步还原其余备份数据 仅SQL Server 2005企业版支持  仅修复受损的数据部分: 段落还原 页面级还原  利用数据库快照迅速恢复到阶段性数据状态
                               处理备份还原中的错误-->尝试还原有错误的备份: 使用RESTORE的CONTINUE_AFTER_ERROR选项 恢复后的数据库被质疑
系统数据库的备份与还原: 系统数据库备份建议-->见下列表:
系统数据库           说明                             备份策略
master          记录SQL系统的所有系统级信息       经常备份master,执行系统配置修改后
model           所有数据库的模板                  更新数据库后备份
msdb            SQL代理警报和作业等信息           更新数据库后备份
resource        系统数据库只读对象                不用进行备份
tmpdb           临时工作存储空间                  不能进行备份
distribution    存储数据库复制元数据、历史数据等  定期对分发服务器进行备份
                         还原master数据库(1)-服务器实例能启动--&gt;将SQL Server启动到单用户模式: sqlserver.exe-m-s<instancename>  还原master数据库的最新备份  重新启动SQL Server
                        还原master数据库(2)-服务器实例无法启动--&gt;使用setup重建系统数据库  还原master数据库的最新备份  还原其它系统数据库  
                                                                     ./qn 
                                                                     .REINSTALLMODE=AMUS 
                                                                     .REINSTALL=ALL

本文转自 叶俊生 51CTO博客,原文链接:http://blog.51cto.com/yejunsheng/161361

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
目录
打赏
0
0
0
0
344
分享
相关文章
ASP.NET连接SQL数据库:详细步骤与最佳实践指南ali01n.xinmi1009fan.com
随着Web开发技术的不断进步,ASP.NET已成为一种非常流行的Web应用程序开发框架。在ASP.NET项目中,我们经常需要与数据库进行交互,特别是SQL数据库。本文将详细介绍如何在ASP.NET项目中连接SQL数据库,并提供最佳实践指南以确保开发过程的稳定性和效率。一、准备工作在开始之前,请确保您
435 3
SQL数据库安装指南:步骤详解与最佳实践
安装和配置SQL数据库可能是一个复杂的过程,但通过遵循本文提供的详细步骤和最佳实践,您可以确保数据库的成功安装和高效运行。无论您是初学者还是经验丰富的数据库管理员,掌握SQL数据库的安装和管理技能都是至关重要的。通过不断学习和实践,您将能够更好地利用SQL数据库来支持您的业务需求和数据分析工作。记住,定期维护和优化数据库是保证其长期性能和稳定性的关键。祝您在安装和配置SQL
SQL语句给予用户权限:技巧、方法与最佳实践
在数据库管理中,为用户分配适当的权限是确保数据安全性和操作效率的关键步骤
文章初学者指南:SQL新建数据库详细步骤与最佳实践
引言:在当今数字化的世界,数据库管理已经成为信息技术领域中不可或缺的一部分。作为广泛使用的数据库管理系统,SQL已经成为数据管理和信息检索的标准语言。本文将详细介绍如何使用SQL新建数据库,包括准备工作、具体步骤和最佳实践,帮助初学者快速上手。一、准备工作在开始新建数据库之前,你需要做好以下准备工作
477 3
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
Struts 2、Spring MVC、Play Framework 上演巅峰之战,Web 开发的未来何去何从?
【8月更文挑战第31天】在Web应用开发中,Struts 2框架因强大功能和灵活配置备受青睐,但开发者常遇配置错误、类型转换失败、标签属性设置不当及异常处理等问题。本文通过实例解析常见难题与解决方案,如配置文件中遗漏`result`元素致页面跳转失败、日期格式不匹配需自定义转换器、`&lt;s:checkbox&gt;`标签缺少`label`属性致显示不全及Action中未捕获异常影响用户体验等,助您有效应对挑战。
133 0
Vaadin Grid的秘密武器:打造超凡脱俗的数据展示体验!
【8月更文挑战第31天】赵萌是一位热爱UI设计的前端开发工程师。在公司内部项目中,她面临大量用户数据展示的挑战,并选择了功能强大的Vaadin Grid来解决。她在技术博客上分享了这一过程,介绍了Vaadin Grid的基本概念及其丰富的内置功能。通过自定义列和模板,赵萌展示了如何实现复杂的数据展示。
81 0
深入解析Entity Framework Core中的自定义SQL查询与Raw SQL技巧:从基础到高级应用的全面指南,附带示例代码与最佳实践建议
【8月更文挑战第31天】本文详细介绍了如何在 Entity Framework Core (EF Core) 中使用自定义 SQL 查询与 Raw SQL。首先,通过创建基于 EF Core 的项目并配置数据库上下文,定义领域模型。然后,使用 `FromSqlRaw` 和 `FromSqlInterpolated` 方法执行自定义 SQL 查询。此外,还展示了如何使用 Raw SQL 进行数据更新和删除操作。最后,通过结合 LINQ 和 Raw SQL 构建动态 SQL 语句,处理复杂查询场景。本文提供了具体代码示例,帮助读者理解和应用这些技术,提升数据访问层的效率和灵活性。
400 0
SQL 编程最佳实践简直太牛啦!带你编写高效又可维护的 SQL 代码,轻松应对数据库挑战!
【8月更文挑战第31天】在SQL编程中,高效与可维护的代码至关重要,不仅能提升数据库性能,还降低维护成本。本文通过案例分析探讨SQL最佳实践:避免全表扫描,利用索引加速查询;合理使用JOIN,避免性能问题;避免使用`SELECT *`,减少不必要的数据传输;使用`COMMIT`和`ROLLBACK`确保事务一致性;添加注释提高代码可读性。遵循这些实践,不仅提升性能,还便于后期维护和扩展。应根据具体情况选择合适方法并持续优化SQL代码。
108 0