SQL 2014 AlwaysOn 搭建
AlwaysOn底层依然采用Windows 故障转移群集的机制进行监测和转移,因此也需要先建立Windows Cluster,只不过可用性组中的数据库不一定非要再存放在共享存储上了。可以是存储在本地磁盘上。
下面,先看一下AlwaysOn的关键特性:
1. 同故障转移群集一样,也需要一个虚拟网络名称用于客户端的统一连接。
2.一个主服务器可以最多对应四个辅助服务器,总数达到五个,而且辅助服务器支持只读功能。
3.辅助服务器可以独立执行备份和DBCC维护命令。通过配置,可以实现客户端的只读请求可以被自动定向到辅助服务器。
4.主服务器和辅助服务器之间的数据会被加密和压缩,以提高安全性和网络传输效率。
5..支持自动、手动和强制三种故障转移方式。
6.有仪表盘用于监控AlwaysOn的运行状态。
7.可以实现多站点的部署,即主站点和辅助站点可以跨物理网络。
AlwaysOn最多可以支持五个副本,有两种类型的可用性副本:一个“主副本”和一到四个“辅助副本”。但只有一个可用性副本上运行的数据库是处于可读写状态。这个可读写的数据库被称为主数据库(PrimaryDatabase),同时这个可用性副本被称为主副本(primaryreplica)。其余的副本都被称为辅助副本(secondaryreplica),辅助副本上的数据库可能是不可访问的,或者是只能接受只读操作(取决于可用性组的配置),这些数据库被称为辅助数据库。一但发生故障转移,任何一个辅助副本都可以成为新的主副本实例。主副本会不断地将主数据库上的数据变化发送到辅助副本,来实现副本间的数据库同步。

摘自:http://dufei.blog.51cto.com/382644/1384210/
搭建
参考http://www.cnblogs.com/lyhabc/p/4678330.html
环境准备
1、服务器:准备4台虚拟机。DomainServer 10.58.8.98 DB1 10.58.8.99 DB2 10.58.8.102 DB3 10.58.8.103
2、操作系统:windows2008 R2 SP2或者以上版本。
3、数据库:Sqlserver 2014。
DomainServer

DB1 DB2 DB3

步骤1:建立域服务器:
在DomainServer服务器上建立域服务alwayson.com,并将DB1、DB2、DB3的DNS设置为10.58.8.98,然后加如域alwayson.com。

然后下一步,下一步安装完成。
安装完成后,单击域服务安装向导










检查AD域服务和Netlogon服务是否正常启动


创建域管理账户



将这个域用户加入到域计算机组和域管理员组



将DB1/DB2/DB3加入到域服务器


步骤2:DB1 安装故障转移集群

安装完成后DB1创建群集管理










如果出现 OpenService “RemoteRegistry” 失败 错误
解决方法如下:1.域账户登录 2.三台机器时间必须一致
如果集群安装失败,或者节点退出不了,可以参考 http://www.cnblogs.com/woxpp/p/5604488.html
步骤3:配置群集仲裁
DomainServer 配置共享文件夹





步骤4:配置sqlserver 2014账户
修改DB1/DB2/DB3数据库 SQL代理服务和SQL 引擎服务为域账户
注销集群节点计算机,然后使用域用户登录,然后设置SQL Server的启动账户为域用户
打开服务管理器,先修改SQL代理的启动账户为域用户,然后再修改SQL 引擎的启动账户为域用户


如果启动不了参见:http://www.cnblogs.com/woxpp/p/5607908.html
添加域账户为sql登录用户,并给予sysadmin权限
用sa登录后添加SQL登录用户,跟SQL 服务添加启动账户的步骤一样,将域用户添加为登录用户



步骤5:配置sqlserver AlwaysOn
DB1/DB2/DB3 SQL Server配置管理器,启用AlwaysOn可用性组
关闭DB1/BD2/BD3防火墙
查看有效性
SELECT * FROM sys.dm_hadr_cluster_members;
DB1创建数据库TestDB

DB1创建AlwaysOn高可用性



添加副本

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

“备份首选项”和“侦听器”不需要设置,保持默认就行

点击“是”
选择初始数据同步

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


如果出现以下错误


DB1/DB2/DB3 禁用AlwaysOn 然后 重新启动服务 再开启AlwaysOn再重启服务即可


如果出现这个错误,将数据库重现还原






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





步骤6:添加侦听器


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

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

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

至此SQL 2014 AlwaysOn 搭建完成,修改主数据库的数据,两个副本会同步相关数据
步骤7:手动故障转移














释迦苦僧 :http://www.cnblogs.com/woxpp/p/5587468.html
SQL 2014 AlwaysOn 搭建的更多相关文章
- SQL Server AlwaysOn搭建
标签:SQL SERVER/MSSQL SERVER/数据库/DBA/高性能解决方案 概述 环境: 域服务器:windows server 2008 R2 SP1,192.168.2.10 DNS:1 ...
- 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...
- (转)从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
原文地址: http://www.cnblogs.com/lyhabc/p/4682028.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集 ...
- (转载) 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集群,因为AlwaysOn是基于Windows的故障转移集群的 在讲解步骤之前需要了解一下故障转移集群仲裁 ...
- 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...
- (转) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
原文地址: http://www.cnblogs.com/lyhabc/p/4682986.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建Alwa ...
- (转载) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的 步骤 这一篇依然使用step by step的方式 ...
- 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...
- 从0开始搭建SQL Server AlwaysOn 第四篇(配置异地机房节点)
从0开始搭建SQL Server AlwaysOn 第四篇(配置异地机房节点) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...
随机推荐
- supervisor-2:event
转载别人博客,做个记录 原文链接:http://lixcto.blog.51cto.com/4834175/1540169 supervisor的event机制其实,就是一个监控/通知的框架.抛开这个 ...
- VS 编辑器扩展辅助工具
[工具]——[扩展和更新]——[联机]输入 C# outline 2015
- orcal 操作
清空表数据(不清除表结构): truncate table 表名
- java中注解的使用与实例 (二)
java 注解,从名字上看是注释,解释.但功能却不仅仅是注释那么简单.注解(Annotation) 为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后 某个时刻方便地使用这些数据(通过 解 ...
- 斯考特·杨(Scott Young)快速学习方法
上午在网上看到了斯考特·杨(Scott Young)的快速学习方法,感觉很受鼓舞. 现在已经读研究生了,可是发现自己自从上大学以来到现在,发现自己的学习方法有很大的问题. 我是个特别喜欢读书的人,在大 ...
- C# DataTable的Select()方法不支持 != 判断
异常描述: 用户代码未处理 System.Data.SyntaxErrorException HResult=-2146232032 Message=无法解释位置 23 的标记“!”. Source= ...
- jmobile学习之路 ----检测屏幕宽度
<script type="text/javascript"> window.onresize = function(){ var myh1 = document.ge ...
- AFNetWorking设置HTTPRequestHeaders的坑
今天在项目中要封装一个请求头但是用如下方法总是失败: 求其原因不知道: 于是乎改用了属性对象后居然成功了..: // // RequestManager.m // 获取天气demo // // ...
- php安装配置那些事(本文纯属个人记事与技术无关)
上周由于项目需要,又拿起了三年没动过的php,从安装环境到配置,大体已经忘干净,于是咨询同学问度娘,终于在我的win7系统下安装了xampp的集成环境+NetBeans IDE 8.0,于是导入项目文 ...
- RequireJS与SeaJS模块化加载示例
web应用越变的庞大,模块化越显得重要,尤其Nodejs的流行,Javascript不限用于浏览器,还用于后台或其他场景时,没有Class,没有 Package的Javascript语言变得难以管理, ...