集群CLUSTER种类介绍

基于iSCSI的SQL Server 2012群集测试(一)--SQL群集安装

SQL Server群集如何在线检测

群集中的MS DTC分布式事务协调器

一、SQL Server群集基本架构

无论群集还是非群集SQL Server服务器,都是需要有以下基本组成部分才能提供数据服务:

  1. SQL Server实例,也可以认为是SQL Server二进制可执行文件,它组成数据库管理系统运行的各个服务,管理数据库数据和客户端的需求,执行操作等。不管是群集还是非群集这些实例都是安装在本地磁盘上,以提供服务,因此在安装SQL Server群集不仅在活动节点安装主SQL Server群集,还要在不同节点添加群集服务。
  2. 系统和用户数据库,包含实实在在的数据,以及各个数据库单独的设置等;非群集下,数据存储在本地,被本地实例访问;群集情况下,数据库放在共享存储上,每个节点都有能力访问到(但任何时候只允许活动节点访问);SQL Server实例通过挂载数据库来完成数据库管理。
  3. 访问数据库还需要服务器网络名,或者IP地址。本地采用本地IP或者别名,群集访问虚拟名称或虚拟IP。

Figure 1.1 SQL Server群集基本架构

通过以上群集服务器的改变,SQL Server服务故障转移到另外一个节点前首先停止失败节点的SQL Server服务,共享存储挂载到备节点,虚拟IP重新绑定到备节点的公共网卡接口,再启动备节点的SQL Server服务,备节点的服务读取共享存储数据,从而业务恢复。客户端只是通过虚拟名称或虚拟IP访问SQL Server服务,从而访问数据库资源。

Windows群集方式有多种,在多种凡是的基础上,SQL Server群集实例安装也有多种方式,不同业务可选择不同方式安装,在以安全和稳定的基础上可尽量的利用服务器资源。

二、SQL Server群集资源与依赖关系

在dos界面输入cluster res 可查看Cluster群集资源有哪些,如下图所示为Windows群集的资源,哪些资源为SQL Server群集服务呢?

2.1 共享存储

存储系统和用户数据库,数据库错误日志。tempdb可不存储在共享存储上,由于重启服务时,tempdb会从新生成。然而要求不同节点都拥有tempdb的存放路径。以防止重启出现路径不存在异常。

存储一直都是计算机界的一个瓶颈,对IO读写要求高的数据库此瓶颈尤为明显,因此在访问频繁的数据库建议使用Raid10以提高磁盘性能。

2.2 群集组

群机组中有Windows群集的虚拟网络名称和Ip,用于管理Windows群集。平常情况下,不管是心跳检测还是服务检测,都是节点网络之间通信,很少涉及访问域的情况,但若是发生故障转移,需要验证各个群集节点,涉及到域服务器。

2.3 SQL Server群集虚拟IP和虚拟网络名称

SQL Server IP地址和网络名称,为客户端提供链接。网络名称名称指向虚拟IP地址,SQL Server访问网络名称。

SQL Server网络名称对于跨子网群集同样存在是否所有IP都注册上线问题,通过测试确定是不需要都注册上线。需要将RegisterAllProvidersIP 设置为0:cluster res "SQL Server群集名称" /priv RegisterAllProvidersIP=0

2.4 SQL Server服务和其他服务

SQL Server服务和其他服务提供数据库服务。

2.5 群集资源依赖关系

以上资源相互协作,通过群集服务管理器管理彼此关系,从而提供服务。这些资源的依赖关系如下图所示:

1.网络名称依赖于虚拟IP地址

对跨子网群集,添加群集节点的时候,存在跨子网访问的情况,次数虚拟网络会在域中注册两个IP地址,这两个IP的依赖关系为OR,也就是只能有一个在线。

2. SQL Server服务依赖于共享存储与网络名称

只有共享存储和网络名称同时在线的情况下SQL Server服务才能启动。

3. SQL Agent服务依赖于SQL Server 服务

三、SQL Server群集如何在线检测

四、SQL Server群集服务

数据库引擎服务(Database Engine)

SQL Server数据库的核心组件,可以做成群集。在群集中安装SQL Server数据库引擎,连带安装SQL Server复制分发,全文索引,数据质量分析。

分析服务(Analysis Services)

从SQL Server 2005开始支持分析服务群集;

如果单独部署分析服务群集,则非常简单,不需要考虑太多;如果要和数据库引擎服务一起部署到同一个群集上面,建议是将数据库引擎服务和分析服务单独安装到各自的资源组里面(这就需要各自资源组各自占有自己的共享磁盘、名称、IP地址资源)

如果将分析服务和数据库引擎服务安装在同一个资源组里面,分析服务系统数据库会和数据库系统数据库安装在一起,一旦放置系统数据库的磁盘出现问题,分析服务也会受到影响。同时在需要升级数据库引擎服务或者分析服务时候,二个服务也必须同时升级。

全文索引和SQL Server Broker

从SQL Server 2008开始,全文索引和SQL Server Broker服务已经集成到数据库引擎服务里面,所以在发生数据库引擎服务故障转移之后,二者亦可正常工作。

报表和SSIS 服务

报表和SSIS服务程序里面暂不支持群集API,无法向数据库引擎那样做成群集。但是也可以通过建立通用群集应用程序来将报表和SSIS做成群集。不过因为二者代码里面并不包含群集API,所以某些功能可能在切换之后不正常。

SQL Writer 服务

群集每个节点上面都会安装该服务,默认禁用。

SQL Server 浏览器服务

群集中每个节点也会安装该服务,该服务无法群集。

五、群集中的MS DTC分布式事务协调器

SQL Server群集知识介绍的更多相关文章

  1. SQL Server群集如何在线检测

    SQL Server群集知识介绍 Windows群集安装 基于iSCSI的SQL Server 2012群集测试 前言 群集的检测是调用dll资源,例如对于共享存储,ip,网络名称与DTC 这类Win ...

  2. SQL server基础知识(表操作、数据约束、多表链接查询)

    SQL server基础知识 一.基础知识 (1).存储结构:数据库->表->数据 (2).管理数据库 增加:create database 数据库名称 删除:drop database ...

  3. AlwaysOn可用性组功能测试(二)--SQL Server群集故障转移对AlwaysOn可用性组的影响

    三. SQL Server群集故障转移对AlwaysOn可用性组的影响 1. 主副本在SQL Server群集CLUSTEST03/CLUSTEST03上 1.1将节点转移Server02.以下是故障 ...

  4. Sql Server 基础知识

    Sql Server 基础知识: http://blog.csdn.net/t6786780/article/details/4525652 Sql Server 语句大全: http://www.c ...

  5. 转:sql server锁知识及锁应用

    sql server锁(lock)知识及锁应用 提示:这里所摘抄的关于锁的知识有的是不同sql server版本的,对应于特定版本时会有问题. 一 关于锁的基础知识 (一). 为什么要引入锁 当多个用 ...

  6. 第三篇——第二部分——第一文 SQL Server镜像简单介绍

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/DBA_Huangzj/article/details/26951563 原文出处:http://bl ...

  7. [转]SQL Server编程:SMO介绍

    转自:周公 最近在项目中用到了有关SQL Server管理任务方面的编程实现,有了一些自己的心得体会,想在此跟大家分享一下,在工作中用到了SMO/SQL CLR/SSIS等方面的知识,在国内这方面的文 ...

  8. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 1.整数类型 int 存储范围是-2,147,483,648到2,147,483 ...

  9. SQL Server基础知识

    1.SQL Server表名为什么要加方括号? 这个不是必须要加,但表名或字段名如果引用了sqlserver中的关键字,数据库会不识别这到底是关键字还是表名(或字段名)时就必须要加. 比如,一个表名叫 ...

随机推荐

  1. C#/ASP.NET定时任务执行管理器组件–FluentScheduler定时器

    必须JobManager初始化 方式1: public void Start()         {             JobManager.AddJob(() => FetchingDa ...

  2. redux-observable笔记

    欢迎指导与讨论:) 前言 本文不涉及深入的知识,只是在概念层面和一个简单的例子解释redux-observable的工作原理. redux-observable,是redux的一个中间件库.它能够自动 ...

  3. [LeetCode] Single Number III 单独的数字之三

    Given an array of numbers nums, in which exactly two elements appear only once and all the other ele ...

  4. python网络编程-TCP协议中的三次握手和四次挥手(图解)

    建立TCP需要三次握手才能建立,而断开连接则需要四次握手.整个过程如下图所示: 先来看看如何建立连接的. 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资 ...

  5. 预览github上的html页面

    譬如有个项目:https://github.com/wozhizui/ife/tree/DevTogether/task19 里面有html的示例文件index.html 我们点击进去看到的是一堆代码 ...

  6. Scala元组

    object TupleTest { def basic(firstName: String, lastName: String, age: Int): (String, String, Int) = ...

  7. vi学习总结

    1.模式 命令行模式:光标的移动.内容删除移动复制操作 插入模式:文字输入,即编辑状态 底行模式:文件保存或退出vi,设置编辑环境 2.基本操作 vi myfile,输入vi 文件名,,则进入vi. ...

  8. 图文混排--CoreText的简单运用

    常见的在一些微博微信中可以看见一段文字中有不同的字体,字体有不同的颜色,并且可能会有一些笑脸之类的表情,这些可以通过图文混排做到. 图文混排可以通过WebView和CoreText做到,其他还有别的方 ...

  9. c#上级目录

    本文实例讲述了C#的path.GetFullPath 获取上级目录实现方法,分享给大家供大家参考.具体实现方法如下: string path = new directoryinfo("../ ...

  10. 2016福州大学软件工程第三次个人作业-K米软件产品评测

    K米软件测评个人作业结果统计如下: 评分标准: 按照栋哥布置的第三次个人作业--K米测评制定评分标准如下: 第一部分:调研.评测 下载并使用,描述最简单直观的个人第一次上手体验. 0.5 按照描述的b ...