AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 55299
In Process
kmc
kmc
Asked: 2009-08-18 11:42:26 +0800 CST2009-08-18 11:42:26 +0800 CST 2009-08-18 11:42:26 +0800 CST

将 20 多个数据库移动到新数据库服务器的最佳方法是什么?SQL 2005

  • 772

当前数据库服务器:SQL Server 2005 - Windows Server 2003 新目标数据库服务器:SQL Server 2005 - Windows Server 2003 Enterprise - VM Ware 映像

当前的数据库服务器上有 20 多个数据库,一些应用程序数据库......其他基础设施类型数据库(Citrix)。我们希望将所有这些数据库移动到一个新构建的虚拟化盒子中。

所以进一步总结 - 是的,这是物理到虚拟的。- 20 多个数据库转移到这个新的虚拟 SQL 2005 盒子。- 这个盒子上的应用程序需要最少的停机时间。

我能想到的几种方法(都将被测试): 1. 第三方物理到虚拟转换器 - 然后关闭旧盒子。
- 关注 = SID 关联,Windows 或 SQL Server 不喜欢这个。

  1. 一次将所有数据库移动到新服务器 - 关闭旧服务器,将新虚拟机上的主机名更改为旧主机名。

  2. 一次全部移动,但为新框使用不同的主机名 - 这允许并行运行以防万一出现问题 - 挑战 = 必须在每个应用程序中更改主机名 - 可能会出现问题。

  3. 分阶段移动每个数据库——这也意味着一个新的主机名和一个更长更冗长的项目。

其他人有类似的场景吗?

sql-server sql-server-2005 migration physical-to-virtual
  • 5 5 个回答
  • 480 Views

5 个回答

  • Voted
  1. Instantsoup
    2009-08-18T11:53:41+08:002009-08-18T11:53:41+08:00

    我们从单个 SQL 服务器迁移到新的 SQL 集群(所有新硬件)。大约 70 个数据库。我们这样做的方式是分离数据库,复制文件,然后将数据库附加到新的 SQL 节点。

    我们被迫更新主机名,但我会让旧主机脱机并使用相同的主机名。你总是可以这样切换回来。

    • 10
  2. Anon246
    2009-08-18T12:40:09+08:002009-08-18T12:40:09+08:00

    减少停机时间的一种方法是使用从一台服务器到另一台服务器的日志传送。这需要重新指向应用程序配置,但它的好处是减少了停机时间。一般来说,流程如下:

    1. 创建新服务器并移动作业/登录名/SSIS 等。
    2. 为日志传送设置源数据库并开始传送。
    3. 停止应用程序并将数据库设置为只读。
    4. 备份数据库的最后一个 tran 日志。
    5. 在新服务器上恢复最后一个 tran 日志,设置为 no-recovery。
    6. 将新数据库设置回读/写。
    7. 使重新指向的应用程序重新联机。

    几点注意事项:

    • DB Mirroring 是一个类似的解决方案。
    • SAN 级复制也类似,但它需要特殊的 SAN(如 HP EVA)。

    优点:

    • 最少的停机时间。
    • 日志传送很容易设置。
    • 回滚计划相当容易。

    缺点:

    • 更多手动步骤。
    • 必须检查应用程序以确保正确重新指向它(更多系统管理员/DBA 工作)。

    所以,有一个权衡,但这种方法是有效的,它是一种足够普遍的技术。

    埃里克-

    • 1
  3. OMG Ponies
    2009-08-18T11:54:52+08:002009-08-18T11:54:52+08:00

    并行运行可能会在您制作副本和相应地更新副本之间更改数据。更新应用程序以指向新的主机名也可能会导致悲伤。

    我建议使用并行设置来测试每个应用程序,但一旦对测试感到满意,我可能会使用 Detach/Attach: How to move SQL Server databases to a new location by using Detach and Attach functions in SQL Server

    • 0
  4. Nick Kavadias
    2009-08-18T17:17:39+08:002009-08-18T17:17:39+08:00

    根据我的经验,p2v 是一个出色且快速的选择,但如果您想最大限度地减少停机时间,这并不理想。我只会在现有服务器不乱且虚拟化仅用于硬件合理化时才使用它。(即您没有重命名该框,将其放入新的 AD 等中。)

    如果您使用 p2v,SQL Server 和 Windows 就可以了,但您需要在启动 p2v 之前停止 SQL Server 服务。Windows SID 等都将保持不变,Windows 不喜欢的是连接到同一网络的物理和虚拟服务器。

    如果您使用附加/分离方法,请确保您还复制:

    • sql server 登录
    • sql server 代理作业(包括备份作业)
    • 链接服务器
    • 扩展存储过程

    建立新的基础设施并进行切换意味着更少的停机时间,但需要更多的工作。如前所述,服务器“切换”的日志传送是执行此操作的最快方法,尤其是在您拥有大型数据库的情况下。

    • 0
  5. Saif Khan
    2009-08-27T12:18:54+08:002009-08-27T12:18:54+08:00

    如果您有几美元要花,例如 300.00 左右,请查看 idera 管理工具集。一款优秀的软件。我在最近的一个项目中使用了它。它移动了数据库和任何相关对象,包括用户。这是值得的。在 3 次点击中,我移动了所有数据库。我仍然使用它来回移动数据库。我相信他们有试用版。您还可以获得许多其他工具,例如跨数据库移动用户或对象等。

    • 0

相关问题

  • sql server 连接字符串上的网络数据包大小以提高吞吐量

  • 基于 Microsoft 的服务器(IIS、MSSQL 等)上的病毒扫描应排除哪些内容?

  • SQL 洗衣清单

  • OPENROWSET、二进制文件、varchars 和 varbinaries

  • 聚集索引与非聚集索引?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve