DAT211:ChoosingaHighAvailabilitySolution议程介绍SQLServer的几种满足可用性需求的技术对可用性的高层次定义宕机的几种原因分析5种常见的高可用性需求,以及SQLServer的相应解决方案SQLServer高可用性功能的新名称始终在线技术主要用于支持需要高可用性的核心关键应用提高有计划宕机期间的可用性应用,操作系统,硬件升级系统维护为意外宕机提供保护和快速恢复人为出错系统问题从数据损坏恢复自然灾害SQLServer2005企业版提供始终在线技术微软将会继续投入,在未来SQLServer产品中扩展始终在线技术始终在线技术SQLServer™2005Microsoft®始终在线合作伙伴计划SQLServer™2005*****Inprogress什么是可用性?可用性通常是由明确的或暗含的服务级别协议(SLA)来定义的例如当订单能够在一分钟内处理完,那么订单系统就是可用的。可接受的最长宕机时间是每月5分钟。宕机时间=不能达到SLA的时间通常uptime是被记录下来的(i.e.99.993%),这个并不包括计划内的宕机时间SLA应该被用来设计,部署,修改和监控系统应用程序宕机原因系统管理更新安装,索引重建…逻辑错误(用户或应用)错误的数据修改,意外修改…自然灾害台风,火灾…硬件失败内存,网络,磁盘…软件失败BugsSQLServer2005高可用性方案高可用性需求解决方案系统管理在线管理从应用或用户错误中恢复逻辑恢复站点灾难保护数据库或存储镜像数据库查询横向冗余扩展复制高可用系统硬件Microsoft群集,SQLServer始终在线ReviewedSolutions在线管理应用场景举例打补丁或升级出于系统维护的需要,迁移一个表部署一个应用程序的新版本恢复损坏的数据解决方案滚动升级和数据库镜像热补丁,日志传送,或者复制快速升级在线命令:altertable,indexcreate,indexrebuild在线细粒度恢复企业版企业版滚动升级分三步1.升级镜像,或订阅者2.交换角色数据库镜像故障转移到镜像日志传送复制客户端重定向到订阅者3.升级原数据库1.norecovery备份主日志2.恢复辅助数据库3.重定向客户端到辅助数据库可选:再次交换角色在线管理SQLServer2005高可用性解决方案高可用性需求解决方案系统管理在线管理从应用或用户错误中恢复逻辑恢复站点灾难保护数据库或存储镜像数据库查询横向冗余扩展复制高可用系统硬件Microsoft群集,SQLServer始终在线ReviewedSolutions用户或应用程序错误恢复场景例子一张表被意外删除一个应用程序错误的修改了数据用户未经授权就修改了数据解决方案:逻辑恢复及时对系统进行快照周期性的照数据库快照用restoredelay/standby选项将日志传送到另外的站点上在关键时间点对日志进行标记使用diff工具比较表的当前版本和就的版本跟踪DML命令历史使用SQLTrace或定制的复制TransactionLogBackup日志备份SQLServer日志传送工作原理主数据库从属数据库从属实例主实例TransactionLogBackupTransactionLogBackupTransactionLogBackupTransactionLogBackupTransactionLogBackupTransactionLogBackup日志备份复制TransactionLogBackupupdateordersset….日志恢复SQLServer2005数据库快照工作原理主数据库V1Selectfromorderswhere…Updateordersset….DatabaseFilesInstanceV2快照数据库一旦创建,就维持原数据库的快照视图Createsnapshotdatabase“SnapshotDB”on(filename=files)assnapshotof“MainDB”DatabasePages逻辑恢复用户错误SQLServer2005高可用性解决方案高可用性需求解决方案系统管理在线管理从应用或用户错误中恢复逻辑恢复站点灾难保护数据库或存储镜像数据库查询横向冗余扩展复制高可用系统硬件Microsoft群集,SQLServer始终在线ReviewedSolutions站点灾难保护场景地震,火灾,洪水等造成数据中心无法运作解决方案数据镜像到从属站点优化方案–允许快速故障转移到从属站点可以采用日志传送实现额外的站点保护第三方的geo-群集方案实现数据中心存储介质级的冗余SQLServer始终在线建议解决方案:数据库镜像同步模式镜像服务器主体服务器见证服务器日志应用程序SQLServerSQLServer22451数据数据日志323镜像始终复制–保持同步提交数据库镜像配置分为三步第一步:使用norecovery参数将数据拷贝恢复到镜像站点第二步:配置通讯endpoint第三步:设置数据保护级别和启动镜像数据库镜像灾难恢复SQLServer2005高可用性解决方案高可用性需求解决方案系统管理在线管理从应用或用户错误中恢复逻辑恢复站点灾难保护数据库或存储镜像数据库查询横向冗余扩展复制高可用系统硬件Microsoft群集,SQLServer始终在线ReviewedSolutions数据库查询横向冗余扩展场景在备用服务器上进行接近实时的查询,并且这台服务器也用作灾难恢复冗余数据库服务器横向扩展以提高查询性能,并且可以用其中任意一台作为灾难恢复服务器解决方案事物复制点对点复制企业版复制选项NewJersey事物服务报表+冗余点对点复制查询横向扩展+冗余NewYorkBostonSeattleTokyoShanghaiEnglandSQLServer2005高可用性解决方案高可用性需求解决方案系统管理在线管理从应用或用户错误中恢复逻辑恢复站点灾难保护数据库或存储镜像数据库查询横向冗余扩展复制高可用系统硬件Microsoft群集,SQLServer始终在线ReviewedSolutions高可用系统硬件场景:最大的系统硬件可靠性解决方案Microsoft群集技术–实例故障转移SQLServer始终在线建议解决方案SQLServer始终在线合作伙伴提供的存储方案都是经过仔细的检查,都符合MicrosoftSQLServerStorageSolution需求SQLServer始终在线技术和合作伙伴的存储方案一起提供高度可用和可靠的点到点方案SQLServer始终在线合作伙伴计划的第一阶段主要是存储方案,将来阶段会注重其他的硬件和软件该计划的合作伙伴群集技术本地服务器硬件冗余使用共享磁盘子系统整个实体虚拟成一个单元,并作为一个单元故障迁移可以包括其他非SQLServer资源不直接支持灾难恢复合作伙伴提供存储级别的复制方案群集技术可以和数据库镜像,日志传送,或复制一起使用总体方案数据库镜像任备份暖备份逻辑恢复日志传送日志传送WithRestoreDelay生产环境数据库复制数据库查询横向扩展群集数据库镜像主数据库站点灾难恢复日志传送数据库额外灾难恢复逻辑恢复复制数据库查询横向冗余扩展群集本地服务器冗余始终在线合作伙伴方案极高的硬件可靠性更多信息SQLServerHighAvailabilityHome始终在线计划高可用性最佳实践资源TechnicalChatsandWebcasts://://://microsoft.com/msdn://://communities2.microsoft.com/communities/newsgroups/en-us/default.aspxTechnicalCommunitySites://:HighAvailabilityFeaturesByEditionFeatureExpressWorkgroupStandardEnterprise数据库镜像XXFailover群集XXBackupLog-shippingXXTransactional复制XXXXOnlineSystemChangesXXXXOnlineIndexingXOnlineBackupXOnlineRestoreXFastRecoveryX2NodeSynchronousSubscriber5PublicationsIncludesPeertoPeer