将 vCenter Server 数据库从 SQL Express 迁移到完整的 SQL Server
search cancel

将 vCenter Server 数据库从 SQL Express 迁移到完整的 SQL Server

book

Article ID: 343194

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

免责声明:本文为 Migrating the vCenter Server database from SQL Express to full SQL Server (1028601) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。

本文提供了将 VMware vCenter Server 数据库从 SQL Express 服务器迁移到完整 SQL Server 实例的步骤。

注意
  • 当执行从 SQL Express 到 SQL Server 的就地升级时,将需要创建汇总作业。
  • 如果接近或超出 5 个主机、50 个虚拟机或 4 GB 数据库大小,则可能需要从 SQL Express 迁移到 SQL Server。(在 Microsoft SQL Express 2008 及更新版本中,最大数据库大小增加到了 10 GB。)


Symptoms:


Environment

VMware vCenter Server 5.0.x
VMware vCenter Server 5.1.x
VMware vCenter Server 4.1.x
VMware vCenter Server 4.0.x
VMware vCenter Server 5.5.x

Resolution

要将 vCenter Server 数据库从 SQL Express 实例迁移到完整的 SQL Server,请执行以下操作:

注意:确保使用 dbo 架构并且未在 vCenter Server 数据库中自定义架构。

  1. 停止 VirtualCenter Server 服务。

  2. 执行 vCenter 数据库的完整备份。不要跳过此步骤。

  3. 停止 SQL Express 服务器上的 vCenter 数据库。

  4. 将备份数据库复制到完整的 SQL Server 主机。

  5. 在完整的 SQL Server 上创建新数据库。

  6. 将备份的 SQL Express vCenter 数据库还原到新创建的数据库。要确保还原正确,请导航到选项并单击用替代项覆盖现有数据库

    注意
    • 当完整的 SQL Server 本地安装在 vCenter Server Windows 主机上时,上述说明也适用。创建新的 2008 数据库并将 SQL Express 2005 数据库还原到 SQL 2008 Server 后,SQL Express 2005 将升级到 SQL Server 2008。
    • 如果已本地安装完整 SQL Server 的新实例以进行数据库迁移,则可能需要重新创建或修改 vCenter 服务的 SQL Server 实例依赖关系。
    • 必须删除系统 DSN 然后再重新创建,以使其使用 SQL Native Client 10.0 驱动程序。对于 vCenter Server 4.0 及更低版本,请下载 x86,对于 vCenter Server 4.1 及更高版本,请下载 x64

      截至 2014 年 10 月 24 日,上述链接正确无误。如果您发现某链接已损坏,请提供反馈,VMware 员工将会更新该链接。

    • 确保 DSN 连接到 SQL 2008 Server 上新创建的数据库。对于 vCenter Server 4.1 和更高版本,确保创建了 64 位 DSN 用于 ODBC 连接。

    • 对于 vCenter Server 5.1,可能还需要迁移 Single Sign-On (SSO) 数据库。

  7. 将连接到数据库的 vCenter 帐户配置为 MSDB 系统数据库的 dbo 用户。
  8. 更新 vCenter Server 上的 ODBC 连接。

    注意:此过程将修改 Windows 注册表。在对注册表进行任何修改之前,请确保对注册表和虚拟机进行了最新有效的备份。有关备份和还原注册表的详细信息,请参见 Microsoft 知识库文章 136393

    要更新 ODBC 连接,请执行以下操作:

    1. 单击开始 > 运行,键入 regedit,然后单击确定。此时将打开“注册表编辑器”窗口。
    2. 导航到 HKEY_LOCAL_MACHINE > SOFTWARE > VMware, Inc > VMware VirtualCenter
    3. 修改注册表项 DbInstanceName 并移除当前数值数据。请勿删除此注册表项。
    4. 修改注册表项 DbServerType,将数值数据从 Bundled 更改为 Custom
    5. 导航到 HKEY_LOCAL_MACHINE > SOFTWARE > VMware, Inc > VMware VirtualCenter > DB
    6. 如果 ODBC 连接名称已更改,请使用新 ODBC 连接的名称修改注册表 1。
    7. 修改注册表 4 并将 ODBC 驱动程序更改为新驱动程序。
    8. 修改注册表 2 并添加 vCenter Server 用户,例如 sa

  9. 要更改存储在注册表中的数据库密码,允许用户在不重新安装 vCenter Server 的情况下更新 ODBC 信息:
    a. 单击开始 > 运行
    b. 键入 cmd
    c. 右键单击命令提示符图标,然后选择以管理员身份运行
    d. 运行以下命令:
    C:\Program Files\VMware\Infrastructure\VirtualCenter Server\vpxd.exe -p

    注意:这是 vCenter Server 安装目录的默认路径。如有必要,请适当更改该路径。

  10. 重新创建汇总作业。

  11. 确保 vcdb.properties 文件反映新的 SQL 数据库信息。

    注意:如果使用的是 vCenter Server 5.0,请确保已更新 Tomcat Server 所用的数据库设置。

  12. 启动 vCenter Server 服务。
如果 vCenter Server 服务依然依赖 SQL Express,请按照以下步骤操作:
  1. 打开 regedit,然后导航到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vpxd。
  2. 单击 DependOnService 列。DependOnService 的值会列出 vCenter Server 依赖的所有服务。
  3. 删除 SQL Express 服务行。
  4. ControlSet001 ControlSet002 文件夹执行类似的检查。
  5. 重新引导虚拟机。
  6. 确保 SQL Express 服务已设置为手动/已禁用并已停止。
  7. 启动 vCenter 服务。


注意:如果在迁移后访问“存储视图”选项卡时遇到问题,请参见 Accessing the Storage tab view in vCenter Server 5.0 fails with an internal error: com.vmware.vim.sms.fault.serviceInitializationException (2015180)


Additional Information

有关迁移 Update Manager 数据库的详细信息,请参见 vSphere Installation and Setup Guide 中的“在不同的计算机上迁移 Update Manager 数据并升级 Update Manager”部分。Migrating the vCenter Server database from SQL Express to full SQL Server