SQL Server AlwaysOn安装部署手册

  • 格式:docx
  • 大小:13.12 MB
  • 文档页数:60

SQL Server 2012 AlwaysOn Failover Cluster

安装部署手册

目 录

1. AlwaysOn介绍 .................................................................................................................. 3

1.1. 可用性模式 ................................................................................................................ 3

➢ 同步提交 ................................................................................................................... 3

➢ 异步提交 ................................................................................................................... 3

1.2. 故障转移模式 ............................................................................................................ 3

➢ 手动转移(不存在数据丢失) .................................................................................... 3

➢ 自动转移(不存在数据丢失) .................................................................................... 4

➢ 强制转移(存在数据丢失) ........................................................................................ 4

1.3. 主、辅数据库连接方式 ............................................................................................ 4

➢ 主数据库连接方式 ................................................................................................... 4

➢ 辅数据库是否允许只读 ........................................................................................... 4

2. SQL SERVER 2012安装(Alwayson群集环境) ................................................................... 5

3. 配置AlwaysOn ................................................................................................................ 23

3.1. 启动服务 .................................................................................................................. 23

3.2. 设置数据库完整恢复模式 ...................................................................................... 24

3.3. 完整备份数据库 ...................................................................................................... 31

3.4. 设置共享目录 .......................................................................................................... 34

3.5. 创建AlwaysOn Group .............................................................................................. 38

3.6. 设置连接方式 .......................................................................................................... 54

3.7. 检查Read-Only Routing List .................................................................................... 55

3.8. 检查数据库同步情况 .............................................................................................. 56

3.9. 测试Read-Only Routing .......................................................................................... 57

4. 可用性副本未同步状态处理方法 ................................................................................. 58

5. SQL Server 2012 ReportSvrice KB .................................................................................... 60

1. AlwaysOn介绍

AlwaysOn是SQL Server 2012提供的全新综合、灵活、高效经济的高可用性和灾难恢复解决方案。它整合了镜像和群集的功能,基于OS 故障转移群集(Windows Server FailOver Cluster),通过在同一个WSFC的不同Node上,安装独立的SQL Server实例,定义AlwaysOn Group,一个数据库最多可以部署4个镜像。当热备机出现故障时,可以手工或自动实现故障转移,交换主、辅数据库的角色。

AlwaysOn的亮点在于镜像可读。对于OLTP应用,可以将读操作集中的报表等操作转移到Read-Only的辅助库上,极大地减少Primary DB的IO、CPU等资源占用。由于辅助库是独立的SQL实例,因此创建临时表等TempDB操作不受影响。

*注:AlwaysOn Availability Group中可以定义群集的DNS、IP、主、辅数据库、可用性模式、故障转移模式、数据库连接方式等,是AlwaysOn Cluster的关键。

1.1. 可用性模式

➢ 同步提交

同步提交模式下,主数据库事务提交前,通知辅数据库,直到辅数据库提交成功后,主数据库成功提交。

优点:数据受到完整保护,不会存在数据不一致。

缺点:事务执行时间延长,效率降低。

➢ 异步提交

异步提交模式下,主数据库独立提交事务,不必等待辅数据库同步,同时将数据写入日志,辅数据库通过事务日志同步数据。

优点:事务执行时间不受辅数据库影响,效率高。

缺点:数据同步存在延时。

*注:我们曾经测试过SQL 2008镜像异步提交和同步提交的效率,异步模式下,延时的时间基本可以忽略,在大事务情况下,延时也仅在秒级。而同步模式下,一旦辅数据库出现异常,如网络连接等错误,那么主数据库将挂起,对于系统的影响巨大。

考虑到报表对于数据实时性的要求在秒级以内完全可以接受,我们建议使用异步提交模式。

1.2. 故障转移模式

➢ 手动转移(不存在数据丢失)

主、辅库都是同步提交模式,且故障转移为手动,由SSMS发起FailOver命令。

➢ 自动转移(不存在数据丢失)

主、辅库都是同步提交模式,且故障转移为自动,不受人为控制,由WSFC自动仲裁。

➢ 强制转移(存在数据丢失)

主库是异步提交模式,且故障转移为手动,由SSMS发起FailOver命令。由于某种原因,主、辅库数据不同步,必须使用强制模式实现故障转移,此时可能存在数据丢失的情况,通常应用于突发的灾难恢复。当主、辅库SQL实例均从灾难中恢复正常后,可以通过数据移动功能确保数据同步。

可用性模式和故障转移模式兼容表:

手动转移 自动转移 强制转移

同步提交 √ √ √

异步提交 × × √

注:√表示兼容;×表示不兼容

1.3. 主、辅数据库连接方式

DotNetFramework 4. 0以后版本,为了兼容新的灾难恢复AlwaysOn Cluster数据库,连接串中增加了一个属性ApplicationIntent,用于标识应用程序连接到数据库的方式,ApplicationIntent有三种选项:

1) Null。不设置ApplicationIntent,默认为ReadWrite,兼容.NET 4.0以前的连接串。

2) ReadWrite。

3) ReadOnly

应用程序通过AlwaysOn群集的DNS访问数据库群集时,首先路由到主数据库,然后根据应用程序连接的模式(Null、ReadWrite、ReadOnly)选择是否路由到Read-Only辅助库。

➢ 主数据库连接方式

a) 允许所有连接。当我们设置主数据库允许所有连接时,应用程序任何时候都可以连接到数据库群集。

b) 允许读/写连接。当我们设置主数据库只允许读/写连接时,ApplicationIntent=

ReadOnly的应用程序连接将被阻止,并抛出异常“数据库不允许只读连接”。

➢ 辅数据库是否允许只读

a) NO。辅数据库不允许读操作。

b) Read-Intent Only。辅数据库只读,且只允许ReadOnly连接。此选项意味着只能通过SqlCmd –K ReadOnly、PowerShell、或者ApplicationIntent=ReadOnly的应用程序连接数据库。我们通常使用SSMS连接到该数据库是被禁止的。