兼容性测试:

测试脚本:

环境:windows failover cluster

主库执行脚本:

USE [master]
GO
ALTER AVAILABILITY GROUP [test_AG]
MODIFY REPLICA ON N'host1' WITH (FAILOVER_MODE = AUTOMATIC)
GO

报错:
Msg 35215, Level 16, State 17, Line 3
The Alter operation is not allowed on availability replica 'UELT1WASFSD01VS', because automatic failover mode is an invalid configuration on a SQL Server Failover Cluster Instance. Retry the operation by specifying manual failover mode.

结果证明AG 自动failover的属性和windows failover cluster不兼容,如果要启用AG自动failover必须使用单实例模式的sql server.

2.AG自动failover功能测试

测试1:
在sscm中手动停止主库sql service,观察是否自动failover到备库。

测试2:

直接关闭主库所在的主机,观察是否failover到备库

测试1和测试2均实现自动failover。

在failover期间,会有应用程序连接拒绝出现:

11/01/19 06:04:10.368 [0x00003688] [spid 769] SQLState: 08S01, Native Error: 10054, Severity: 0, State: 10, Line: 0
[Microsoft][SQL Server Native Client 11.0]TCP Provider: An existing connection was forcibly closed by the remote host.

3.AG Failover性能测试
table: 5218283 rows clustered.
query: select count(*) from test
command:.\ostress -Suedv1wasfsdba01 -dtest -E -Q"select count(*) from dbo.test" -ooutput -mstress -n500 -r100 -T10 -T88 -T146

Primary Session number

Secondary session number

1st

Failover time(s)

2nd

Failover time(s)

3rd

Failover time(s)

300

0

5

5

5

0

300

25

25

23

500

0

5

5

5

0

500

44

46

31

1000

0

5

5

5

0

1000

89

88

91

session 1000的时候,客户端报连接超时错误:
解决方案:
exec sp_configure 'max worker threads',4096
go
reconfigure

总结:

1.Avalibility group 自动failover 和 FCI failover不兼容,只能应用于 standalone instance.

2.Avalibility group automatic failover 执行sql service 宕机 failover and 主机宕机 failover.

3. failover 时间取决于备库上只读会话并发数目,可以降低主要备库上的只读负载,而在非主要备库上执行只读负载的方式来降低failover的时间。

 

SQL Server Availability Group Failover 测试的更多相关文章

  1. [转]SQL SERVER整理索引碎片测试

    SQL SERVER整理索引碎片测试 SQL SERVER整理索引的方法也就这么几种,而且老是自作聪明的加入智能判断很不爽,还是比DBMS_ADVISOR差远了: 1SQL SERVER 2000/2 ...

  2. SQL Server 之 GROUP BY、GROUPING SETS、ROLLUP、CUBE

    1.创建表 Staff CREATE TABLE [dbo].[Staff]( ,) NOT NULL, ) NULL, ) NULL, ) NULL, [Money] [int] NULL, [Cr ...

  3. SQL server 关于 GROUP BY 详细讲解和用法

    1. Group By 语句简介: Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”.它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若 ...

  4. sql server CTE递归使用测试

    --CTE递归查询 if(object_id(N'menu') > 0) drop table menu CREATE TABLE MENU ( name nvarchar(50) NOT NU ...

  5. Configure Always On Availability Group for SQL Server on RHEL——Red Hat Enterprise Linux上配置SQL Server Always On Availability Group

    下面简单介绍一下如何在Red Hat Enterprise Linux上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的 ...

  6. SQL Server AlwaysON从入门到进阶(6)——分析和部署AlwaysOn Availability Group

    前言:   本节是整个系列的重点文章,到现在,读者应该已经对整个高可用架构有一定的了解,知道独立的SQL Server实例和基于群集的SQL Server FCI的区别.上一节已经介绍了如何安装SQL ...

  7. SQL Server 2012实施与管理实战指南(笔记)——Ch3Alwayson可用组

    3.AlwaysOn可用组 Alwayson支持的,是一个可用性组,每个可用性组是包含了多个用户数据库的容器,可用性组内的数据库可以作为一个整体进行故障转移. AlwaysOn关键特性: 一.类似集群 ...

  8. SQL Server温故系列(5):SQL 查询之分组查询 GROUP BY

    1.GROUP BY 与聚合函数 2.GROUP BY 与 HAVING 3.GROUP BY 扩展分组 3.1.GROUP BY ROLLUP 3.2.GROUP BY CUBE 3.3.GROUP ...

  9. Windows Server 2012搭建SQL Server Always On踩坑全记录

    Windows Server 2012搭建SQL Server Always On踩坑全记录 环境信息: Windows Server 2012 R2 Sql Server 2012 整个搭建集群的过 ...

随机推荐

  1. 高效编程之 concurrent.future

    背景 我们知道 Python 中有多线程threading 和多进程multiprocessing 实现并发, 但是这两个东西开销很大,一是开启线程/进程的开销,二是主程序和子程序之间的通信需要 序列 ...

  2. bind函数作用、应用场景以及模拟实现

    bind函数 bind 函数挂在 Function 的原型上 Function.prototype.bind 创建的函数都可以直接调用 bind,使用: function func(){ consol ...

  3. Python 从大型csv文件中提取感兴趣的行

    帮妹子处理一个2.xG 大小的 csv文件,文件太大,不宜一次性读入内存,可以使用open迭代器. with open(filename,'r') as file # 按行读取 for line in ...

  4. wex5 如何利用 百度地图 定位 和 天气插件

    引包: require("cordova!cordova-plugin-geolocation"); require("cordova!com.justep.cordov ...

  5. 剑指offer-2:斐波那契数列

    二.斐波那契数列 题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). n<=39 1.递归法 1). 分析 斐波那契数列的标准公式为 ...

  6. linux新建用户并分配sudo权限

    新建用户 useradd [username] 给用户设置密码 passwd [username] 设置sudo权限 首先将sudoers权限设置可写入 chmod u+w /etc/sudoers ...

  7. zabbix 添加图行树

    1.安装graphtree cd /usr/share/zabbix wget https://raw.githubusercontent.com/OneOaaS/graphtrees/master/ ...

  8. linux批量设置部分文件与文件夹权限

      批量设置web目录下文件.文件夹名为sitemap.xml.sitemap 属性为777 cd /www/web find ./ -name 'sitemap' -exec chmod -R 77 ...

  9. Mapnik使用postgres中的栅格数据

    XML: <?xml version="1.0" encoding="utf-8"?> <Map background-color=" ...

  10. 对url给后台传数据的时候特殊字符需要转义

    URL中的字符只能是ASCII字符,但是ASCII字符比较少,而URL则常常包含ASCII字符集以外的字符,如非英语字符,汉字,特殊符号等等,所以要对URL进行转换.这个过程就叫做URL编码,或者叫U ...