001.SQLServer高可用简介

2019年7月1日12:58:17001.SQLServer高可用简介已关闭评论 223

一 SQLServer高可用集群相干观点

1.1 Windows毛病转移聚集

Windows毛病转移聚集是由多个效劳器构成的配合供应某高可用效劳,该效劳用于防备单台效劳器毛病致使效劳失效。毛病转移聚集是一种高可用性的基本结构层,由多台计算机构成,每台计算机相当于一个冗余节点,悉数聚集体系许可某局部节点掉线、毛病或破坏而不影响悉数体系的一般运作。一台效劳器接收发作毛病的效劳器的历程一般称为"毛病转移"。

1.2 集群节点

运转着雷同Microsoft 聚集效劳 (MSCS)的一组(相干)效劳器。每一个效劳器也被称为“节点”(Node),每一个节点上都运转着Microsoft 聚集效劳 (MSCS)。这些节点有雷同的软硬件设置装备摆设,而且具有同享的磁盘(Shared Array)。

1.3 同享的磁盘(Shared Array)

集群中的一块逻辑磁盘,或一块磁盘上的一个mountpoint,关于一个SQL Server聚集实例,寄存着数据库的一切数据文件和事件日记文件(MDF,NDF和LDF),SQL Server和SQLServer Agent的日记文件(ERRORLOG),以及一些其他的文件和目次,必需设置同享磁盘和SQLServer资本在一个资本组里,如许就包管了运转SQL Server效劳的节点一定能接见到同享磁盘里的数据。
事实上SQL Server资本和同享磁盘资本是具有“依靠”干系的。也就是说在磁盘资本没法在某节点一般运转的时刻,SQL Server资本在该节点也没法上线运转。
注重:一个同享磁盘资本只能属于一个SQLServer实例(事实上,在装置SQL Server聚集实例时是SQLServer装置在一个已被其他SQL Server聚集实例运用的同享磁盘上的)。然则一个SQLServer聚集实例可以或许运用多个同享磁盘。

1.4 私有收集和大众收集

"私有收集"(private network),每一个节点上有一块私有网卡,这些网卡经由过程收集相互衔接构成了私有收集。节点之间经由过程私有收集相互发送旌旗灯号来感知相互是不是已事情一般,这类旌旗灯号被称为“心跳线”。一旦某效劳器因为某种非常而没法回应旌旗灯号,此时盈余的节点就以为这个节点已“死了”,因而就把这个节点消除出今后聚集。
"公用收集"(public network),用来被聚集外部的资本所运用的一个收集。每一个节点上有一块大众网卡,外部资本经由过程公用网卡来接见这个节点。
注重:私有网卡和大众网卡在物理上可以或许是一块网卡,这类时刻聚集就经由过程一个收集来完成私有收集和大众收集的职责,这个收集被称其为夹杂收集(mixednetwork)。

1.5 SQLServer收集名和SQL Server IP地点

SQL Server聚集其实不运用Windows聚集的假造收集名和假造IP地点来作为运用顺序接见它的接口。在SQLServer的资本组里有该SQL Server实例本身专用的假造收集名和IP地点这两个资本,它们供应了运用顺序接见SQL Server时运用的机械名或许IP地点。事实上,无论是Windows聚集照样SQL Server聚集的假造机械名/IP,它们的资本范例都是雷同的,只是它们一个效劳于Windows假造效劳器;一个效劳于SQL Server聚集实例。

1.6 SQL Server毛病转移聚集

所谓的SQL Server毛病转移聚集,就是将SQLServer布置在Windows聚集合的多个节点上,然后构成一个假造的SQLServer实例。如许SQL Server 实例依就像运转在单台计算机一样显现在收集合。不外它具有一种功用,即在今后运转SQLServer实例的节点弗成用时,可以或许在节点之间举行毛病转移,把SQL Server切换到事情一般的节点上去继承为运用顺序供应效劳。
完成这个功用,须要将SQL Server装置成聚集形式,而不是单机形式。装置的详细步骤,请拜见本书的第一章。装置胜利今后,您就可以或许看到本节所提到的各个治理界面了。

1.7 组员组和活泼节点

“资本组”就是由一个或许多个资本构成的组。一切的毛病转移都是以资本组为单元发作的,在任何时刻,每一个资本组都仅属于聚集合的一个节点,这个节点就是该资本组的“活泼节点”。因为资本组里的资本是一同切换的,以是这些资本应当是相互联系关系,而且协同事情来供应某项效劳。用户应当只管制止把无关的资本加入到同一个资本组里。可以或许简朴地把资本组设想成在假造效劳器上运转的一个个自力的运用顺序或许效劳,而聚集手艺为这些运用顺序或许效劳供应了高可用的特征。

二 高可用战略

今后SQL Server供应了多种高可用性手艺,重要包罗:集群、复制、镜像、日记传送、AlwaysOn可用性组以及别的诸如文件组备份复原、在线重修索引等单实例的高可用性手艺。须要基于营业和手艺综合斟酌详细所接纳的高可用计划,因为没有一项零丁的手艺可以或许完成一切的功用。
一般在设想高可用性战略时应当起首斟酌下述要素:
RTO(Recovery Time Objective):规复时候目的,即意味着许可若干宕机时候,一般用几个9透露表现,比如说99.999%的可用性意味着每一年的宕机时候不凌驾5分钟、99.99%的可用性意味着每一年的宕机时候不凌驾52.5分钟、99.9%的可用性意味着每一年的宕机时候不凌驾8.75小时。
提醒:一般RTO的计算方法须要斟酌体系是24*365,照样仅仅是上午6点到下昼9点等。同时须要斟酌是不是珍爱窗口的时候在算在宕机时候以内,若是许可在珍爱窗口时候举行数据库珍爱和打补丁,则更轻易完成更高的可用性。
RPO(Recovery Point Objective):规复点目的,即意味着许可若干数据丧失。一般只需做好备份,可以或许对照轻易的完成零数据丧失。但当灾害发作时,取决于数据库破坏的水平,从备份规复数据所须要的时候会致使数据库弗成用,这会影响RTO的完成。

三 罕见备份体式格局

依据主机和备机之间同步数据的水平,备份可以或许分为三种状况,分别为冷备份、暖备份和热备份。

3.1 冷备份

冷备份也就是所谓的备份,备用效劳器被设置装备摆设用于接收主效劳器的数据,当出毛病时,手动将数据复原到主数据库,或是重新设置装备摆设顺序的衔接字符串或权限来使得备份数据库上线。

3.2 暖备份

暖备份也就是主效劳器数据会一向的将日记传送到备用效劳器(距离不定,可以或许是15分钟,30分钟,1分钟等等),在这体式格局下,主效劳器到备份效劳器一般是异步更新,以是不克不及包管主效劳器和备份效劳器数据一致。别的,该计划一般不会完成自动毛病监测和毛病转移。

3.3 热备份

热备份也就是主效劳器的数据自动在备份效劳器上举行同步,大多数状况下都邑包罗自动的毛病监测和毛病转移,而且可以或许包管主效劳器和备份效劳器的数据一致性。
提醒:跟着冷备份到暖备份到热备份,本钱会直线上升。

四 SQL Server高可用特征

4.1 特征简介

SQL Server中所支撑的高可用性功用与版本痛痒相干,企业版支撑一切的高可用性功用,这些功用包罗:

  1. 毛病转移集群
  2. 数据库镜像
  3. 事件日记传送
  4. 数据库快照
  5. 高可用性晋级
  6. 热加载内存
  7. 在线索引操纵
  8. 数据库局部在线(只复原了主文件组或主文件组和分外的NDF文件)

详细何种版本支撑哪些高可用特征,请参阅:http://msdn.microsoft.com/zh-cn/library/cc645993.aspx,值得注重的是免费的Express版本可以或许作为数据库镜像的见证效劳器,从而节省了本钱。

4.2 毛病转移集群

毛病转移集群为悉数SQL Server实例供应高可用性支撑,这意味着在集群上某个节点的SQL Server实例发作了硬件毛病、操纵体系毛病等会毛病转移到该集群上的别的节点。经由过程多个效劳器(节点)同享一个或多个磁盘来完成高可用性,毛病转移集群在收集合涌现的体式格局就像单台计算机一样,然则具有高可用特征。
注重:因为毛病转移集群是基于同享磁盘,因而会存在磁盘单点毛病,因而须要在磁盘层面布置SAN复制等分外的珍爱措施。最罕见的毛病转移集群是双节点的毛病转移集群,包罗主主节点和主从节点。
瑕玷:辅佐节点弗成用,数据单点。

4.3 事件日记传送

事件日记传送供应了数据库级别的高可用性珍爱。日记传送可用来珍爱响应消费数据库(称为“主数据库”)的一个或多个备用数据库(称为“辅佐数据库”)。发作毛病转移之前,必需经由过程手动运用悉数未复原的日记备份来完整更新辅佐数据库。日记传送具有支撑多个备用数据库的灵活性。若是须要多个备用数据库,可以或许零丁运用日记传送或将其作为数据库镜像的增补。当这些解决计划一同运用时,今后数据库镜像设置装备摆设的主体数据库同时也是今后日记传送设置装备摆设的主数据库。
事件日记传送可用于做冷备份和暖备份的体式格局。
瑕玷:日记复原时不克不及读取数据,严厉意义上不属于热备份。

4.4 数据库镜像

数据库镜像实际上是个软件解决计划,一样供应了数据库级别的珍爱,可供应几乎是瞬时的毛病转移,以进步数据库的可用性。数据库镜像可以或许用来珍爱响应消费数据库(称为“主体数据库”)的单个备用数据库(或“镜像数据库”)。
因为镜像数据库一向处于复原状况,但其实不会规复数据库,因而没法直接接见镜像数据库。然则,为了用于报表等只读的负载,可建立镜像数据库的数据库快照来间接地运用镜像数据库。数据库快照为客户端供应了快照建立时对数据库中数据的只读接见。每一个数据库镜像设置装备摆设都触及包罗主体数据库的“主体效劳器”,而且还触及包罗镜像数据库的镜像效劳器。镜像效劳器不断地使镜像数据库随主体数据库一同更新。
    数据库镜像在高安全性形式下以同步操纵运转,或在高机能形式下以异步操纵运转。在高机能形式下,事件不须要守候镜像效劳器将日记写入磁盘即可提交,如许可最大水平地进步机能。在高安全性形式下,已提交的事件将由同伴两边提交,但会延伸事件滞后时候。数据库镜像的最简朴设置装备摆设仅触及主体效劳器和镜像效劳器。在该设置装备摆设中,若是主体效劳器丧失,则该镜像效劳器可以或许用作备用效劳器,但可能会形成数据丧失。高安全性形式支撑具有自动毛病转移功用的备用设置装备摆设高安全性形式。这类设置装备摆设触及到称为“见证效劳器”的第三方效劳器实例,它可以或许使镜像效劳器用作热备份效劳器。从主体数据库至镜像数据库的毛病转移一般要用几秒钟的时候。
数据库镜像可用于做暖备份和热备份。
瑕玷:最多只支撑两个节点,辅佐节点可用性差。

4.5 复制

复制严厉来说其实不算是一个为高可用性设想的功用,但确实可以或许被运用于高可用性。复制供应了数据库对象级别的珍爱。复制运用的是宣布-定阅形式,即由主效劳器(称为宣布效劳器)向一个或多个辅佐效劳器或定阅效劳器宣布数据。复制可在这些效劳器间供应及时的可用性和可伸缩性。它支撑挑选,以便为定阅效劳器供应数据子集,同时还支撑分区更新。定阅效劳器处于联机状况,而且可用于报表或其他功用,而无需举行查询规复。SQL Server 供应四种复制范例:快照复制、事件复制、对等复制以及兼并复制。
瑕玷:非高可用功用,经常使用于读写星散,珍爱本钱较高。

4.6 AlwaysOn可用性组

AlwaysOn可用性组是SQL Server 2012推出的新功用。一样供应了数据库级别的珍爱。它取数据库镜像和毛病转移集群之长,使得营业上有联系关系的数据库作为一个可用性组配合毛病转移,该功用还拓展了数据库镜像只能1对1的限定,使得1个主副本可以或许对应最多4个辅佐副本(在SQL Server 2014中,该限定被拓展到8个),个中2个辅佐副本可以或许被作为热备份和主副本及时同步,而别的两个异步辅佐副本可以或许作为暖备份。别的,辅佐副本还可以或许被设置装备摆设为只读,并可用于负担备份的负载。
正因为如此,数据库镜像在SQL Server 2012中被标记为“过期”。
长处:微软较综合的计划,可逃避毛病转移聚集、镜像、复制、日记传送几种手艺的瑕玷。
瑕玷:SQL Server2012版本能力运用,没法自动完成负载平衡,须要本身设置装备摆设读或写字符串。 

4.7 Moebius负载平衡集群

Moebius for SQL Server 是格瑞趋向特地针对Microsoft SQL Server开辟的综合集群平台,基于SQL Server的内核完成,中心顺序宿主在SQL Server的内核当中,该集群可完成数据库的负载平衡及横向扩大;包管数据库的可用性;包管多份冗余数据的及时同步。
Moebius集群,可以或许完成SQL语句一级的负载平衡;同时将自动毛病监测、假造IP及失利转移手艺融入个中,知足企业对高可用体系建立的请求;数据复制时,接纳了同步和异步两种复制形式,可完成数据在多台效劳器间及时同步,包管事件的一致性和完整性,支撑远距离复制;Moebius集群具有带宽占用少、同步效率高、数据及时性高、数据一致性保证好的特性。
长处:第三方较综合的计划,可逃避毛病转移聚集、镜像、复制、日记传送几种手艺的瑕玷。
瑕玷:大批量写入操纵(相似收罗体系)数据同步会有机能斲丧。  
参考:https://blog.csdn.net/z_cloud_for_sql/article/details/58042356
https://blog.csdn.net/kk185800961/article/details/72831081
https://www.cnblogs.com/zerocc/archive/2013/05/27/3101568.html
 

avatar