配置 Windows Azure Pack 中的 SQL AlwaysOn 可用性组

 

适用于:Windows Azure Pack

您可以将 SQL AlwaysOn 可用性组功能用于 Windows Azure Pack 中的 SQL Server 服务。 Microsoft SQL Server 2012 Enterprise Edition 中推出了 SQL AlwaysOn 可用性组功能,是一种能够替代数据库镜像的企业级高可用性和灾难恢复解决方案。 此功能降低了租户数据库对单个 SQL 实例出错性的依赖程度。

有关 SQL AlwaysOn 可用性组的详细信息,请转到 https://msdn.microsoft.com/library/hh510230.aspx

“包含数据库”创建是支持此功能的核心更改。 “包含数据库”是独立于其他数据库以及承载数据库的 SQL Server 实例的一种数据库。 可在 中找到 https://msdn.microsoft.com/library/ff929071.aspx有关包含数据库的详细信息。 包含数据库创建使管理员能够向可用性组添加数据库和启动复制。 “包含用户”是根据实例级用户创建的。 在故障转移时,会复制所有“包含数据库”和“包含用户”。 用户无需在辅助实例上创建新的登录名,就可以继续访问辅助实例上的数据库。

先决条件

在使用 SQL AlwaysOn 可用性组之前,请确保满足以下条件:

  • 在此处找到设置 SQL AlwaysOn 可用性组的先决条件列表。

  • 若要启用 SQL AlwaysOn 可用性组,请在通过 Windows Azure Pack 创建SQL数据库之前,在每个SQL实例上运行以下脚本:

    sp_configure ‘contained database authentication’, 1
    RECONFIGURE
    GO
    
  • 确保在添加可用性组侦听器之前,将所有辅助服务器配置为 AlwaysOn 可用性组的一部分。

  • 将可用性组侦听器与 Windows Azure Pack 一起使用后,请避免更改关联实例的上述包含设置。

  • 根据先决条件中所述,预配SQL AlwaysOn 数据库所需的文件共享。

管理员管理门户中的操作

请执行以下操作:

  • 在 SQL 中创建具有相应可用性组侦听器的可用性组。 有关详细信息,请参阅https://msdn.microsoft.com/library/ff878399.aspx

    注意

    将 AlwaysOn 组侦听器配置为使用默认端口 1433。

  • 创建类型为“高可用性(已启用‘始终可用’)”的 SQL 组。

  • 指定此 SQL Server 组中将要包含的所有主要和辅助服务器都可以访问的文件共享。

  • 向上面创建的组添加可用性组侦听器。

  • 如果在将侦听器添加到 Windows Azure Pack 后将辅助服务器添加到可用性组,请确保在管理员的管理门户上的SQL Server扩展上触发侦听器的修复连接。 否则,租户将不能创建新数据库或对现有数据库进行调整大小、更改或删除。

在 SQL Server 中的操作

管理员将需要在 SQL Server 本身中执行以下操作:

  • 定期清除为每个 SQL Server 高可用性(已启用 AlwaysOn)组指定的文件共享,以便释放空间。 此过程无法自动执行。

  • SQL Server策略添加到SQL Server管理包,以跟踪故障转移的发生情况。 添加了此策略后,管理包将自动检测到该策略,并将它用作运行状况模型。

reference

下列主题提供有关使用 SQL AlwaysOn 可用性组功的其他信息: