2010-07-24 192 views
0

我正在通过慢速网络访问SQL服务器数据库。我在另一台机器上安装了SQL服务器,并且连接速度更快。无论如何,我可以很容易地将这个数据库从一台机器复制到另一台机器(模式和数据)如何将SQL服务器从一台机器复制到另一台机器

+0

数据库的大小是多少? – slugster 2010-07-24 04:20:26

+0

您是否需要复制一次才能使用它,或者您是否需要保持本地版本的同步?你对原始数据库有什么样的访问权限?你是系统管理员还是只能看到数据? – 2010-07-24 04:40:10

+0

@Tom H. - 一次性复制 – leora 2010-07-24 12:52:55

回答

2

一些方法浮现在脑海。按照优先顺序和成功可能性:

  1. 备份现有数据库,将备份文件复制到新服务器,执行恢复。然后修复需要更正可能的任何用户帐户。问另一个问题的细节。

  2. 使用类似SQL Compare和/或SQL Data Compare的工具在新服务器上复制副本。

  3. 执行原始服务器上的分离,复制文件,祈祷并在新服务器上执行附加操作。如有必要,请务必将它们重新连接到原始服务器。虽然这通常会起作用,但它会失败,我倾向于远离。

  4. 使用复制数据库命令。 < - 请注意,我有从来没有看到这项工作,并且我开始在一个新环境中开始工作时每季度一次。

  5. 构建一个SSIS包来传输模式和数据。

  6. 手动编写数据库脚本,在新服务器上运行这些脚本。然后做选择1,3,4前添加一个链接服务器参考,并运行之类的东西INSERT INTO newdb.dbname.dbo.tablenameSELECT * FROM olddb.dbname.dbo.tablename ..

顺便说一句,或5确保两个服务器具有完全相同的服务包和补丁级别。这将增加一切工作的可能性。

+0

对于大型表来说,SQL Data Compare不是一个好主意(除非产品在过去一年中发生了很大变化),并且在完全重建的情况下,比较功能并不是真的必要。 – 2010-07-24 04:38:27

1

您是否可以从缓慢的SQL Server访问备份?如果这样做,您可以获得最新的备份&事务日志并将它们还原到更快的服务器上。然后,一旦完成,你可以设置一个SSIS包来同步两者之间的数据(如果这是你需要做的)。

0

是的。复制数据库的.MDF和.LDF,并将其重新附加到SQL服务器上。您可能需要(暂时)将其分离到源服务器上。

0

如果您使用SSMS和MS SQL,您可以:

  • 权的数据库上单击并转到任务>备份...
  • 将它保存到磁盘某处,给它像一个名字databasename.bak
  • 转移.bak文件到新机器
  • 在SSMS在新机器上,右键单击数据库间然后还原数据库...
  • 为数据库指定一个名称,单击从设备单选按钮,并浏览到您的databasename.bak文件(确保并选择您的文件后,选中该复选框)
  • 左侧导航,你可以点击选项找到更多的设置(通常是可选的)

希望这是有帮助的...

〜丹

相关问题