Server 解析SQL 2008高可用性技术特点 (server error)

VPS云服务器 2025-04-18 22:14:17 浏览
解析SQL

基于磁盘的备份

首先来看的是最简单的技术——备份。在SQL Server 2008的企业版中,备份有了一个新的特性,那就是备份压缩。那么备份压缩对于高可用有什么帮助呢?

那么就要提到现在业界非常流行的一种备份解决方案——磁盘备份解决方案,有很多与该解决方案相近的名称:在线备份、虚拟磁带库等等。这些方案其实都是基于一个思想,将数据备份到快速的在线磁盘设备上,这样就可以利用磁盘的高速IO和高速检索能力。不过磁盘的高昂代价往往是这种企业在这一解决方案面前驻足不前的主要原因,而现在SQL Server 2008企业版中的备份压缩可以大幅度减少备份后的文件尺寸,因此基于磁盘的备份解决方案看起来也更加有竞争力了。

基于磁盘的备份带来***的好处就是利用磁盘高速IO的能力进行快速的还原。这就可以缩短数据库服务离线的时间,同时也可以减少数据库备份这一维护操作对应用的影响。

数据库镜像+故障转移集群

上面我们介绍的故障转移集群、日志传送亦或基于磁盘的备份都是作为单一技术出现的,而在真实的大中型企业环境中为了确保数据应用的持续在线,我们通常有一些组合多种高可用技术的方案。通过混合不同可用性技术,我们将可以采长补短。

例如数据库镜像技术。

虽然数据库镜像可以解决故障转移集共享存储存在单点失效威胁、依赖于特殊硬件等一系列的问题,但是数据库镜像***的问题就是故障转移路径过短。对于大中型企业来说,仅有两个节点的故障转移路径有些不足。因此通过增加一个故障转移集群作为数据库镜像的镜像节点就可以解决了数据库镜像故障转移路径过短的问题。

上面这种解决方案当主体 服务器 失效后,数据库镜像会将启动镜像节点,而由于镜像节点是由一个故障转移集群承担的,因此当镜像节点中的一个节点失效后还有一个后备节点,因此还可以有一个后备节点承担。

其实故障转移集群和数据库镜像是各有利弊,因此这两种技术融合在一起后的解决方案不仅仅是上面这一种,下面就给出另外一种解决方案的示意图:

细心的读者可能会发现,方案二种没有了见证节点,这意味着从主集群切换到镜像集群需要手动完成。那么为什么这种解决方案中没有了见证节点呢?

因为数据库镜像和故障转移集群都拥有自动故障转移的特性,如果两种技术的自动切换都生效的话,那么在主体集群的活动节点失效后就会有两个节点同时试图生效——主体集群的后备节点和镜像集群的活动节点,那么结果就只有一个,数据库镜像会话失败。

远程故障转移集群

对于某些跨地区甚至是跨洲的大型集团来说,站点失效这个困扰会逐渐进入IT主管和DBA的脑海中。

不过远程故障转移集群就不仅仅是SQL Server一个人就能完成的了,这个方案要依赖于SQL Server,Windows Server这些基础软件,还要依赖于存储设备、交换机、服务器这些硬件。

因为在远程故障转移集群中,共享储存不再存在于一个数据中心,而是可能相距数十公里,甚至数千公里,因此中长距的底层存储同步往往是这一解决方案的关键。对于中长距的底层存储同步,通常分为两种,一种是在30公里内的,通过单模光纤可以实现两个数据中心存储设备间的同步复制,而另外一种则是在30公里之外了,而这种情况通常都是通过租用ICP的线路来实现两地间的异步复制。听上去好像很复杂,不过不用担心,EMC这样的厂商有非常成熟的硬件设备以及相关软件。这就是为什么在SQL Server的Always On中会出现EMC这样第三方厂商名字的原因。

远程故障转移集群的替代方案

其实对于远程故障转移集群来说,主要解决的问题是站点失效的问题,因此单纯使用SQL Server的功能也可以解决这个问题。尽管没有基于硬件的那么高效和稳定。

那么怎么构建一个相对廉价的远程容灾方案呢?我们的答案是故障转移集群+日志传送/复制。在不提到这两项技术的话,他们两个一定会有意见的。

日志传送依赖于日志备份以及还原来实现数据同步的,而复制呢,除了日志外多了一个快照(注意:复制中使用日志的方式与日志传送是不一样的)。因此我们只要确保主服务器的日志能够以一个合理的频率传送给远端的后备服务器,我们就可以提供一定程度上远程容灾能力了。

可是在SQL Server 2005之前,复制和日志传送都有一些小问题,日志传送是依赖于日志备份作业、日志传送作业和日志还原作业,因此日志传送无法做到连续性,他的嘴短同步间隔是一分钟,无法再短了。事务复制尽管能做连续,但是事务复制有主从之分,如果是多站点这项技术会严重限制后备服务器的自治能力。

不过从SQL Server 2005开始,事务复制有了一种新的模式,叫做对等事务复制。对等事务复制平等看待参与复制的所有节点,而取消了主从之分。这就给我们的多站点数据服务规划指出了一条新的道路。

不过大家在这张有些夸张的图里面也许可以看出些端倪。通过对等事务复制,我们确实可以设计出一个非常复杂的数据复制拓扑,利用高速/低速线路,优质/常规线路,我们可以在分布于多个站点的服务器之间构建出一个复制拓扑。说上面这张图是开玩笑,原因是通常复制拓扑不会这么混乱,但是对等复制一定可以制成这张图上出现的服务器数量,关键是要良好规划和设计。

算了,给张清楚点的吧。这是一个比较真实地对等复制拓扑,我们有两个站点。站点内拥有高速的链接,而站点间则是相对低速的租用链路。A、B、C分别是三个应用的数据库,A和C是本地性应用,因此仅在单个站点内进行了复制,保证其容灾能力,而B是一个集团性的应用,为了确保其数据的可用性,因此在站点内和站点间分别实现了复制冗余,同时站点A和站点B可以互不干扰对数据的使用(当然这要依赖于数据库的设计和对等复制链路的配置)。

SQL Server 2008在对等复制方面也有一个小小的改进,那就是冲突检测。在SQL Server 2005的对等事务复制中,冲突是一个非常头疼的事情,因此才会要求非常严格的数据访问隔离设计。SQL Server 2008会在发生冲突的时候暂停复制,既保证了两个站点间的正常数据访问,也保证了在数据冲突时不会错误覆盖正确的数据版本。

结束语

其实SQL Server的可用性和数据应用的可用性完全是两个层面的事情,SQL Server仅仅是数据应用中的一个组成部分,因此如何达到真正的系统可用性,还要考虑更多的问题,通讯(交换机、路由器之类)、网络服务(DNS、DHCP之类)、操作系统、应用服务(IIS、中间件服务器),还有很多很多的问题。

【编辑推荐】


asp.net和sql2008的特点和功能

1、是基于组件的,面向对象e799bee5baa6e79fa5ee4b893e5b19e134的模块化开发模式;2、更加广泛的底层支持,可以使用C#,VB等编程语言来作为宿主开发;3、运行效率与安全性,都是官方说法,不过相对ASP的安全性与效率,的确有很大的提升;4、程序运行时,会编译成DLL;5、MVC分层的开发模式,将显示与逻辑分离,比ASP和PHP要合理,当然了,PHP也可以实现MVC三层模型。 sql2008的特点和功能保护您的信息。 SQL Server 2008 利用全面审核功能、透明数据加密和外围应用配置器(仅启用所需服务最大限度地减少安全攻击)来提高符合性和安全性。 确保业务连续性。 SQL Server 2008 附带提供的数据库镜像可提高应用程序的可靠性,简化发生存储失败后的恢复过程。 提供可预测响应。 SQL Server 2008 提供更广泛的性能数据收集、新的中央数据存储库(存储性能数据),以及改进的数据压缩(使您可以更有效地存储数据)。 最大限度地减少管理监视。 Declarative Management Framework (DMF) 是 SQL Server 2008 中一个基于策略的新型管理框架,它通过为大多数数据库操作定义一组通用策略来简化日常维护操作,降低总拥有成本。 集成任何数据。 SQL Server 2008 提供改进的查询性能和高效且具成本效益的数据存储,允许您管理和扩展数量庞大的用户和数据。 提供相关信息。 SQL Server 2008 使用户可以在 Microsoft Office Word 和 Microsoft Office Excel 中创建复杂报表,并在内部和外部分享那些报表。 即时访问相关信息使员工可以做出更好、更快和更多相关决策。

SQL Server 2008

1. SQL Server 2008新功能一、可信任的 SQL Server 2008为关键任务应用程序提供了强大的安全特性、可靠性和可扩展性。 · 通过简单的数据加密、外键管理、增强审查来增强来扩展它的安全性。 · 通过改进了数据库镜像、热添加CPU简化管理并具高可靠性的应用的能力。 · 提供了一个广泛的功能集合,使你的数据平台上的所有工作负载的执行都是可扩展的和可预测的。 二、高效的 SQL Server 2008降低了管理系统、架构和Visual Studio® Team System的时间和成本,使得开发人员可以开发强大的下一代数据库应用程序。 · SQL Server 2008推出了陈述式管理架构(DMF) ,它是一个用于SQL Server数据库引擎的新的基于策略的管理框架。 · 对SQL Server的服务生命周期提供了显著的改进 ,它重新设计了安装、建立和配置架构。 · 提供了集成的开发环境和更高级的数据提取。 · 在与Visual Studio 的合作下,快速的创建偶尔连接系统。 · 提供了新的数据类型使得开发人员和管理员可以有效的存储和管理非结构化数据。 三、智能的 商业智能(BI)继续作为大多数公司投资的关键领域和对于公司所有层面的用户来说的一个无价的信息源。 SQL Server 2008提供了一个全面的平台,用于当用户需要时你可以为其提供智能化。 · 集成任何数据· 发送相应的报表· 使用户获得全面的洞察力 SQL Server 2008基于SQL Server 2005强大的OLAP能力,为所有用户提供了更快的查询速度。 这个性能的提升使得公司可以执行具有许多维度和聚合的非常复杂的分析。 2随着SQL Server 2008越来越多地进入到大家的视线中,也有越来越多的声音说SQL Server 2008 (Kaitmai)仅仅是SQL Server 2005的一个补丁包。 当初我也是这个想法,因为我们把太多的目光放到了例如Geo-Spatial支持、Hierarchical ID、File Stream上,确实这些功能都是建立在SQL Server 2005搭建的CLR -Integrated平台上的,但是我们也需要看到SQL Server 2008中的其他功能,例如Resource Governor、Declarative Management Framework、Change Data Capture、Reporting Service IIS agnostic report deployment等等。 SteveB在美国Launch中更将Policy-base Management列在SQL Server 2008 Top 10新功能的首位,还有美国Launch上关于Activity Monitor的改进、Object Search以及T-SQL Debugger被用户爱称为三项Surprise Features。 当然还是会有人说这些都是在DMV和DDL Triggers的技术基础或技术路线上发展起来的,不过哪个产品不是从一条技术路线或某项基础性改革上发展起来的呢?因此微软把SQL Server 6.0/6.5称为第一代数据库产品,SQL Server 7.0/2000称为第二代数据库,而SQL Server 2005/2008称为第三代数据库产品。 以此类推,那么SQL Server vNext是不是会变成第四代数据库产品呢,那又会有什么革命性的改变呢?Grid?...哦,跑题了因此我们还是应该宽容地看待SQL Server 2008,还是应该升级到SQL Server 2008的,升级有问题可以咨询EMC MSP么.3.完整的SQL 2008企业版有2G吧

sql server 2008有哪些版本

SQL Server2008版本很多,根据我们的需求,选择的SQL Server2008版本也各不相同,而根据应用程序的需要,安装要求亦会有所不同。 不同版本的 SQL Server 能够满足单位和个人独特的性能、运行时以及价格要求。 安装哪些 SQL Server 组件还取决于您的具体需要。 下面的部分将帮助您了解如何在SQL Server2008的不同版本和可用组件中做出最佳选择。 SQL Server 2008 的服务器版本下表介绍SQL Server2008的各个服务器SQL Server2008版本版本:术语 定义 Enterprise(x86、x64 和 IA64)1 SQL Server Enterprise 是一种综合的数据平台,可以为运行安全的业务关键应用程序提供企业级可扩展性、性能、高可用性和高级商业智能功能。 有关详细信息,请参阅 SQL Server 2008 各个版本支持的功能。 Standard(x86 和 x64) SQL Server Standard 是一个提供易用性和可管理性的完整数据平台。 它的内置业务智能功能可用于运行部门应用程序。 有关详细信息,请参阅 SQL Server 2008 各个版本支持的功能。 SQL Server Standard for Small Business 包含 SQL Server Standard 的所有技术组件和功能,可以在拥有 75 台或更少计算机的小型企业环境中运行。 1目前可以使用的 Enterprise 是可试用 180 天的 SQL Server 2008 Enterprise Evaluation。 有关详细信息,请参阅 SQL Server 网站。 SQL Server 2008 专业版SQL Server 2008 专业版是针对特定的用户群体而设计的。 下表介绍 SQL Server 2008 的各个专业版。 术语 定义 SQL Server 2008 Developer(x86、x64 和 IA64)SQL Server 2008 Developer 支持开发人员构建基于 SQL Server 的任一种类型的应用程序。 它包括 SQL Server 2008 Enterprise 的所有功能,但有许可限制,只能用作开发和测试系统,而不能用作生产服务器。 SQL Server 2008 Developer 是构建和测试应用程序的人员的理想之选。 可以升级 SQL Server 2008 Developer 以将其用于生产用途。 工作组(x86 和 x64)SQL Server Workgroup 是运行分支位置数据库的理想选择,它提供一个可靠的数据管理和报告平台,其中包括安全的远程同步和管理功能。 Web(x86、x64)对于为从小规模至大规模 Web 资产提供可扩展性和可管理性功能的 Web 宿主和网站来说,SQL Server 2008 Web 是一项总拥有成本较低的选择。 SQL Server Express(x86 和 x64)SQL Server Express with Tools(x86 和 x64)SQL Server Express with Advanced Services(x86 和 x64) SQL Server Express 数据库平台基于 SQL Server 2008。 它也可用于替换 Microsoft Desktop Engine (MSDE)。 SQL Server Express 与 Visual Studio 集成,从而开发人员可以轻松开发功能丰富、存储安全且部署快速的数据驱动应用程序。 SQL Server Express 免费提供,且可以由 ISV 再次分发(视协议而定)。 SQL Server Express 是学习和构建桌面及小型服务器应用程序的理想选择,也是独立软件供应商、非专业开发人员和热衷于构建客户端应用程序的人员的最佳选择。 如果您需要使用更高级的数据库功能,则可以将 SQL Server Express 无缝升级到更复杂的 SQL Server 版本。 compact 3.5 SP1 (x86)Compact 3.1 (x86)SQL Server Compact 3.5 免费提供,是生成用于基于各种 Windows 平台的移动设备、桌面和 Web 客户端的独立和偶尔连接的应用程序的嵌入式数据库理想选择。 有关 SQL Server 2008 各个专业版的详细信息,请参阅 SQL Server 网站。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐