SQL Server 故障转移群集部署修补程序和服务包过程

文章翻译 文章翻译
文章编号: 958734 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

简介

本文介绍如何将 Microsoft SQL Server 更新应用于故障转移群集实例。

重要
  • 如果您更新的活动节点上的 SQL Server 故障转移群集实例时,SQL Server 服务将被停止。这将导致 SQL Server 的停机时间。为了避免停机时间,滚动上安装更新的非活动节点这篇文章中所述。
  • 为了避免可能的所有者节点故障转移群集实例中的混合的版本,请使用群集管理器工具 (Cluadmin.exe),从故障转移群集实例中可能的所有者节点列表中移除节点。应避免使用具有混合的可能的所有者节点,以防止可能的数据损坏的版本。
  • 在 Microsoft SQL Server 2008年和更高版本中,群集服务检查 SQL 网络名称资源的可能所有者的列表。SQL 网络名称资源也会执行检查点操作。此行为不同于 Microsoft SQL Server 2005年。在 SQL Server 2005,SQL Server 资源本身是执行检查点操作。

更多信息

设置 SQL Server 故障转移群集上滚动更新

注意本节中的信息适用于 SQL Server 2008年及更高版本。
  1. 在开始更新之前,请确保您收集有关特定 SQL Server 群集实例的可能所有者的列表。若要查找特定的 SQL Server 网络资源名称,请运行以下命令:
    cluster.exe 资源
    您将看到类似于以下内容的输出:
    Resource                          Group                             Node              Status
    --------------------              --------------------              ----------        ------
    Cluster Disk 1                    Cluster Group                     NODE1             Online
    Cluster Disk 2                    SQL Server (INST1)                NODE1             Online
    Cluster Disk 3                    SQL Server (INST2)                NODE1             Online
    Cluster Disk 4                    Available Storage                 NODE1             Online
    Cluster IP Address                Cluster Group                     NODE1             Online
    Cluster Name                      Cluster Group                     NODE1             Online
    SQL IP Address 1 (SQLVS1)         SQL Server (INST1)                NODE1             Online
    SQL Network Name (SQLVS1)         SQL Server (INST1)                NODE1             Online
    SQL Server                        SQL Server (INST1)                NODE1             Online
    SQL Server Agent                  SQL Server (INST1)                NODE1             Online
    SQL IP Address 2 (SQLVS2)         SQL Server (INST2)                NODE1             Online
    SQL Network Name (SQLVS2)         SQL Server (INST2)                NODE1             Online
    SQL Server                        SQL Server (INST2)                NODE1             Online
    SQL Server Agent                  SQL Server (INST2)                NODE1             Online
    
    在此示例中,您可以使用以下命令创建为每个 SQL 网络名称资源的可能所有者的列表:
    • cluster.exe 资源"SQL 网络名称 (SQLVS1)"/listowners > c:\SQLVS1_list_of_owners.txt
    • cluster.exe 资源"SQL 网络名称 (SQLVS2)"/listowners > c:\SQLVS2_list_of_owners.txt
  2. 在群集管理器工具中,使用相应的 SQL 网络名称资源的可能的所有者列表中您要在其应用更新故障转移群集实例删除节点的一半。从可能的所有者首先删除的非活动节点。保留以供将来参考的可能的所有者中删除此更新过程中的节点的列表。

    注意我们建议您删除的节点一半从可能的所有者,以维护高可用性。
  3. 从故障转移群集实例中的可能的所有者列表中删除节点后,在第 2 步中卸下的节点上应用 SQL Server 的更新。若要从可能的所有者中删除的每个节点上应用此更新,请参阅您要应用的更新包中提供的文档。

    注意如果是第一次应用该更新节点的实例上,移动任何活动资源组到另一个节点在应用此更新之前。这有助于避免停机时间或正在使用的共享的组件进行更新时可能出现的重新启动操作。
  4. 已从可能的所有者中删除该节点上应用此更新后,使用群集管理器工具上 SQL 网络名称资源将已更新的节点重新添加到故障转移群集实例中的可能的所有者列表。

    若要确保您将添加正确的 SQL Server 实例的节点后,使用您在之前收集的可能所有者的列表执行更新。请确保将已更新的节点标记您的列表中。
  5. 基于 SQL 网络名称资源,在 Windows Server 2008 中,找到正确的资源组、 应用程序或服务,然后将该组、 应用程序或服务移动到已更新的节点之一。
  6. 验证所有 SQL Server 资源都在当前处于活动状态的节点上联机。
  7. 在群集管理器工具中,使用 SQL 网络名称资源的故障转移群集实例中的可能的所有者中删除未被更新的节点。
  8. 将 SQL Server 更新应用于您在步骤 7 中删除的节点。
  9. 重复步骤 4,添加所有已更新到故障转移群集实例更新过的可能所有者的节点。
  10. 验证群集运行未出现任何问题。尝试在群集中的节点间移动的 SQL Server 实例。

卸载 SQL Server 故障转移群集在滚动更新方案上的修补程序

注意本节中的信息适用于 SQL Server 2008年及更高版本。

使用适用于您的情况的步骤:

方案 1: 应用此修补程序在群集中的所有节点上

在此方案中,要卸载此修补程序的过程是完全相反的安装,如上一节中讨论的修补程序。详细的过程将如下所示:
  1. 删除更新之前,请确保您收集有关特定的 SQL Server 群集实例的可能所有者的列表。若要查找特定的 SQL Server 网络资源名称,请运行以下命令:
    cluster.exe resource 
    您将看到类似于以下内容的输出:
    资源组节点状态-----------
    群集磁盘 1 联机节点群集组节点 1 联机群集磁盘 2 SQL Server (INST1) 1
    群集磁盘 3 (INST2) 的 SQL Server 节点 1 联机群集磁盘 4 可用的存储节点 1 联机
    群集 IP 地址的群集组节点 1 联机群集名称群集组节点 1 联机 SQL IP 地址为 1 (SQLVS1)
    SQL Server (INST1) 节点 1 联机 SQL 网络名称 (SQLVS1) SQL Server (INST1) 节点 1 联机 SQL Server SQL Server
    (INST1)节点 1 联机 SQL Server 代理 SQL Server (INST1) 节点 1 联机 SQL IP 地址为 2 (SQLVS2) SQL Server (INST2) 节点 1 联机
    节点 SQL 网络名称 (SQLVS2) (INST2) 的 SQL Server 节点 1 联机 SQL Server SQL Server (INST2) 1 联机
    节点 SQL Server 代理 SQL Server (INST2) 1 联机

    在此示例中,您可以使用以下命令创建为每个 SQL 网络名称资源的可能所有者的列表:
    • cluster.exe 资源"SQL 网络名称 (SQLVS1)"/listowners > c:\SQLVS1_list_of_owners.txt
    • cluster.exe 资源"SQL 网络名称 (SQLVS2)"/listowners > c:\SQLVS2_list_of_owners.txt
  2. 在群集管理器工具中,使用相应的 SQL 网络名称资源的可能的所有者列表中您要在其删除了更新故障转移群集实例删除节点的一半。从可能的所有者首先删除的非活动节点。保留以供将来参考的可能的所有者中删除此更新删除过程中的节点的列表。
    注意我们建议您删除的节点一半从可能的所有者,以维护高可用性。
  3. 您已从故障转移群集实例中的可能的所有者列表中删除节点之后,删除您在第 2 步中删除的节点上的 SQL Server 更新。若要删除已从可能的所有者中删除每个节点上的更新,请参阅您要应用的更新包中提供的文档。

    注意如果这是您要删除的节点实例上的更新在第一次,移动任何活动资源组到另一个节点之前删除的更新。这有助于避免停机时间或正在使用的共享的组件进行更新时可能出现的重新启动操作。
  4. 已从可能的所有者中删除该节点上已删除此更新后,使用群集管理器工具上 SQL 网络名称资源将降级的节点重新添加到故障转移群集实例中的可能的所有者列表。

    若要确保您将添加正确的 SQL Server 实例的节点后,使用您在之前收集的可能所有者的列表执行更新。请确保您在您的列表中标记已被降级的节点。
  5. 基于 SQL 网络名称资源,在 Windows Server 2008 中,找到正确的资源组、 应用程序或服务,然后将该组、 应用程序或服务移动到一个节点被降级的。
  6. 验证所有 SQL Server 资源都在当前处于活动状态的节点上联机。
  7. 在群集管理器工具中,使用 SQL 网络名称资源的可能所有者在故障转移群集实例中移除的节点不被降级的。
  8. 删除 SQL Server 更新到第 7 步中删除的节点。
  9. 重复步骤 4,将被降级的所有节点都添加回降级您的故障转移群集实例的可能所有者。
  10. 验证群集运行未出现任何问题。尝试在群集中的节点间移动的 SQL Server 实例。

方案 2: 当您正在滚动更新过程,并且只有一些节点进行更新。


如以下所述可能存在的各种排列:

注意下面的讨论假定按照本文"故障转移群集上滚动更新安装 SQL Server"部分中所述的过程,并且当您正在更新的第一部分或第二个节点的一半。

后半部分的方案 (首先为节点的下半部分会从可能的所有者)

案例 1A: 您决定不继续进一步修补程序与更新过程。
请按下列步骤:
  1. 删除已修补的每个节点上的更新和使用 SQL 网络名称资源在群集管理器工具将其添加恢复到故障转移群集实例中的可能的所有者列表。
  2. 验证群集运行未出现任何问题。尝试在群集中的节点间移动的 SQL Server 实例。

案例 2A。在几个节点上应用此修补程序之后, 您发现 (通过搜索网页或使用 Microsoft CSS 时),存在一些已知问题与该修补程序,因此无法继续。
  1. 如果有较新版本的更新程序修复的问题的的结合使用第 3 步为 10 的这篇文章"安装 SQL Server 2008年滚动更新在故障转移群集"一节中描述的过程,继续更新过程。
  2. 如果较新版本不可用,或者您不能立即升级到较新的版本,使用上述案例 1A 的过程进行了说明。

案例 3A。您不能在一个或多个节点上应用此修补程序:

在这种情况下,建议将进一步更新该节点上发生故障的原因并继续修补程序与更新的其他节点。作为可能的所有者的节点添加到 SQL Server 资源,请将有问题的节点或从该列表中的节点。

如果故障排除选项并不需要将所有节点都可用于您的群集操作,可分别介绍了该过程用于为上述案例 1A。

方案的第二部分:(上半年节点都已更新并添加回可能的所有者列表和您正在删除或已已经删除的可能的所有者列表中的第二部分):

案例 1B: 您会注意到您不能移动到已更新的节点 (更新过程的步骤 #5) 的 SQL Server 组由于修补程序的可能问题 (SQL 服务器组实质上是故障回复到一个尚未更新的节点)。

请按下列步骤:

  1. 检查是否有解决此问题的修补程序的更新版本。如果它不可用,使用的结合与本文"安装 SQL Server 2008年滚动更新在故障转移群集"一节中描述的过程执行整个更新过程。

    注意您不需要从后半部分中删除 regressed 修补程序。您只需删除第一个更新,从可能的所有者列表中为 SQL Server 实例,然后继续进行,如同这篇文章的开头使用滚动更新过程讨论新修补程序要更新整个群集的节点的一半。
  2. 如果较新版本不可用,或者您不能立即升级到较新的版本,请按以下步骤:
    1. 更新过程的开头使用您收集的列表,删除第一个应用修补程序为 SQL Server 网络名称可能所有者的节点的一半。
    2. 将第二个下半部分的"删除"节点重新添加到 SQL Server 的网络名称的可能所有者。
      注意故障切换失败,但您可能已经删除的第二部分上的某些或所有的节点。此外注意到所有的节点上的第二部分已被尚未更新。
    3. 已删除此更新后,使用群集管理器工具上 SQL 网络名称资源将这些节点添加回故障转移群集实例中的可能的所有者列表。
    4. 验证群集运行未出现任何问题。尝试在群集中的节点间移动的 SQL Server 实例。
案例 2B: 几个节点上应用此修补程序之后, 您发现 (通过搜索网页或使用 Microsoft CSS 时),存在一些已知问题与该修补程序,因此无法继续。(SQL Server 组处于联机状态的一个已更新的第一个半节点上)。

请按下列步骤:
  1. 检查是否有解决此问题的修补程序的更新版本。如果它不可用,则使用结合这篇文章继续进行整体"安装 SQL Server 故障转移群集上滚动更新"一节中描述的过程中更新的过程中,但从您的列表中的完整第二部分。

    注意实质上,更新过程完成后,会更新您的列表的第二部分中的第一个半,以及这些节点中的所有节点都将都获得两套更新的第一个具有此问题的修补程序并更正后的修补程序与第二个。
  2. 如果较新版本不可用,或者您不能立即升级到较新的版本,请按以下步骤:
    1. 通过提供要应用的更新包中的文档引用的第二部分中删除该修补程序在每个更新的节点上。
    2. 使用群集管理器工具上 SQL 网络名称资源将节点的第二部分重新添加到故障转移群集实例中的可能的所有者列表。

      若要确保您将添加正确的 SQL Server 实例的节点后,使用您在之前收集的可能所有者的列表执行更新。请确保将已更新的节点标记您的列表中。
    3. 基于 SQL 网络名称资源,Windows Server 2008 中, 找到正确的资源组、 应用程序或服务,然后到一个节点的第二部分从移动的组、 应用程序或服务。
    4. 更新过程的开头使用您收集的列表,删除第一个应用修补程序为 SQL Server 网络名称可能所有者的节点的一半。
    5. 通过引用您要应用的更新包中提供的文档中删除每个节点上的更新。
    6. 已删除此更新后,使用群集管理器工具上 SQL 网络名称资源将这些节点添加回故障转移群集实例中的可能的所有者列表。
    7. 验证群集运行未出现任何问题。尝试在群集中的节点间移动的 SQL Server 实例。
案例 3B: 您决定不继续进一步修补程序与更新过程: 使用下面的过程。
  1. 通过提供要应用的更新包中的文档引用的第二部分中删除在每个节点可能已更新的修补程序。
  2. 使用群集管理器工具上 SQL 网络名称资源将节点的第二部分重新添加到故障转移群集实例中的可能的所有者列表。
  3. 若要确保您将添加正确的 SQL Server 实例的节点后,使用您在之前收集的可能所有者的列表执行更新。请确保将已更新的节点标记您的列表中。
  4. 基于 SQL 网络名称资源,Windows Server 2008 中, 找到正确的资源组、 应用程序或服务,然后到一个节点的第二部分从移动的组、 应用程序或服务。
  5. 更新过程的开头使用您收集的列表,删除第一个应用修补程序为 SQL Server 网络名称可能所有者的节点的一半。
  6. 通过引用您要应用的更新包中提供的文档中删除每个节点上的更新。
  7. 已删除此更新后,使用群集管理器工具上 SQL 网络名称资源将这些节点添加回故障转移群集实例中的可能的所有者列表。
  8. 验证群集运行未出现任何问题。尝试在群集中的节点间移动的 SQL Server 实例。

属性

文章编号: 958734 - 最后修改: 2013年1月18日 - 修订: 9.0
这篇文章中的信息适用于:
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise Evaluation
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2012 Business Intelligence
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
关键字:?
kbexpertiseadvanced kbinfo kbmt KB958734 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 958734
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com