您的位置:新葡亰496net > 网络数据库 > 新葡亰496net:从0最初搭建SQL

新葡亰496net:从0最初搭建SQL

发布时间:2019-10-30 00:40编辑:网络数据库浏览(102)

    一、Alway On高性能组件配置说明:

    原文地址: 

    从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    第一篇

    第二篇

    第三篇

    第四篇

    搭建非域AlwaysOn win2016 SQL2016

    SQL Server AG集群启动不起来的临时自救大招

     

     

    这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的

     


    步骤

    这一篇依然使用step by step的方式介绍怎麽搭建AlwaysOn

     

    请先使用本地用户Administrator登录这两个集群节点并执行下面的操作,先不要用域用户DCADMIN登录

    新葡亰496net 1

     

    1、两个集群节点都需先安装.NET Framework 3.5(在Windows Server 2012 R2中使用添加功能来安装)。

    新葡亰496net 2

    新葡亰496net 3

    新葡亰496net 4

     

    2、各个集群节点本地都要准备好相关软件,在各个节点上独立安装SQL Server 2012(不能使用群集方式安装),保证各个节点中使用相同的安装目录结构和排序规则!

     新葡亰496net 5

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

     新葡亰496net 6

    至于安装过程,默认下一步下一步就可以了,跟单机安装SQL Server没有区别,这里就忽略安装过程了

    新葡亰496net 7

    注意:因为本人的安装包已经自带SP1补丁包,为了后续避免踩坑,如果没有安装SP1或以上补丁包的,请先安装

    新葡亰496net 8

     

     

    注意:如果一开始使用域用户DCADMIN来登录集群节点机器,并安装SQL Server的时候会遇到一个坑,SQL Server安装程序会连接故障转移集群,但是实际上单机安装SQL Server根本不需要连接故障转移集群

    新葡亰496net 9

    新葡亰496net 10

    本人排查了很久都找不到原因,为什么SQL Server安装程序会连接故障转移集群,下面是SQL Server安装日志

    新葡亰496net 11

    新葡亰496net 12

    如果一开始就使用集群节点本地用户Administrator登录来安装SQL Server就不会踩到这个坑

     

     

    3、注销集群节点计算机,然后使用域用户DCADMIN登录,然后设置SQL Server的启动账户为域用户DCADMIN

    新葡亰496net 13

    打开服务管理器,先修改SQL代理的启动账户为域用户DCADMIN,然后再修改SQL 引擎的启动账户为域用户DCADMIN

    新葡亰496net 14

     

    点击“位置”,修改查找位置,选中abc.com
    新葡亰496net 15

    点击“高级”

    新葡亰496net 16

    新葡亰496net,点击“立即查找”,选中DCADMIN

    新葡亰496net 17

    新葡亰496net 18

    点击“确定”

     

    输入域用户DCADMIN的密码

    新葡亰496net 19

     

    重启一下SQL代理服务

    新葡亰496net 20

     重启之后可以看到登录用户为DCADMIN@abc.com

    新葡亰496net 21

     

    同样,SQL引擎服务也需要同样的设置

    新葡亰496net 22

     

    这样,SQL引擎服务和SQL代理服务都用域用户DCADMIN启动

    另一个集群节点的SQL Server也需要做同样的操作

     

    注意:在集群节点脱离域之后,SQL引擎服务和SQL代理服务都要用本地服务帐号来启动,不能再用域用户来启动

     

     

    4、将DCADMIN域用户加入到两个集群节点的SQL Server登录用户中,服务器角色选择sysadmin

    先用sa登录SQL Server

    新葡亰496net 23

    添加登录用户,跟SQL 服务添加启动账户的步骤一样,将DCADMIN域用户添加为登录用户

    新葡亰496net 24

    新葡亰496net 25

     新葡亰496net 26

     给予sysadmin权限

    新葡亰496net 27

    两个集群节点都可以用DCADMIN域用户来登录SQL Server

    新葡亰496net 28

    新葡亰496net 29

     

     

     

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

    新葡亰496net 30

    新葡亰496net 31

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

    新葡亰496net 32

     

    重启SQL Server

    新葡亰496net 33

    如果AlwaysOn启用成功,在服务器属性里可以看到启用HADR为True

    新葡亰496net 34

    新葡亰496net 35

     

    6、在其中一个集群节点的SQL Server中验证各节点的投票数 ,在其中一个集群节点的SQL Server上执行
    使用下面SQL语句

    SELECT * FROM  sys.dm_hadr_cluster_members;
    

    新葡亰496net 36

    SELECT * FROM SYS.[dm_hadr_cluster]
    

    新葡亰496net 37

     

    7、再次确保各节点已经关闭防火墙,如果防火墙没有关闭,那么在创建可用性组的时候会弹出下面错误

    无法将数据库“test”联接到可用性副本“xxx”的可用性组“xx”

    针对主副本的连接未处于活动状态。无法处理该命令(错误:35250)

    新葡亰496net 38

    新葡亰496net 39

     

     

     

    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上还原日志备份之后的样子

    新葡亰496net 40

     

     

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

    注意:加入到AlwaysOn可用性组的数据库必须符合下面要求

    (1)数据库的恢复模式必须是“完整”恢复模式

    (2)数据库已进行了一次完整备份

    (3)需要是用户库,系统库不能加入可用性组

    (4)数据库可以读写,只读库不能加入到可用性组

    (5)数据库处于多用户模式

    (6)数据库没有使用AUTO_CLOSE

    (7)不属于任何其他的可用性组

    (8)数据库没有配置数据库镜像

    一个可用性组最大支持100个数据库

    新葡亰496net 41

    新葡亰496net 42

     

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

     新葡亰496net 43

     

    11、点击下一步,选择要添加的数据库

    新葡亰496net 44

     

    12、点击“下一步”,使用添加副本来将其他节点添加到可用性组中,并选择自动故障转移节点和同步提交节点,因为我们只有两个节点

    新葡亰496net 45

    我们将辅助副本设置为可读,能够自动故障转移,同步提交模式

    新葡亰496net 46

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

    新葡亰496net 47

    新葡亰496net 48

    注意:端点URL使用IP的方式,不要用FQDN长名的方式,因为服务器通常会有两个网卡,一个public网卡,一个private网卡,端点建议使用private网卡地址

    这样在端点直接传送的数据就会经由private网卡来传送,使用TCP://test.abc.com:5022 这种FQDN长名的方式是不能保证端点数据通过private网卡来传送

    SQL Server服务账户使用域用户DCADMIN来进行身份验证,避免使用证书的方式

     

    14、“备份首选项”和“侦听器”不需要设置,保持默认就行,可用性侦听器我们后面再添加,可以直接点击“下一步”

    新葡亰496net 49

    点击“是”

     

    15、选择初始数据同步,这里选择“仅联接”模式

    新葡亰496net 50

     

     

     16、点击“下一步”来验证配置,对应侦听器配置警告可以忽略,后期来添加侦听器

    因为使用的是“仅联接”数据库初始化方式,验证跳过像可用磁盘空间这样的检查

     新葡亰496net 51

     

     

    17、点击“下一步”来检查并确认之前的配置信息,若无误,点击“完成”。另外,此处也可保存建立可用性组脚本,以便分步诊断故障之用。

     新葡亰496net 52

     

     

    18、所有摘要均成功完成,显示绿色对勾。如果出现黄色警告,则需进行进一步判断是否成功。若出现红色错误,表示AG创建不成功

    新葡亰496net 53

    新葡亰496net 54

    注意:如果大家使用奇数集群节点,并且仲裁配置使用的是节点多数,那么在创建可用性组完毕的时候,WSFC仲裁投票配置会显示警告

    点击警告链接会弹出下面的对话框,这个警告其实可以不用理会

     新葡亰496net 55

    新葡亰496net 56

     

    19、查看服务器和数据库的变化

    主副本

    数据库变为已同步

    新葡亰496net 57

    辅助副本

    辅助副本这时候是可读的,在主副本上对test1表做的更改都能同步到辅助副本上的test1表

    新葡亰496net 58

     

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

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

    新葡亰496net 59

     新葡亰496net 60

    点击显示面板可以显示可用性面板

    新葡亰496net 61

    新葡亰496net 62

    新葡亰496net 63

    20、在创建可用性组后,在“可用性组侦听器”上右键添加侦听器来创建侦听器,选择静态IP的网络模式(尽量不要选择DHCP网络模式),

    输入一个从未使用过的名称(该名称将被用来创建网络名称资源)和访问端口

     

    新葡亰496net 64

    新葡亰496net 65

    点击确定

    新葡亰496net 66

     

    创建成功

    新葡亰496net 67

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

    新葡亰496net 68

    在AD里的Computers容器里会添加一个故障转移集群虚拟网络名称账户

    新葡亰496net 69

     

    在故障转移集群管理器里的角色节点,可以看到客户端访问名称和IP地址,客户端通过这个访问名称进行访问数据库

    新葡亰496net 70

    新葡亰496net 71

     

    使用侦听器名称进行登录SQL Server

    新葡亰496net 72

    新葡亰496net 73

     

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

    新葡亰496net 74

    新葡亰496net 75

     

     

    在辅助副本添加登录用户,让主副本上的登录用户也可以读取辅助副本数据
    步骤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,查看当前是在主副本是在哪个机器

    新葡亰496net 76

     

    手动故障转移

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

    新葡亰496net 77

    新葡亰496net 78

    点击“下一步”

    新葡亰496net 79

    点击“下一步”

    新葡亰496net 80

    连接到 WIN-5PMSDHUIOKQ这台辅助副本机器

    新葡亰496net 81

    新葡亰496net 82

    点击“完成”

    新葡亰496net 83

    开始进行故障转移

    新葡亰496net 84

    新葡亰496net 85

    再一次执行查询

    新葡亰496net 86

    已经故障转移到WIN-5PMSDHUIOKQ这台机

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

    新葡亰496net 87

    新葡亰496net 88

     

    执行下面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'
    

    新葡亰496net 89

     

    可以看到数据已经同步过来WIN-7107JJJ2BCC机器,并且数据库可读

    可读辅助副本是只读的,如果要对它进行数据更改则会报错

    print 'servername: ' @@SERVERNAME 
    
    
    insert into [test].[dbo].[test1] select 4, 'test4'
    

    新葡亰496net 90

     

    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的事件日志

    新葡亰496net 91

    新葡亰496net 92

     

     

    对于更多信息可以参考《SQLSERVER2012实施与管理实战指南》书本

    地址: 

     

    相关文章

     创建了一个弱事件,但它位于错误对象上 下载补丁解决 ()

     19471错误

    创建侦听器错误19471,19476 问题

     

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

     

    2015-11-13补充

    新葡亰496net 93

     

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

    当自动故障切换的时候,有时候出现,辅助副本正在解析的现象,之前以为是仲裁丢失(WSFC与文件共享见证失去联系),导致WSFC挂掉,后来发现原因是WSFC控制面板里的角色属性里面的最大故障数的问题而导致的

    推荐将指定时段内的最大故障数设置为10 

    新葡亰496net 94

    新葡亰496net 95

     

    新葡亰496net 96新葡亰496net 97

    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、先逐个逐出节点

    新葡亰496net 98

    2、销毁集群,集群最后一个节点不能逐出只能销毁集群,有两种方法,1用命令  2在界面上右键-》销毁集群

    方法一:集群node(随便一个集群node)上执行下面命令,不能在DC上执行,因为DC没有安装故障转移集群,sqltestdemo1为集群名,方法一删除得彻底一点

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

    方法二:集群-》更多操作-》销毁集群

    新葡亰496net 99

    3、销毁集群后在每个集群上的powershell里运行下面命令,以清除一些垃圾

    Clear-ClusterNode

    新葡亰496net 100

     

    4、在域控的AD用户和计算机界面里面把集群虚拟名称删除掉

    新葡亰496net 101

     

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

    新葡亰496net 102

     

     

    删除可用性组

    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用户和计算机界面里面把侦听器虚拟名称删除掉

    新葡亰496net 103

     

    alwayson注意问题

     

     

    关于AlwaysOn备份

    msdn上和《SQL Server2012实施与管理实战指南》上都没有说道主副本所支持的备份类型

    经过测试,主副本跟单实例的SQL Server一样,完整备份、差异备份、日志备份都支持

    新葡亰496net 104

     

    故障切换判断条件

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

    从sql server2012开始使用sp_server_diagnoist比select @@servername判断更准确
    防止sqlserver压力大导致的误判
    《SQL Server2012实施和管理实战指南》  P42 P50 P53

    副本之间 10秒/次 相互ping,如果不通,比如辅助副本不通,会显示为disconnect

     

    AlwaysOn注意问题:

    关于仲裁:

    服务器集群节点:2

    这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的

    服务器的操作系统:windows 2008

     

    Sql server版本:sql server 2012


    此配置省略sql server的安装配置,可以查看

    步骤

    二、准备测试数据库

    这一篇依然使用step by step的方式介绍怎麽搭建AlwaysOn

    1、选择一个测试数据库,可以还原一个原有的数据库进行重命名,具体做法如下

     

    a) 系统C盘下的AIS20151111205436_restore18.bak是原备份数据库,重新命名为AIS20151111205436_restore10.bak

    请先使用本地用户Administrator登录这两个集群节点并执行下面的操作,先不要用域用户DCADMIN登录

    b) 打开sql server management studio,数据库右键 -> 还原数据库

    新葡亰496net 105

    新葡亰496net 106

     

    -> 选择设备

    1、两个集群节点都需先安装.NET Framework 3.5(在Windows Server 2012 R2中使用添加功能来安装)。

    新葡亰496net 107

    新葡亰496net 108

    -> 添加备份数据库 -> 还原数据库

    新葡亰496net 109

    新葡亰496net 110

    新葡亰496net 111

    2、如果需要备份的数据库已经存在,则进行如下操作进行重命名备份

     

    a)  如上  常规 -> 设备(同1的选项)

    2、安装sqlserver

    b)  文件 -> 将所有文件重新定位到文件夹(打钩)-> 数据文件文件夹和日志文件文件夹重新选择

    注意: 一定要用 administrator 账户登录 windows server 安装, 而不是 域账户 DCADMIN

    新葡亰496net 112

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

    新葡亰496net:从0最初搭建SQL。-> 确定 -> 还原成功

     新葡亰496net 113

    新葡亰496net 114

    至于安装过程,默认下一步下一步就可以了,跟单机安装SQL Server没有区别,这里就忽略安装过程了

    三、安装故障转移集群(WSFC)

    新葡亰496net 115

    a) 进入服务器管理器列表

    注意:因为本人的安装包已经自带SP1补丁包,为了后续避免踩坑,如果没有安装SP1或以上补丁包的,请先安装

    新葡亰496net 116

    新葡亰496net 117

    b) 功能右键添加功能

     

    c) 选择故障转移集群安装

     

    新葡亰496net 118

    注意:如果一开始使用域用户DCADMIN来登录集群节点机器,并安装SQL Server的时候会遇到一个坑,SQL Server安装程序会连接故障转移集群,但是实际上单机安装SQL Server根本不需要连接故障转移集群

    四、配置WSFC环境

    新葡亰496net 119

    a) 服务器管理器 -> 功能 -> 故障转移集群管理器 -> 创建一个集群

     

    b) 开始创建windwos集群

    3、注销集群节点计算机,然后使用域用户DCADMIN登录,然后设置SQL Server的启动账户为域用户DCADMIN

    新葡亰496net 120

    新葡亰496net 121

    c) 添加集群服务器fiirst.example.com和second.example.com

    打开服务管理器,先修改SQL代理的启动账户为域用户DCADMIN,然后再修改SQL 引擎的启动账户为域用户DCADMIN

    新葡亰496net 122

    新葡亰496net 123

    d) 设置管理集群名称并设置管理集群的网络IP

     

    新葡亰496net 124

    点击“位置”,修改查找位置,选中abc.com
    新葡亰496net 125

    e) 确认以上设置

    点击“高级”

    新葡亰496net 126

    新葡亰496net 127

    f) 开始创建新集群

    点击“立即查找”,选中DCADMIN

    新葡亰496net 128

    新葡亰496net 129

    g) 集群创建成功

    新葡亰496net 130

    新葡亰496net 131

    点击“确定”

    创建成功之后需要配置集群仲裁机制,选择多数节点

     

    新葡亰496net 132

    输入域用户DCADMIN的密码

    h) 最终创建成功结果

    新葡亰496net 133

    新葡亰496net 134

     

    五、开启数据库的AlwayOn高可用服务

    重启一下SQL代理服务

    a) 打开sql server 配置管理器

    新葡亰496net 135

    新葡亰496net 136

     重启之后可以看到登录用户为DCADMIN@abc.com

    Sql server 配置管理器 -> sql server 服务 -> sql  server (MSSQLSERVER)-> 右键属性 -> AlwayOn高可用 -> 启用AlwaysOn可用性组(打钩)

    新葡亰496net 137

    新葡亰496net 138

     

    新葡亰496net 139

    同样,SQL引擎服务也需要同样的设置

    看到下面这个才是成功!(否则就要先去掉勾,再重新启动mssqlserver2012服务,再启用Always On可用性组就OK了,可以看到的提示,再启动服务就OK了。)

    新葡亰496net 140

    新葡亰496net 141

     

    c) 设置登录用户

    这样,SQL引擎服务和SQL代理服务都用域用户DCADMIN启动

    新葡亰496net 142

    另一个集群节点的SQL Server也需要做同样的操作

    d) 确定策略生成

     

    e) sql  server (MSSQLSERVER)-> 右键属性 -> 重新启动sql server配置管理器

    注意:在集群节点脱离域之后,SQL引擎服务和SQL代理服务都要用本地服务帐号来启动,不能再用域用户来启动

    新葡亰496net 143

     

    f) 启用之后可以看到点击AlwayOn不会弹出集群未启用的告警

     

    新葡亰496net 144

    4、将DCADMIN域用户加入到两个集群节点的SQL Server登录用户中,服务器角色选择sysadmin

    六、配置AlwayOn高可用

    先用sa登录SQL Server

    a) AlwayOn高可用性 -> 右键,新建可用性向导

    新葡亰496net 145

    b) 开始新建可用性组

    添加登录用户,跟SQL 服务添加启动账户的步骤一样,将DCADMIN域用户添加为登录用户

    新葡亰496net 146

    新葡亰496net 147

    c) 指定可用性组名称

    新葡亰496net 148

    d) 选择数据库(选择的条件是数据库满足先决条件)

     新葡亰496net 149

    新葡亰496net 150

     给予sysadmin权限

    e) 指定副本 -> 添加副本(原先只能看到一个初始角色为主的服务器实例,需要添加一个辅助角色) -> 自动故障转移 打钩(2个) -> 同步提交 打钩(2个)

    新葡亰496net 151

     

    两个集群节点都可以用DCADMIN域用户来登录SQL Server

    可读辅助副本全选“是”

    新葡亰496net 152

    新葡亰496net 153

    新葡亰496net 154

    f) 备份首选项 -> 首选辅助副本 -> 备份优先级 默认两个都是50

     

    新葡亰496net 155

     

    g) 侦听器 -> 创建可用性侦听器(监听AlwayOn的高可用性)

     

    新葡亰496net 156

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

    h) 设置共享网络位置

    新葡亰496net 157

    新葡亰496net 158

    新葡亰496net 159

    i) 验证可用性组创建是否可用

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

    新葡亰496net 160

    新葡亰496net 161

    j) 执行结果

     

    新葡亰496net 162

    重启SQL Server

    k) 创建可用性组侦听器(若上一步配置不正确,可以按照如下步骤重新创建)

    新葡亰496net 163

    点击 AlwayOn高可用性 -> 可用性组 -> ag01-1(主要)-> 可用性组侦听器 -> 右键 -> 添加侦听器

    如果AlwaysOn启用成功,在服务器属性里可以看到启用HADR为True

    新葡亰496net 164

    新葡亰496net 165

     

    新葡亰496net 166

     

     

    新葡亰496net 167

    6、在其中一个集群节点的SQL Server中验证各节点的投票数 ,在其中一个集群节点的SQL Server上执行
    使用下面SQL语句

    新葡亰496net 168

    SELECT * FROM  sys.dm_hadr_cluster_members;
    

    七、高可用测试

    新葡亰496net 169

    1、此页面右上角有一个启动故障转移向导 点击手动切换主副本

    SELECT * FROM SYS.[dm_hadr_cluster]
    

    新葡亰496net 170

    新葡亰496net 171

     

     

    2、自动切换测试

    7、再次确保各节点已经关闭防火墙,如果防火墙没有关闭,那么在创建可用性组的时候会弹出下面错误

    停止主要角色的sqlserver服务器,主要角色会自动切换到原先辅助角色的sqlserver服务器,注意恢复停掉sqlserver服务的那台服务器的角色会成为副本。

    无法将数据库“test”联接到可用性副本“xxx”的可用性组“xx”

    针对主副本的连接未处于活动状态。无法处理该命令(错误:35250)

    新葡亰496net 172

    新葡亰496net 173

     

     

     

    8、在各个节点创建初始数据库

    先备份一个你要在所有节点用的数据库 AnuoApc.bak , 然后在各个节点还原, 用如下sql:

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

     

    在WIN-5PMSDHUI0KQ上还原日志备份之后的样子

    新葡亰496net 174

     

     

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

    注意:加入到AlwaysOn可用性组的数据库必须符合下面要求

    (1)数据库的恢复模式必须是“完整”恢复模式

    (2)数据库已进行了一次完整备份

    (3)需要是用户库,系统库不能加入可用性组

    (4)数据库可以读写,只读库不能加入到可用性组

    (5)数据库处于多用户模式

    (6)数据库没有使用AUTO_CLOSE

    (7)不属于任何其他的可用性组

    (8)数据库没有配置数据库镜像

    一个可用性组最大支持100个数据库

    新葡亰496net 175

    新葡亰496net 176

     

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

     新葡亰496net 177

     

    11、点击下一步,选择要添加的数据库

    新葡亰496net 178

     

    12、点击“下一步”,使用添加副本来将其他节点添加到可用性组中,并选择自动故障转移节点和同步提交节点,因为我们只有两个节点

    新葡亰496net 179

    我们将辅助副本设置为可读,能够自动故障转移,同步提交模式

    新葡亰496net 180

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

    新葡亰496net 181

    新葡亰496net 182

    注意:端点URL使用IP的方式,不要用FQDN长名的方式,因为服务器通常会有两个网卡,一个public网卡,一个private网卡,端点建议使用private网卡地址

    这样在端点直接传送的数据就会经由private网卡来传送,使用TCP://test.abc.com:5022 这种FQDN长名的方式是不能保证端点数据通过private网卡来传送

    SQL Server服务账户使用域用户DCADMIN来进行身份验证,避免使用证书的方式

     

    14、“备份首选项”和“侦听器”不需要设置,保持默认就行,可用性侦听器我们后面再添加,可以直接点击“下一步”

    新葡亰496net 183

    点击“是”

     

    15、选择初始数据同步,这里选择“仅联接”模式

    新葡亰496net 184

     

     

     16、点击“下一步”来验证配置,对应侦听器配置警告可以忽略,后期来添加侦听器

    因为使用的是“仅联接”数据库初始化方式,验证跳过像可用磁盘空间这样的检查

     新葡亰496net 185

     

     

    17、点击“下一步”来检查并确认之前的配置信息,若无误,点击“完成”。另外,此处也可保存建立可用性组脚本,以便分步诊断故障之用。

     新葡亰496net 186

     

     

    18、所有摘要均成功完成,显示绿色对勾。如果出现黄色警告,则需进行进一步判断是否成功。若出现红色错误,表示AG创建不成功

    新葡亰496net 187

    新葡亰496net 188

    注意:如果大家使用奇数集群节点,并且仲裁配置使用的是节点多数,那么在创建可用性组完毕的时候,WSFC仲裁投票配置会显示警告

    点击警告链接会弹出下面的对话框,这个警告其实可以不用理会

     新葡亰496net 189

    新葡亰496net 190

     

    19、查看服务器和数据库的变化

    主副本

    数据库变为已同步

    新葡亰496net 191

    辅助副本

    辅助副本这时候是可读的,在主副本上对test1表做的更改都能同步到辅助副本上的test1表

    新葡亰496net 192

     

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

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

    新葡亰496net 193

     新葡亰496net 194

    点击显示面板可以显示可用性面板

    新葡亰496net 195

    新葡亰496net 196

    新葡亰496net 197

    20、在创建可用性组后,在“可用性组侦听器”上右键添加侦听器来创建侦听器,选择静态IP的网络模式(尽量不要选择DHCP网络模式),

    输入一个从未使用过的名称(该名称将被用来创建网络名称资源)和访问端口

     

    新葡亰496net 198

    新葡亰496net 199

    点击确定

    新葡亰496net 200

     

    创建成功

    新葡亰496net 201

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

    新葡亰496net 202

    在AD里的Computers容器里会添加一个故障转移集群虚拟网络名称账户

    新葡亰496net 203

     

    在故障转移集群管理器里的角色节点,可以看到客户端访问名称和IP地址,客户端通过这个访问名称进行访问数据库

    新葡亰496net 204

    新葡亰496net 205

     

    使用侦听器名称进行登录SQL Server

    新葡亰496net 206

    新葡亰496net 207

     

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

    新葡亰496net 208

    新葡亰496net 209

     

     

    在辅助副本添加登录用户,让主副本上的登录用户也可以读取辅助副本数据
    步骤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

     


    可用性组的基本管理

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

     

    故障转移

    首先使用 侦听器名称来登录SQL Server,查看当前是在主副本是在哪个机器

    新葡亰496net 210

     

    手动故障转移

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

    新葡亰496net 211

    新葡亰496net 212

    点击“下一步”

    新葡亰496net 213

    点击“下一步”

    新葡亰496net 214

    连接到 WIN-5PMSDHUIOKQ这台辅助副本机器

    新葡亰496net 215

    新葡亰496net 216

    点击“完成”

    新葡亰496net 217

    开始进行故障转移

    新葡亰496net 218

    新葡亰496net 219

    再一次执行查询

    新葡亰496net 220

    已经故障转移到WIN-5PMSDHUIOKQ这台机

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

    新葡亰496net 221

    新葡亰496net 222

     

    执行下面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'
    

    新葡亰496net 223

     

    可以看到数据已经同步过来WIN-7107JJJ2BCC机器,并且数据库可读

    可读辅助副本是只读的,如果要对它进行数据更改则会报错

    print 'servername: ' @@SERVERNAME 
    
    
    insert into [test].[dbo].[test1] select 4, 'test4'
    

    新葡亰496net 224

     

    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.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的事件日志

    新葡亰496net 225

    新葡亰496net 226

     

     

    对于更多信息可以参考《SQLSERVER2012实施与管理实战指南》书本

    地址: 

     

    相关文章

     创建了一个弱事件,但它位于错误对象上 下载补丁解决 ()

     19471错误

    创建侦听器错误19471,19476 问题

     

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

     

    2015-11-13补充

    新葡亰496net 227

     

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

    当自动故障切换的时候,有时候出现,辅助副本正在解析的现象,之前以为是仲裁丢失(WSFC与文件共享见证失去联系),导致WSFC挂掉,后来发现原因是WSFC控制面板里的角色属性里面的最大故障数的问题而导致的

    推荐将指定时段内的最大故障数设置为10 

    新葡亰496net 228

    新葡亰496net 229

     

    新葡亰496net 230 View Code

     

    2015-12-9补充

    卸载集群

    1、先逐个逐出节点

    新葡亰496net 231

    2、集群node(随便一个集群node)上执行下面命令,不能在DC上执行,因为DC没有安装故障转移集群,sqltestdemo1为集群名

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

    3、集群最后一个节点不能逐出,只能销毁集群

    新葡亰496net 232

    4、销毁集群后在每个集群上的powershell里运行下面命令,以清除一些垃圾

    Clear-ClusterNode

    新葡亰496net 233

     

    5、在域控的AD用户和计算机界面里面把集群虚拟名称删除掉

    新葡亰496net 234

     

    6、重新启用和禁用alwayson,在alwayson的各个节点上都要操作一遍

    新葡亰496net 235

     

     

    删除可用性组

    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用户和计算机界面里面把侦听器虚拟名称删除掉

    新葡亰496net 236

     

    alwayson注意问题

     

     

    关于AlwaysOn备份

    msdn上和《SQL Server2012实施与管理实战指南》上都没有说道主副本所支持的备份类型

    经过测试,主副本跟单实例的SQL Server一样,完整备份、差异备份、日志备份都支持

    新葡亰496net 237

     

    故障切换判断条件

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

    从sql server2012开始使用sp_server_diagnoist比select @@servername判断更准确
    防止sqlserver压力大导致的误判 
    《SQL Server2012实施和管理实战指南》  P42 P50 P53

    副本之间 10秒/次 相互ping,如果不通,比如辅助副本不通,会显示为disconnect

     

    AlwaysOn注意问题:

    关于仲裁:

    本文由新葡亰496net发布于网络数据库,转载请注明出处:新葡亰496net:从0最初搭建SQL

    关键词:

上一篇:探秘重编译,2008基于策略的管理

下一篇:没有了