mg4377娱乐娱城官网_mg4377娱乐手机版_www.mg4377.com

当前位置: mg4377娱乐娱城官网 > mg > 正文

Server的AlwaysOn协理别本,从0初步搭建SQL

时间:2019-09-17 04:11来源:mg
动用HAProxy代理SQL Server的AlwaysOn援助别本 公司近些日子数据库进级到SQL Server2016 ,并安插了alwayson高可用集群 机室内有三套程序须求读取数据库 首先套:主程序,读写数据库,连接主别

动用HAProxy代理SQL Server的AlwaysOn援助别本

公司近些日子数据库进级到SQL Server2016 ,并安插了alwayson高可用集群

机室内有三套程序须求读取数据库

首先套:主程序,读写数据库,连接主别本

其次套:报表程序,读报表,连接扶助别本

其三套:历史库程序,读历史库,连接协助别本

 

软件条件

图片 1

机械蒙受

图片 2

 

架构图

图片 3

为什麽须要利用HAProxy?

事先机房里面有三千个终端,那些极端是三个非常的小的嵌入式设备,第二套报表程序原本是运用直连数据库IP(10.11.10.36)来三番五次数据库

但这么有二个弊病,当36那台帮忙别本宕机,那么报表程序就瘫痪了,因为两千个终端要转移数据库连接需要烧写程序到终端里面非常耗时

或是要几天时间

 

最后决定利用HAProxy做负载均衡和TCP连接重定向

使用HAProxy有几个好处

1、前端无需后端数据库的实际IP,当须求进步后端数据库,例如打补丁的时候极度福利

2、HAProxy能够自动检验后端数据库服务,探测1433端口是或不是存活,要是1433端口出标题,能够自行重定向连接到37那台协助别本

3、缓慢消除单台读库压力,使用LacrosseSportage轮询算法,央浼均衡分发到36和37这两台协理别本,缓慢解决36那台机器的下压力

图片 4

 

 


HAProxy相关配置步骤

 

#yum安装,版本是1.5.4

yum install -y haproxy.x86_64

 

 

#编辑rsyslog 文件,修改为-c 2 -r -x -m

vi /etc/sysconfig/rsyslog
SYSLOGD_OPTIONS="-c 2 -m 0 -r -x"

 

 

#编写rsyslog.conf 文件添加两行local3.*  和local0.*

vi /etc/rsyslog.conf
local7.*                                                /var/log/boot.log
local3.*                                                /var/log/haproxy.log
local0.*                                               /var/log/haproxy.log

 

 

 

#重启rsyslog服务

service rsyslog restart

 

 

# 编辑haproxy配置文件 上边以mssql从库负载均衡为例

vi /etc/haproxy/haproxy.cfg

global
log 127.0.0.1 local2 
chroot /var/lib/haproxy 
pidfile /var/run/haproxy.pid 
maxconn 6000 
user haproxy 
group haproxy 
daemon 
#stats socket /var/lib/haproxy/stats     
stats socket /var/run/haproxy.sock mode 666 level admin
stats timeout 2m


defaults 
mode http 
log                 127.0.0.1:514       local3                     
option                  dontlognull
#option http-server-close
#option forwardfor       except 127.0.0.0/8
option redispatch
retries 3 
timeout http-request 10s 
timeout connect 10s 
timeout client 1m 
timeout server 1m 
timeout http-keep-alive 10s
timeout check 10s
maxconn 6000





listen stats 
mode http
bind *:2080
stats enable
stats refresh 30s
stats uri /haproxyadminstats
stats realm HAProxy Statistics
stats auth admin:admin
stats admin if TRUE


listen mssql :1433
mode tcp
balance roundrobin
server mssqldb1 10.11.10.36:1433 weight 1 maxconn 6000 check port 1433 inter 2000 rise 2 fall 2
server mssqldb2 10.11.10.37:1433 weight 1 maxconn 6000 check port 1433 inter 2000 rise 2 fall 2

 

 

#检查布署文件是不是有语法错误

haproxy -f /etc/haproxy/haproxy.cfg -c
Configuration file is valid

 

#启动haproxy

/etc/init.d/haproxy start

 

 

#检查haproxy是还是不是在监听

netstat -lntp

 

只顾:Centos机器只供给使用一个网口,无需相当增添网口

图片 5

#开荒后台处理分界面

 

HAProxy提供了一个后台管理分界面

图片 6

 

查看haproxy的日志

cat /var/log/haproxy.log

图片 7


测量试验注脚

使用SSMS2016来连接HAProxy的IP

10.11.10.39

图片 8

今天是接二连三到GZC-SQL03那台机

 

今昔把 GZC-SQL03那台机的SQL服务停了

图片 9

Server的AlwaysOn协理别本,从0初步搭建SQL。HAProxy已经探测到 GZC-SQL03那台机的SQL服务停了

图片 10

 再度点击一下进行开关,能够开采已经重定向到 GZC-SQL02那台机

图片 11

 

 

虽说经过HAProxy这一层,不过品质方面也不算太差

图片 12


 

HAProxy的通讯格局

通讯格局邻近于LVS的NAT形式

LVS的NAT格局(调节器将呼吁的指标ip即vip地址改为Real server的ip, 返回的数量包也通过调解器,调整器再把源地址修改为vip)

图片 13

图片 14

 

 


总结

线上情状使用HAProxy已经大半1个月,到近期未曾现身过难题,比较稳固

对于HAProxy原理上的事物这里就不陈说了,网络有广大素材

 

参考小说:

 

假诺是各类业务使用不一样端口,可以采纳上面包车型客车安插文件

举个例子报表使用1433端口,BI收取数据运用2433端口

vi /etc/haproxy/haproxy.cfg
global
    log         127.0.0.1 local2 
    chroot      /var/lib/haproxy       
    pidfile     /var/run/haproxy.pid     
    maxconn     6000                               
    user        haproxy           
    group       haproxy           
    daemon
    #stats socket /var/lib/haproxy/stats 
    stats socket /var/run/haproxy.sock mode 666 level admin
    stats timeout 2m




defaults         
    mode                    http               
    log                     global                         
    option                  dontlognull
    option http-server-close
    option forwardfor       except 127.0.0.0/8
    option                  redispatch
    retries                 3                 
    timeout http-request    10s        
    timeout connect         10s               
    timeout client          1m                 
    timeout server          1m                 
    timeout http-keep-alive 10s
    timeout check           10s
    maxconn                 6000               





listen stats     
    mode http
    bind *:2080
    stats enable
    stats refresh 30s
    stats uri   /haproxyadminstats
    stats realm  HAProxy Statistics
    stats auth   admin:admin
    stats admin if TRUE


listen mssql :1433
    mode tcp
    balance roundrobin
    server mssqldb1 10.11.10.36:1433  weight 1 maxconn 6000 check port 1433 inter 2000  rise 2 fall 2
    server mssqldb2 10.11.10.37:1433  weight 1 maxconn 6000 check port 1433 inter 2000  rise 2 fall 2


listen mssql2 :2433
    mode tcp
    balance leastconn
    server mssqldb3 10.11.10.37:1433   maxconn 6000 check port 1433 inter 2000  rise 2 fall 2

 

 

如有不对的地方,接待大家拍砖o(∩_∩)o 

本文版权归小编全体,未经笔者同意不得转发。

从0发轫搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

第一篇

第二篇

第三篇

第四篇

搭建非域AlwaysOn win二〇一五 SQL二〇一四

SQL Server AG集群运行不起来的有时自救大招

 

 

这一篇是从0发轫搭建SQL Server AlwaysOn 的第三篇,这一篇才真的开首搭建AlwaysOn,前两篇是为搭建AlwaysOn 做希图的

 


步骤

这一篇仍旧选取step by step的议程介绍怎麽搭建AlwaysOn

 

请先使用本地客户Administrator登陆那三个集群节点并执行上面包车型客车操作,先不要用域客户DCADMIN登陆

图片 15

 

1、多个集群节点都需先安装.NET Framework 3.5(在Windows Server 2012CR-V第22中学利用增加职能来安装)。

图片 16

图片 17

图片 18

 

2、各种集群节点当地都要希图好相关软件,在依次节点上单独设置SQL Server 二〇一二(不可能应用会集形式安装),保证各类节点中利用一样的安装目录结商谈排序法则!

 图片 19

 选取全新SQL Server独立安装,不要挑选新的SQL Server故障转移集群安装

 图片 20

至于安装进程,暗许下一步下一步就足以了,跟单机安装SQL Server未有差距,这里就大要安装进程了

图片 21

只顾:因为自己的安装包已经自带SP1补丁包,为了承接制止踩坑,若无设置SP1或上述补丁包的,请先安装

图片 22

 

 

只顾:假使一初步使用域客商DCADMIN来报到集群节点机器,并安装SQL Server的时候会遇见多个坑,SQL Server安装程序会一连故障转移集群,不过实际上单机安装SQL Server根本无需两次三番故障转移集群

图片 23

图片 24

本身排查了非常久都找不到原因,为何SQL Server安装程序会接二连三故障转移集群,上边是SQL Server安装日志

图片 25

图片 26

假设一开头就选择集群节点本地客商Administrator登入来安装SQL Server就不会踩到那些坑

 

 

3、注销集群节点计算机,然后使用域客户DCADMIN登入,然后设置SQL Server的运行账户为域客商DCADMIN

图片 27

开采服务管理器,先修改SQL代理的运营账户为域顾客DCADMIN,然后再修改SQL 引擎的启航账户为域客户DCADMIN

图片 28

 

点击“地点”,修改查找地点,选中abc.com
图片 29

点击“高级”

图片 30

点击“立刻搜索”,选中DCADMIN

图片 31

图片 32

点击“确定”

 

输入域客户DCADMIN的密码

图片 33

 

重启一下SQL代理服务

图片 34

 重启之后方可看到登入顾客为DCADMIN@abc.com

图片 35

 

一致,SQL引擎服务也要求一致的安装

图片 36

 

如此,SQL引擎服务和SQL代理服务都用域客户DCADMIN运转

另一个集群节点的SQL Server也供给做一样的操作

 

注意:在集群节点脱离域之后,SQL引擎服务和SQL代理服务都要用本地服务帐号来运营,无法再用域客商来运营

 

 

4、将DCADMIN域顾客步入到三个集群节点的SQL Server登入顾客中,服务器剧中人物采用sysadmin

先用sa登录SQL Server

图片 37

添Garden录客户,跟SQL 服务丰硕启动账户的步子一样,将DCADMIN域客商增加为记名顾客

图片 38

图片 39

 图片 40

 给予sysadmin权限

图片 41

多个集群节点都能够用DCADMIN域顾客来报到SQL Server

图片 42

图片 43

 

 

 

5、回到SQL Server配置管理器,启用AlwaysOn可用性组

图片 44

图片 45

注意:集群节点确定要能进行通讯,要是集群节点之间断开通讯,那么启用AlwaysOn的时候会报错

图片 46

 

重启SQL Server

图片 47

万一AlwaysOn启用成功,在服务器质量里能够见见启用HADEnclave为True

图片 48

图片 49

 

6、在其间二个集群节点的SQL Server中证实各节点的投票的数量,在里边几个集群节点的SQL Server上推行
使用上边SQL语句

SELECT * FROM  sys.dm_hadr_cluster_members;

图片 50

SELECT * FROM SYS.[dm_hadr_cluster]

图片 51

 

7、再度确认保障各节点已经关闭防火墙,要是防火墙未有苏息,那么在开创可用性组的时候会弹出上面错误

无可奈何将数据库“test”联接到可用性别本“xxx”的可用性组“xx”

针对主别本的连日未处于活动状态。不能够管理该命令(错误:35250)

图片 52

图片 53

 

 

 

8、大家选用机动初步化数据库的方法,所以这一步须要新建四个测验库和测验表并插入一些测验数据(那一个动作就不演示了),然后对数据库做叁个整机备份 和 日志备份

下一场把完整备份文件和日志备份文件搬到WIN-5PMSDHUI0KQ机器上各种进行复原,完整备份-》还原完整备份-》日志备份-》还原日志备份
脚本

--在win-7107jjj2bcc上执行
CREATE DATABASE [test]

USE [test]
CREATE TABLE [test1]([id] INT,[name] VARCHAR(100))
INSERT INTO [test1] SELECT 1,'test'

--在win-7107jjj2bcc上执行
DECLARE @CurrentTime VARCHAR(50), @FileName VARCHAR(200)
SET @CurrentTime = REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR, GETDATE(), 120 ),'-','_'),' ','_'),':','')


--(test 数据库完整备份)
SET @FileName = 'c:DBBackuptest_FullBackup_'   @CurrentTime '.bak'
BACKUP DATABASE [test]
TO DISK=@FileName WITH FORMAT ,COMPRESSION


  --(test 数据库日志备份) 
SET @FileName = 'c:DBBackuptest_logBackup_'   @CurrentTime '.bak'
BACKUP log [test]
TO DISK=@FileName WITH FORMAT ,COMPRESSION

--在WIN-5PMSDHUI0KQ上执行

USE [master]
RESTORE DATABASE [test] FROM  DISK = N'C:DBBackuptest_FullBackup_2015_07_30_093949.bak' WITH  FILE = 1, 
MOVE N'test' TO N'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAtest.mdf', 
MOVE N'test_log' TO N'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAtest_log.ldf', 
NOUNLOAD,NORECOVERY,  REPLACE,  STATS = 5

GO





--注意一定要用NORECOVERY来还原备份
USE [master]
RESTORE DATABASE [test] FROM  DISK = N'C:DBBackuptest_logBackup_2015_07_30_105949.bak' WITH  FILE = 1, 
NOUNLOAD,NORECOVERY,  REPLACE,  STATS = 5

GO

 

机动开始化数据库的收益是:若是我们的扶助别本是跨机房的咱们都能够决定开头化的光阴,也正是备份和回复的时光,不要求SQL Server来帮我们备份还原数据库

在WIN-5PMSDHUI0KQ上过来日志备份之后的标准

图片 54

 

 

9、在“Alwayson高可用性”节点上右键选用“新建可用性组向导

注意:参预到AlwaysOn可用性组的数据库必须符合下边须要

(1)数据库的复苏形式必需是“完整”苏醒情势

(2)数据库已张开了二次完整备份

(3)需借使客商库,系统库不可能参加可用性组

(4)数据库能够读写,只读库无法投入到可用性组

(5)数据库处于多客商格局

(6)数据库未有动用AUTO_CLOSE

(7)不属于别的其余的可用性组

(8)数据库未有安插数据库镜像

四个可用性组最大支撑一百个数据库

图片 55

图片 56

 

10、点击“下一步”,输入三个未有接纳过的高可用性组名称 testAG

 图片 57

 

11、点击下一步,选拔要加上的数据库

图片 58

 

12、点击“下一步”,使用增多别本来将另外节点增多到可用性组中,并精选自行故障转移节点和一道交付节点,因为大家只有四个节点

图片 59

我们将帮助别本设置为可读,能够自动故障转移,同步交付方式

图片 60

13、点击“端点”tab页面设置端点

图片 61

图片 62

注意:端点U奥迪Q5L使用IP的形式,不要用FQDN长名的方式,因为服务器日常会有七个网卡,两个public网卡,二个private网卡,端点建议使用private网卡地址

如此那般在端点间接传送的数目就能够经过private网卡来传送,使用TCP://test.abc.com:5022 这种FQDN长名的艺术是不可能担保端点数据通过private网卡来传送

SQL Server服务账户使用域顾客DCADMIN来张开身份验证,制止使用证书的办法

 

14、“备份首荐项”和“侦听器”没有须要设置,保持默许就行,可用性侦听器我们前边再加多,能够直接点击“下一步”

图片 63

点击“是”

 

15、采用起来数据同步,这里选取“仅连接”格局

图片 64

 

 

 16、点击“下一步”来验证配置,对应侦听器配置警告能够忽略,早先时期来增添侦听器

因为运用的是“仅连接”数据库早先化格局,验证跳过像可用磁盘空间这样的检讨

 图片 65

 

 

17、点击“下一步”来检查并认同在此以前的布局消息,若无误,点击“完毕”。别的,此处也可保存创建可用性组脚本,以便分步检查判断故障之用。

 图片 66

 

 

18、全体摘要均成功做到,显示水晶绿对勾。假使出现深草绿警告,则需进行进一步认清是还是不是中标。若出现深红错误,表示AG创造不成事

图片 67

图片 68

注意:一旦我们利用奇数集群节点,並且裁定配置利用的是节点许多,那么在开立可用性组结束的时候,WSFC仲裁投票配置会显得警告

点击警告链接会弹出上面包车型地铁对话框,那些警示其实能够不要理会

 图片 69

图片 70

 

19、查看服务器和数据库的生成

主副本

数据库变为已联合

图片 71

支持别本

协理别本那时候是可读的,在主别本上对test1表做的退换都能共同到帮助别本上的test1表

图片 72

 

再看一下故障转移集群管理器

可用性组变为一个集群角色

图片 73

 图片 74

点击彰显面板能够显得可用性面板

图片 75

图片 76

图片 77

20、在创制可用性组后,在“可用性组侦听器”上右键增加侦听器来创立侦听器,选用静态IP的互联网格局(尽量不要选用DHCP互连网形式),

输入叁个尚无利用过的称谓(该名称将被用来创立网络名称财富)和访谈端口

 

图片 78

图片 79

点击显明

图片 80

 

开创成功

图片 81

在域控的DNS管理器上会注册一条A记录

图片 82

在AD里的Computers容器里会增添三个故障转移集群虚构网络名称账户

图片 83

 

在故障转移集群管理器里的角色节点,能够看来客商端访谈名称和IP地址,客商端通过这些访谈名称实行拜见数据库

图片 84

图片 85

 

行使侦听器名称举办登陆SQL Server

图片 86

图片 87

 

当然也足以用listener IP来连接SQL Server

图片 88

图片 89

 

 

在扶助别本添Garden录顾客,让主别本上的登入客户也能够读取协理别本数据
步骤1:查看主库上该账号的sid [test]为库名
SELECT * FROM [test]..sysusers
比如:dalogin 0x99AD266AFD26F841B3E49EF9633B0D4B

手续2:在别本数据库上成立对应账号,在那之中sid对应的值是主库上所查到的sid的值
CREATE LOGIN [dalogin] WITH PASSWORD=N'xxxxxxx',
SID =0x99AD266AFD26F841B3E49EF9633B0D4B, DEFAULT_DATABASE=[test],
 CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF

 

报表账号设置
在主别本中,推行:
use 库名
go
grant exec to 报表账号连接所用的顾客 或grant exec on 存款和储蓄进度 to 报表账号连接所用的客户


可用性组的中坚管理

注意:尽可能用SSMS的UI或TSQL语句来操作可用性组,不要用故障转移集群管理器来操作

 

故障转移

首先应用 侦听器名称来报到SQL Server,查看当前是在主别本是在哪个机器

图片 90

 

手动故障转移

选中testAG那一个可用性组,右键-》故障转移

图片 91

图片 92

点击“下一步”

图片 93

点击“下一步”

图片 94

连接到 WIN-5PMSDHUIOKQ那台协理副本机器

图片 95

图片 96

点击“完成”

图片 97

始于展开故障转移

图片 98

图片 99

再一次实践查询

图片 100

早已去世障转移到WIN-5PMSDHUIOKQ那台机

查看一下testAG可用性组的特性

图片 101

图片 102

 

实施上边SQL语句,将WIN-7107JJJ2BCC机器设置为可读别本

USE [master]
GO
ALTER AVAILABILITY GROUP [testAG]
MODIFY REPLICA ON N'WIN-7107JJJ2BCC' WITH (SECONDARY_ROLE(ALLOW_CONNECTIONS = ALL))
GO

 

实行上边SQL语句测量试验一下

在此时此刻主别本推行

insert into test1 select 3, 'test3'

图片 103

 

能够看到数据现已联合签名过来WIN-7107JJJ2BCC机器,况兼数据库可读

可读帮助别本是只读的,若是要对它举行数量变动则会报错

print 'servername: ' @@SERVERNAME 


insert into [test].[dbo].[test1] select 4, 'test4'

图片 104

 

AlwaysOn相关视图

--通过这两个视图可以查询AlwaysOn延迟
SELECT  b.replica_server_name ,
        a.*
FROM    sys.dm_hadr_database_replica_states a
        INNER JOIN sys.availability_replicas b ON a.replica_id = b.replica_id 

--可用性组所在Windows故障转移集群
SELECT * FROM sys.dm_hadr_cluster;
SELECT * FROM sys.dm_hadr_cluster_members ;
SELECT * FROM sys.dm_hadr_cluster_networks;
SELECT * FROM sys.dm_hadr_instance_node_map;
SELECT * FROM sys.dm_hadr_name_id_map

--可用性组
SELECT * FROM sys.availability_groups;
SELECT * FROM sys.availability_groups_cluster;
SELECT * FROM sys.dm_hadr_availability_group_states ;
SELECT * FROM sys.dm_hadr_automatic_seeding
SELECT * FROM sys.dm_hadr_physical_seeding_stats

--可用性副本
SELECT * FROM sys.availability_replicas;
SELECT * FROM sys.[availability_read_only_routing_lists]
SELECT * FROM sys.dm_hadr_availability_replica_cluster_nodes;
SELECT * FROM sys.[dm_hadr_availability_replica_cluster_states]
SELECT * FROM sys.[dm_hadr_availability_replica_states]

--可用性数据库
SELECT * FROM sys.availability_databases_cluster;
SELECT * FROM sys.dm_hadr_database_replica_cluster_states;
SELECT * FROM sys.[dm_hadr_auto_page_repair]
SELECT * FROM sys.[dm_hadr_database_replica_states]

--可用性组listener
SELECT * FROM sys.availability_group_listener_ip_addresses;
SELECT * FROM sys.availability_group_listeners;
SELECT * FROM sys.dm_tcp_listener_states;



--添加只读路由列表
ALTER AVAILABILITY GROUP [agtest2]
MODIFY REPLICA ON N'WIN-5PMSDHUI0KQ' WITH (SECONDARY_ROLE(ALLOW_CONNECTIONS= READ_ONLY));


ALTER AVAILABILITY GROUP [agtest2]
modify REPLICA ON N'WIN-5PMSDHUI0KQ' WITH (SECONDARY_ROLE(READ_ONLY_ROUTING_URL=N'TCP://192.168.66.157:1433'))

ALTER AVAILABILITY GROUP [agtest2]
MODIFY REPLICA ON N'WIN-4AE61RVA6UV' WITH (SECONDARY_ROLE(ALLOW_CONNECTIONS= READ_ONLY));

ALTER AVAILABILITY GROUP [agtest2]
modify REPLICA ON N'WIN-4AE61RVA6UV' WITH (SECONDARY_ROLE(READ_ONLY_ROUTING_URL=N'TCP://192.168.66.158:1433'))

 

 


总结

AlwaysOn搭建步骤就介绍到此地,希望咱们跟着笔者来体验一下AlwaysOn的强有力

 

同样的,增添多个支持副本的操作: 加域、参加故障转移集群、改动仲裁配置、增加补助别本 

依据小说的来操作相信增添支持别本也轻松

 

还或许有五个正是境遇难点多看看SQL Server errorlog和WSFC的风浪日志

图片 105

图片 106

 

 

对于更多音讯方可参照《SQLSEGL450VE奥迪Q5二零一一实施与治本实战指南》书本

地址: 

 

连带文章

 成立了一个弱事件,但它坐落错误对象上 下载补丁解决()

 19471错误

创办侦听器错误壹玖肆陆1,一九五〇6 难点

 

如有不对的地点,款待我们拍砖o(∩_∩)o 

 

2015-11-13补充

图片 107

 

三个节点的AlwaysOn ,用分享文件夹做见证磁盘

当自动故障切换的时候,一时候出现,支持别本正在深入分析的风貌,在此之前认为是决定错过(WSFC与文件分享见证失联),导致WSFC挂掉,后来发觉原因是WSFC调整面板里的角色属性之中的最大故障数的主题素材而致使的

引入将点名时段内的最大故障数设置为10 

图片 108

图片 109

 

图片 110图片 111

LogDate    ProcessInfo    Text
2015-11-13 15:28:56.140    spid46s    State information for database 'test' - Hardended Lsn: '(36:424:1)'    Commit LSN: '(36:408:1)'    Commit Time: 'Nov 13 2015  3:26PM'
2015-11-13 15:28:56.140    spid46s    The availability group database "test" is changing roles from "SECONDARY" to "RESOLVING" because the mirroring session or availability group failed over due to role synchronization. This is an informational message only. No user action is required.
2015-11-13 15:28:56.140    spid48s    AlwaysOn Availability Groups connection with primary database terminated for secondary database 'test' on the availability replica 'NODE1' with Replica ID: {40bfe7bb-407e-46a3-911b-147a468abedf}. This is an informational message only. No user action is required.

----------------------------------------------------------------
2015-11-13 15:28:56.140    spid29s    The state of the local availability replica in availability group 'testAG' has changed from 'SECONDARY_NORMAL' to 'RESOLVING_NORMAL'.  The state changed because the availability group state has changed in Windows Server Failover Clustering (WSFC).  For more information, see the SQL Server error log, Windows Server Failover Clustering (WSFC) management console, or WSFC log.
2015-11-13 15:28:56.140    spid29s    AlwaysOn: The local replica of availability group 'testAG' is going offline because the corresponding resource in the Windows Server Failover Clustering (WSFC) cluster is no longer online. This is an informational message only. No user action is required.
-----------------------------------------------------------------


2015-11-13 15:26:46.160    spid48s    The recovery LSN (36:336:1) was identified for the database with ID 7. This is an informational message only. No user action is required.
2015-11-13 15:26:46.160    spid48s    Error: 35285, Severity: 16, State: 1.
2015-11-13 15:26:46.160    spid48s    AlwaysOn Availability Groups connection with primary database established for secondary database 'test' on the availability replica 'NODE1' with Replica ID: {40bfe7bb-407e-46a3-911b-147a468abedf}. This is an informational message only. No user action is required.
2015-11-13 15:26:46.150    spid48s    The recovery LSN (36:336:1) was identified for the database with ID 7. This is an informational message only. No user action is required.
2015-11-13 15:26:46.150    spid48s    Error: 35285, Severity: 16, State: 1.
2015-11-13 15:26:46.140    spid48s    AlwaysOn Availability Groups connection with primary database established for secondary database 'test' on the availability replica 'NODE1' with Replica ID: {40bfe7bb-407e-46a3-911b-147a468abedf}. This is an informational message only. No user action is required.
2015-11-13 15:26:42.610    spid46s    A connection for availability group 'testAG' from availability replica 'NODE2' with id  [4F4BAEC0-1FB9-4CB3-829A-85C35D8A06D4] to 'NODE1' with id [40BFE7BB-407E-46A3-911B-147A468ABEDF] has been successfully established.  This is an informational message only. No user action is required.
2015-11-13 15:26:42.110    spid46s    State information for database 'test' - Hardended Lsn: '(36:336:1)'    Commit LSN: '(36:320:21)'    Commit Time: 'Nov 13 2015  3:13PM'
2015-11-13 15:26:42.110    spid46s    The availability group database "test" is changing roles from "RESOLVING" to "SECONDARY" because the mirroring session or availability group failed over due to role synchronization. This is an informational message only. No user action is required.
2015-11-13 15:26:42.080    spid29s    The state of the local availability replica in availability group 'testAG' has changed from 'RESOLVING_NORMAL' to 'SECONDARY_NORMAL'.  The state changed because the availability group state has changed in Windows Server Failover Clustering (WSFC).  For more information, see the SQL Server error log, Windows Server Failover Clustering (WSFC) management console, or WSFC log.
2015-11-13 15:15:53.960    spid43s    State information for database 'test' - Hardended Lsn: '(36:336:1)'    Commit LSN: '(36:320:21)'    Commit Time: 'Nov 13 2015  3:13PM'
2015-11-13 15:15:53.960    spid43s    The availability group database "test" is changing roles from "SECONDARY" to "RESOLVING" because the mirroring session or availability group failed over due to role synchronization. This is an informational message only. No user action is required.
2015-11-13 15:15:53.950    spid30s    AlwaysOn Availability Groups connection with primary database terminated for secondary database 'test' on the availability replica 'NODE1' with Replica ID: {40bfe7bb-407e-46a3-911b-147a468abedf}. This is an informational message only. No user action is required.
2015-11-13 15:15:53.950    spid29s    The state of the local availability replica in availability group 'testAG' has changed from 'SECONDARY_NORMAL' to 'RESOLVING_NORMAL'.  The state changed because the availability group state has changed in Windows Server Failover Clustering (WSFC).  For more information, see the SQL Server error log, Windows Server Failover Clustering (WSFC) management console, or WSFC log.
2015-11-13 15:15:53.950    spid29s    AlwaysOn: The local replica of availability group 'testAG' is going offline because the corresponding resource in the Windows Server Failover Clustering (WSFC) cluster is no longer online. This is an informational message only. No user action is required.
2015-11-13 15:14:47.610    spid23s    The recovery LSN (36:328:2) was identified for the database with ID 7. This is an informational message only. No user action is required.
2015-11-13 15:14:47.610    spid23s    Error: 35285, Severity: 16, State: 1.
2015-11-13 15:14:47.600    spid23s    AlwaysOn Availability Groups connection with primary database established for secondary database 'test' on the availability replica 'NODE1' with Replica ID: {40bfe7bb-407e-46a3-911b-147a468abedf}. This is an informational message only. No user action is required.
2015-11-13 15:14:47.600    spid30s    1 transactions rolled forward in database 'test' (7:0). This is an informational message only. No user action is required.
2015-11-13 15:14:47.600    spid30s    The recovery LSN (36:328:2) was identified for the database with ID 7. This is an informational message only. No user action is required.
2015-11-13 15:14:47.600    spid30s    Error: 35285, Severity: 16, State: 1.
2015-11-13 15:14:47.590    spid30s    AlwaysOn Availability Groups connection with primary database established for secondary database 'test' on the availability replica 'NODE1' with Replica ID: {40bfe7bb-407e-46a3-911b-147a468abedf}. This is an informational message only. No user action is required.
2015-11-13 15:14:47.550    spid30s    Starting up database 'test'.
2015-11-13 15:14:47.550    spid30s    State information for database 'test' - Hardended Lsn: '(36:328:1)'    Commit LSN: '(0:0:0)'    Commit Time: 'Jan  1 1900 12:00AM'

View Code

 

2015-12-9补充

卸载集群

1、先各个逐出节点

图片 112

2、销毁集群,集群最终一个节点无法逐出只可以销毁集群,有三种艺术,1用命令  2在分界面上右键-》销毁集群

格局一:集群node(随意二个集群node)上实行上边发号施令,不能够在DC上推行,因为DC没有设置故障转移集群,sqltestdemo1为集群名,方法一删除得干净一点

Get-Cluster sqltestdemo1 | Remove-Cluster -Force -CleanupAD

格局二:集群-》越来越多操作-》销毁集群

图片 113

3、销毁集群后在每种集群上的powershell里运营上边发号施令,以取消一些污源

Clear-ClusterNode

图片 114

 

4、在域控的AD客商和电脑分界面里面把集群设想名称删除掉

图片 115

 

5、重新启用和禁止使用alwayson,在alwayson的一一节点上都要操作一遍

图片 116

 

 

删除可用性组

1、删除协助别本

USE [master]
GO
ALTER AVAILABILITY GROUP [HAGroup01]
REMOVE REPLICA ON N'SQLSVR2';
GO

 

2、删除可用性数据库

USE [master]
GO
ALTER AVAILABILITY GROUP [HAGroup01]
REMOVE DATABASE [SQLDB02];
GO

 

 

3、删除侦听器

USE [master]
GO
ALTER AVAILABILITY GROUP [HAGroup01]
REMOVE LISTENER N'SQLAG01';
GO

 

4、删除可用性组

USE [master]
GO
DROP AVAILABILITY GROUP [HAGroup01];
GO

 

5、在域控的AD顾客和管理器分界面里面把侦听器虚构名称删除掉

图片 117

 

alwayson注意难点

 

 

关于AlwaysOn备份

msdn上和《SQL Server二〇一二实施与治本实战指南》上都未有说道主别本所帮助的备份类型

由此测量试验,主别本跟单实例的SQL Server一样,完整备份、差距备份、日志备份都帮衬

图片 118

 

故障切换推断规范

第一步
lookalive 5秒/次 telnet 1433端口 超时30秒
第二步
isalive    60秒/次 sp_server_diagnoist 超时60秒 超时后再推行3次以免误判

从sql server二零一一初步使用sp_server_diagnoist比select @@servername判别更确切
防止sqlserver压力大导致的误判
《SQL Server贰零壹壹实施和治本实战指南》  P42 P50 P53

别本之间 10秒/次 相互ping,倘使打断,比方协理别本不通,会显示为disconnect

 

AlwaysOn注意难题:

有关决定:

SQL Server的AlwaysOn错误19456和41158

 

前不久在合营社搞异地数据库容灾,使用AlwaysOn的异乡节点举行数据同步,在搭建的历程中相见了一些主题材料

软件版本

SQL Server2014

Windows2012R2

 

互联网境遇

三个机房,一个机房是贰个网段,另一个机房是另叁个网段,也正是多个子网,七个网段,可是在同二个域中,并且采纳了VPN

图片 119

 

AlwaysOn是支撑多子网的,在跨机房,多子网景况有多少个地点要求潜心

1、在搭建进度中供给把外省节点的投票权去掉,那些在搭建进程中尚无遇上标题
NodeWeight
在放肆集群节点上以域客户登入计算机,并以管理员身份运维powershell,并实行下边发号施令,JXxx08为异地节点的乘除机名,把JXxx08节点的投票权设置为0
指令如下

Import-Module FailoverClusters
$node ="JXxx08"
(Get-ClusterNode $node).NodeWeight = 0
$cluster = (Get-ClusterNode $node).Cluster
$nodes = Get-ClusterNode -Cluster $cluster
$nodes | Format-Table -property NodeName, State, NodeWeight

编辑:mg 本文来源:Server的AlwaysOn协理别本,从0初步搭建SQL

关键词: a SQLSERVER高可用 故障转移 sqlserver al alwayson