search
HomeDatabaseMysql Tutorial简单实现SQL Server 2012高可用性组

SQL Server 2012出来了,我最感兴趣的是其AlwaysOn功能,功能很强大,引用网上的话来说就是:. SQL Server 2012高可用性组在实现过程中较之早期的SQL Server故障转移群集来讲,不依赖特别提供共享存储磁盘阵列,每个节点独立存储一份数据库的副本。其较之早

SQL Server 2012出来了,我最感兴趣的是其AlwaysOn功能,功能很强大,引用网上的话来说就是:.

SQL Server 2012高可用性组在实现过程中较之早期的SQL Server故障转移群集来讲,不依赖特别提供共享存储磁盘阵列,每个节点独立存储一份数据库的副本。其较之早期的镜像数据库来讲,提供多节点高可用,并且针对数据库辅助节点副本可读;此外,在当前可读节点出现故障时,能通过AG自身的机制保证数据库正常访问,而不需要像之前的镜像数据库一样,需要通过访问端来进行切换。

AlwaysOn相比之前的数据库镜像强大,因为副本可设置为可读,这样可以减少主数据库的压力;当主节点故障时,副本可自动接管主节点的服务(10秒内完成)。

我用了三台服务器来实现AlwaysOn高可用性组,暂称之为DC、DB1、DB2,服务器的操作系统均为Windows 2008 R2 SP1 企业版,都加入域中(在此不做详述),DC为域控制器;DB1为数据库主节点;DB2为数据库副节点,在域控制器上创建SQLAdmin用户,此用户用来启动SQL Server服务和对共享目录的访问。

一、要实现故障转移,首先必须在DB1和DB2上安装“故障转移集群”功能:

   1、在DC上创建一个共享目录,设置SQLAdmin用户对此目录具有读写权限,此目录涉及集群的仲裁,故不应该创建在故障转移集群中。

   2、安装WSFC群集组件:

   1)打开服务器管理器,选择“功能”,在右边窗口中点击“添加功能”:

  

   2)在“添加功能向导”中,勾选“故障转移集群”,点击“下一步”:

  

   3)在“确认安装选择”页面中,点击“安装”,进行安装操作:

  

   4)完成并关闭“故障转移群集”的安装:

  

  3、配置WSFC,为所有节点均安装完“故障转移群集”服务后,在任意节点服务器的“服务器管理器”中展开“故障转移群集管理器”对WSFC进行配置。

   1)通过“故障转移群集管理器”窗口点击“创建一个群集”打开“创建群集向导”:

  

  2)在“开始之前”页中,点击“下一步”:

 

  3)添加所有服务器节点,即将环境中的2台成员服务器添加为群集节点服务器。点击“下一步”:

 

  4)在“验证警告”页面中,如果需要对基本环境(包括硬件)进行WSFC需求验证,可以选择“是”。在本示例中由于不必需进行验证,所以选择“否”。点击“下一步”:

 

  5)定义“用于管理群集的访问点”,为群集进行名,并指定群集IP地址。点击“下一步”:

 

  6)确认之前配置信息,若无误,点击“下一步”,开始群集创建:

 

  7)完成群集创建,点击“完成”关闭向导:

 

  8)在“故障转移群集管理器”会显示成功创建的群集,展开其“节点”,显示现有节点情况:

 

  9)右击群集节点,在上下文菜单中点击“更多操作”,在扩展菜单中选择“配置群集仲裁设置”为该群集配置仲裁:

 

  10)在“开始之前”页面中点击“下一步”:

 

  11)根据此前的设计,由于只有两个节点,并且没有共享磁盘存储存在,所以可以选择“多数节点和文件共享”(关于仲裁方式的选择,可参考http://technet.microsoft.com/zh-cn/library/cc731739.aspx),点击“下一步”,然后根据提示选择第一步创建的共享目录。

  12)在“确认”页面中,点击“下一步”:

 

  13)完成WSFC的仲裁配置:

 

  至此,为SQL Server 2012 AG准备的WSFC环境已经完成。

  二、为DB1、DB2安装SQL Server 2012:

  1、安装SQL Server 2012,在节点服务器上,插入SQL Server 2012安装介质。运行“SQL Server安装中心”,选择“安装”,点击“全新SQL Server独立安装或向现有安装添加功能”,安装步骤跳过,详细请看本文后面链接中的文章。

  注:这里不要选择“新的SQL Server故障转移群集安装”,如果是故障转移群集安装的话最终将实现的是早期的SQL数据库群集,并且需要共享数据存储磁盘整列,导致所有SQL节点共享同一个数据存储副本。

  2、为高可用性组配置SQL Server 2012数据库引擎服务。

  1)在“开始”菜单中点击“所有程序”-“Microsoft SQL Server 2012”-“配置工具”,打开“SQL Server配置管理器”:

 

  2)在控制台中点击“SQL Server服务”节点,在右边窗口中右击“SQL Server (MSSQLSERVER)”,在上下文菜单中选择“属性”:

 

  3)在弹出窗口中选择“AlwaysOn 高可用性”选项卡中勾选“启用AlwaysOn 可用性组”。点击“确认”。

 

  4)在弹出警告对话框中提示该修改需要重启SQL Server数据库引擎服务才能生效,点击“确定”:

 

  5)再次右击“SQL Server (MSSQLSERVER)”,在上下文菜单中选择“重新启动”,对数据库引擎执行重启操作:

 

  6)为了避免在实现AlwaysOn Group时带来复杂的权限设置,建议将相关的SQL服务(如:SQL Server数据库引擎服务)启动登录身份由默认的“内置账户”改为指定的域账户(SQLAdmin用户):

   

  7)建议为该域账户授予各节点SQL Server登录权限,并将各节点服务器账户指派为SQL Server登录账户。

 

 

 

 

 

 

 

  三、创建配置高可用性组

  1、准备工作:将需要用作同步的数据库的恢复模式设置为“完整模式”:

 

  并且该数据库已经进行了一次备份操作:

 

  需要一个共享路径提供给备份包存储,并允许所有节点服务器(SQL Server数据库引擎服务登录账户)能够通过UNC路劲进行可读写访问:

 

  2、利用向导新建高可用性组

 

 

  1)在“开始”菜单中点击“所有程序”-“Microsoft SQL Server 2012”-“配置工具”,打开“SQL Server Management Studio”:

 

  2)展开“AlwaysOn高可用性”节点,右击“可用性组”,在上下文菜单中,选择“新建可用性组向导”:

 

  3)在“简介”页面点击“下一步”:

   

  4)为将要创建的高可用性组指定名称:

 

 

 

 

  5)选择满足加入高可用性组条件的数据库,点击“下一步”:

 

  6)为高可用性组添加其它SQL Server服务器节点为副本。点击“添加副本”按钮,一次添加所需SQL Server服务器,并且指定初始角色为“主”或“辅助”。最多可选2个副本实现自动故障转移,这两个副本将同时使用同步提交可用性模式。最多可支持3个副本进行同步提交可用性模式,若使用异步提交必须强制手动故障转移。对于可读辅助副本设置来讲,可选择其为是否可读或仅读意向,需要注意只有主数据库副本才可写:

 

  7)为高可用性组创建侦听器,指定其DNS名称的Host Name和端口,建议IP地址使用静态IP,并且添加新的群集IP作为高可用性组使用,如此可以指定SQL Server的默认端口1443,以便简化客户端访问的配置。:

 

  8)初始化数据同步首选项,建议选择“完整”,并指定之前创建的UNC共享路径。一直点“下一步” 。

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

  10)返回SSMS窗口,在“可用性组”节点下显示“AG01”的面板,可以观察该高可用性组的状态:

 

  到此,SQL Server 2012基于AlwaysOn的高可用性群组就创建完成了,下一篇文章将对本文创建的群组进行可用性测试。

  本文主要参考和引用了TechNet 上的内容,我在此表示感谢。

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
最简便的硬盘序列号查询方式最简便的硬盘序列号查询方式Feb 26, 2024 pm 02:24 PM

硬盘序列号是硬盘的一个重要标识,通常用于唯一标识硬盘以及进行硬件识别。在某些情况下,我们可能需要查询硬盘序列号,比如在安装操作系统、查找正确设备驱动程序或进行硬盘维修等情况下。本文将介绍一些简单的方法,帮助大家查询硬盘序列号。方法一:使用Windows命令提示符打开命令提示符。在Windows系统中,按下Win+R键,输入"cmd"并按下回车键即可打开命

如何通过PHP编写一个简单的在线预约系统如何通过PHP编写一个简单的在线预约系统Sep 26, 2023 pm 09:55 PM

如何通过PHP编写一个简单的在线预约系统随着互联网的普及和用户对便利性的追求,在线预约系统越来越受到欢迎。无论是餐厅、医院、美容院还是其他服务行业,都可以通过一个简单的在线预约系统来提高效率并为用户提供更好的服务体验。本文将介绍如何使用PHP编写一个简单的在线预约系统,并提供具体的代码示例。创建数据库和表格首先,我们需要创建一个数据库来存储预约信息。在MyS

如何使用Java编写一个简单的学生成绩报表生成器?如何使用Java编写一个简单的学生成绩报表生成器?Nov 03, 2023 pm 02:57 PM

如何使用Java编写一个简单的学生成绩报表生成器?学生成绩报表生成器是一个可以帮助老师或教育者快速生成学生成绩报告的工具。本文将介绍如何使用Java编写一个简单的学生成绩报表生成器。首先,我们需要定义学生对象和学生成绩对象。学生对象包含学生的姓名、学号等基本信息,而学生成绩对象则包含学生的科目成绩和平均成绩等信息。以下是一个简单的学生对象的定义:public

快速入门:使用Go语言函数实现简单的图书管理系统快速入门:使用Go语言函数实现简单的图书管理系统Jul 30, 2023 am 09:18 AM

快速入门:使用Go语言函数实现简单的图书管理系统引言:随着计算机科学领域的不断发展,软件应用的需求也越来越多样化。图书管理系统作为一种常见的管理工具,也成为很多图书馆、学校和企业必备的系统之一。在本文中,我们将使用Go语言函数来实现一个简单的图书管理系统。通过这个例子,读者可以学习到Go语言中函数的基本用法以及如何构建一个实用的程序。一、设计思路:我们首先来

如何通过C++编写一个简单的音乐推荐系统?如何通过C++编写一个简单的音乐推荐系统?Nov 03, 2023 pm 06:45 PM

如何通过C++编写一个简单的音乐推荐系统?引言:音乐推荐系统是现代信息技术的一个研究热点,它可以根据用户的音乐偏好和行为习惯,向用户推荐符合其口味的歌曲。本文将介绍如何使用C++编写一个简单的音乐推荐系统。一、收集用户数据首先,我们需要收集用户的音乐偏好数据。可以通过在线调查、问卷调查等方式来获得用户对不同类型音乐的喜好程度。将数据保存在一个文本文件或数据库

如何使用PHP开发简单的文件管理功能如何使用PHP开发简单的文件管理功能Sep 20, 2023 pm 01:09 PM

如何使用PHP开发简单的文件管理功能简介:文件管理功能在很多Web应用中都是必不可少的一部分。它允许用户上传、下载、删除和展示文件,为用户提供了便捷的文件管理方式。本文将介绍如何使用PHP开发一个简单的文件管理功能,并提供具体的代码示例。一、创建项目首先,我们需要创建一个基本的PHP项目。在项目目录下创建以下文件:index.php:主页面,用于显示上传表

如何使用PHP编写一个简单的网络爬虫如何使用PHP编写一个简单的网络爬虫Jun 14, 2023 am 08:21 AM

网络爬虫是一种自动化程序,能够自动访问网站并抓取其中的信息。这种技术在如今的互联网世界中越来越常见,被广泛应用于数据挖掘、搜索引擎、社交媒体分析等领域。如果你想了解如何使用PHP编写简单的网络爬虫,本文将会为你提供基本的指导和建议。首先,需要了解一些基本的概念和技术。爬取目标在编写爬虫之前,需要选择爬取的目标。这可以是一个特定的网站、一个特定的网页、或整个互

MySQL表设计指南:创建一个简单的员工考勤表MySQL表设计指南:创建一个简单的员工考勤表Jul 01, 2023 pm 01:54 PM

MySQL表设计指南:创建一个简单的员工考勤表在企业管理中,员工的考勤管理是至关重要的一项任务。为了准确记录和统计员工的考勤情况,我们可以利用MySQL数据库来创建一个简单的员工考勤表。本篇文章将指导您如何设计和创建这个表,并提供相应的代码示例。首先,我们需要确定员工考勤表所需的字段。一般来说,员工考勤表至少需要包含以下字段:员工ID、日期、上班时间、下班时

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.