设为首页 收藏本站
查看: 1662|回复: 0

[经验分享] SQL Server 2012 管理新特性:AlwaysOn 可用性组

[复制链接]

尚未签到

发表于 2018-6-11 08:11:25 | 显示全部楼层 |阅读模式
  推荐阅读最新的文章集合  http://www.mssqlmct.cn/?post=6
  

  SQL Server 2012 新特性(一)管理新特性:AlwaysOn
  

  一、准备环境
  1、准备4台计算机
  域控制器DC1,IP地址192.168.1.1
  主节点SQL1:IP地址192.168.1.21
  辅助节点SQL2:IP地址192.168.1.22
  辅助节点SQL3:IP地址192.168.1.23
  上述4台服务器的其它配置一致:子网掩码255.255.255.0,默认网关192.168.1.254,DNS为192.168.1.1。
  

  2、准备域环境
  DC1为域contoso.com的域控制器,有关安装域控制器的操作请见前面的博文。
  SQL1、SQL2、SQL3在单机上均安装了SQL Server 2012数据库引擎。请将这3台计算机都加入到contoso.com域。
  

  3、创建群集
  分别在SQL1、SQL2、SQL3在单机上打开“服务器管理器”,“添加功能”,添加“故障转移群集”。
  以域管理员的帐户登入其中一个节点,准备创建群集。打开“故障转移群集管理”,创建一个包含上述3个节点的群集。群集名称为WinCluster1,IP地址为192.168.1.201,仲裁配置为“多数节点”。
  详细的操作已在前面的博文有述。《创建Windows2008群集》http://jimshu.blog.51cto.com/3171847/590414
  

  二、准备AlwaysOn
  1、开启功能
  打开“SQL Server 配置管理器”,在左侧的“SQL Server 服务”列表中找到默认的实例。
DSC0000.png

  在右健菜单中选择“属性”,打开“AlwaysOn高可用性”选项页,确认已经选择了“启用AlwaysOn可用性组”。
  

DSC0001.png

  启用后,重新启动这个SQL Server 实例。
  如果没有启用这个功能,那么在配置AlwaysOn时会有以下错误:
DSC0002.png

  如果事先没有将该节点(计算机)加入到群集,则会报错:
DSC0003.png

  

  2、打开防火墙端口
  在“管理工具”中打开“高级安全 Windows 防火墙”,添加入站规则,打开TCP1433和TCP5022端口。请参考《Windows 2008 中的防火墙》http://jimshu.blog.51cto.com/3171847/590411
  SQL Server 并不会去检查另一个节点的防火墙是否开放了端口,而是直接就去进行AlwaysOn的配置。如果防火墙未开放上述2个端口,SQL Server操作将超时而未成功,因此将出现以下错误信息:
DSC0004.png

DSC0005.png

  

  3、准备登录名
  AlwaysOn中使用了镜像(mirror)技术,因此需要使用域帐户同时连接多个数据库引擎,或者使用证书。否则在配置AlwaysOn的过程中会出现以下提示:
DSC0006.png

  在这个实验中,我们使用域帐户。打开“SQL Server Management Studio”,为域用户新建登录名,并赋予权限(服务器角色为sysadmin)。由于SQL Server 2012可以为一个用户组建立登录名,因此我们在这里直接为域管理员组创建了登录名。
DSC0007.png

DSC0008.png

  创建了登录名,再将SQL Server服务帐户更改为域帐户,并重启这个实例。
DSC0009.png

  

  4、准备文件夹
  主数据库将在其它节点上进行恢复,恢复后数据库将与原数据库位于硬盘上相同的路径位置。例如:原数据库位于 C:\sqldata ,那么必须为其它节点建立相同的文件夹。否则在配置AlwaysOn的时候会出现以下错误:
DSC00010.png

  此外,我们在后面的操作中,将主数据库直接备份到共享文件夹,以便于其它节点从这个共享文件夹读取备份数据然后在其本地进行恢复。因此,请在主节点SQL1上共享一个文件夹,例如 \\SQL1\AlwaysOn 。
  

  5、备份数据库
  加入AlwaysOn可用性组的数据库必须为完整恢复模式,并且必须先做一次完整备份。此后,在选择“可用性组的用户数据库”时,才会显示为“满足先决条件”状态。否则,显示为“需要完整恢复模式”或“需要完整备份”状态。
  

  

  三、新建可用性组
  1、启动向导
  以域管理员的帐号登入SQL1,然后打开“SQL Server Management Studio”。
DSC00011.png

  展开“AlwaysOn高可用性”,在“可用性组”点右键,在菜单中选择“新建可用性组向导”。
DSC00012.png

  

  2、配置可用性组名称
DSC00013.png

  

  3、选择数据库
DSC00014.png

  

  4、指定副本
DSC00015.png

  点“添加副本”按钮,出现“连接到服务器”对话框。输入服务器名称,然后连接到辅助角色的数据库实例。
DSC00016.png

  添加了辅助副本所在的实例之后,查看一下“端点”、“备份首选项”和“侦听器”3个选项页。
DSC00017.png

DSC00018.png

DSC00019.png

  

  5、选择数据同步
DSC00020.png

  

  6、验证
DSC00021.png

  由于我们在前面的操作中没有设置侦听器,所以这里会有一个警告信息。我们将在后面配置,所以忽略这个警告。
DSC00022.png

  

  7、完成
DSC00023.png

DSC00024.png

  

  8、检查结果
  回到“SQL Server Management Studio”,可见“AlwaysOn高可用性”--“可用性组”--“AlwaysOn1”。
  再检查 \\SQL1\AlwaysOn 文件夹,可见自动产生了db01、db02数据库的备份文件。
DSC00025.png

  转到DC1,打开“Active Directory 用户和计算机”和DNS,可见“AlwaysOn1”这个虚拟网络名称(VNN)帐户及其IP地址。
  

  

  四、添加数据库
  1、启动向导
DSC00026.png

DSC00027.png

  

  2、选择数据库
DSC00028.png

  

  3、选择数据同步
DSC00029.png

  

  4、连接到副本
DSC00030.png

  

  5、验证
DSC00031.png

  

  6、完成
DSC00032.png

DSC00033.png

  

  7、检查结果
  回到“SQL Server Management Studio”,检查“AlwaysOn高可用性”--“可用性组”--“AlwaysOn1”。例如,此时在SQL2节点,结果如下:
DSC00034.png

  再检查 \\SQL1\AlwaysOn 文件夹,可见自动产生了 db03 数据库的备份文件。
  

  

  五、添加侦听器
  根据官方提供的实验手册,仅在“故障转移群集管理”窗口添加侦听器。实践中不推荐此方法,而是直接在SSMS中添加。
  

  1、添加客户端访问点
  在任意一个节点打开“故障转移群集管理”,在左侧的“服务和应用程序”列表中选择“AlwaysOn1”,为其“添加资源”--“客户端访问点”。
DSC00035.png

DSC00036.png

DSC00037.png

DSC00038.png

DSC00039.png

  

  2、使资源脱机
  为了将前面的操作所新建的客户端访问点与需要故障转移的资源进行绑定,需要先将资源脱机,然后修改资源的属性。
DSC00040.png

  

DSC00041.png

  

  3、配置依赖关系
DSC00042.png

DSC00043.png

  

  4、使资源联机
DSC00044.png

DSC00045.png

  

  说明:在SSMS中添加侦听器的界面。推荐!
DSC00046.png

  

  5、检查结果
  打开“SQL Server Management Studio”,在“可用性组侦听器”列表中可见名为“SqlFailOver”的侦听器。
DSC00047.png

  转到DC1,打开“Active Directory 用户和计算机”和DNS,可见“SqlFailOver”这个虚拟网络名称(VNN)帐户及其IP地址。
DSC00048.png

DSC00049.png

  

  

  六、添加副本
  1、启动向导
DSC00050.png

DSC00051.png

  

  2、连接到副本
DSC00052.png

  

  3、指定副本
DSC00053.png

  

  4、 选择数据同步
DSC00054.png

  

  5、验证
DSC00055.png

  

  6、完成
DSC00056.png

DSC00057.png

  

  7、检查结果
DSC00058.png

  还可以通过“显示面板”查看可用性组的状态。
DSC00059.png

DSC00060.png

  在这个“显示面板”的右侧有一个任务栏,可以“启动故障转移向导”、“查看AlwaysOn运行状况事件”、“查看群集仲裁信息”。例如:
DSC00061.png

  

  

  七、查看属性
  1、群集“WinCluster1”的属性
DSC00062.png

DSC00063.png

DSC00064.png

  其中,在“资源类型”选项页中,用户定义的资源类型有2类:
DSC00065.png

DSC00066.png

  

  2、服务和应用程序“SQLSERVER”的属性
  打开“故障转移群集管理”,在左侧列表的“服务和应用程序中”找到“AlwaysOn1”,将其重命名为“SQLSERVER”。结果如下:
DSC00067.png

  再查看其属性:
DSC00068.png

DSC00069.png

  

  3、资源“AlwaysOn1”的属性
DSC00070.png

DSC00071.png

DSC00072.png

DSC00073.png

DSC00074.png

  

  4、可用性组“AlwaysOn1”的属性
DSC00075.png

DSC00076.png

DSC00077.png

  

  5、可用性副本的属性
  依次查看3个“可用性副本”的属性,例如SQL1的属性如下:
DSC00078.png

  

  6、侦听器“SqlFailOver”的属性
DSC00079.png

  说明:如果通过SSMS添加的侦听器,应当指明端口(默认为1433)。而通过故障转移群集管理器添加的侦听器,似乎没有自动配置一个端口。因此,推荐通过SSMS添加侦听器。
  

  八、模拟故障转移(切换副本)
  1、使用“SQL Server Management Studio”(推荐)
DSC00080.png

DSC00081.png

DSC00082.png

  由于SQL3的“可用性模式”是“异步提交”,因此,如果将SQL3指定为新的主副本则可能造成数据丢失。
DSC00083.png

  我们也可以在“SQL Server Management Studio”中看到SQL2的状态与SQL3不同。SQL2显示为“已同步”,SQL3显示为“正在同步”。
DSC00084.png

  在“故障转移可用性组:AlwaysOn1”点“下一步”,继续操作。
DSC00085.png

DSC00086.png

DSC00087.png

  注意到最后有一个警告信息。
DSC00088.png

  

  2、使用“故障转移群集管理器”(不推荐)
DSC00089.png

DSC00090.png

DSC00091.png

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-522008-1-1.html 上篇帖子: SCCM2012之客户端发现与安装 下篇帖子: DPM2012系列之四:配置邮件报警功能
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表