25

我有两台机器,A 和 B。在我的机器 A 中,我有带有一些数据库的 SQL 服务器。我需要将数据库从机器 A 复制到 B 而不进行任何备份。我怎么做?

4

3 回答 3

15

您可以使用 SQL Server Management Studio 中的复制数据库功能。

右键单击数据库,选择“任务”、“复制数据库”。如果可以使数据库脱机,也可以选择分离它,将文件复制到新服务器,然后重新附加数据库。

另请参阅 Microsoft 文档:http ://technet.microsoft.com/en-us/library/ms188664.aspx

于 2012-09-13T08:38:56.223 回答
6

这是仅当您可以直接访问两台机器时才能使用的另一种方法。

在源机器中:
1. 打开 Sql Server Management Studio(SSMS)
2. 右键单击​​要复制的数据库
3. 转到属性
4. 在左侧菜单中选择文件
5. 滚动到右侧大多数列,您将找到文件名和路径数据库文件(注意此路径和列表中所有条目的文件名)
6. 关闭属性窗口
7. 再次右键单击数据库
8. 单击分离
9. 转到您在步骤 5 中记下的路径
10. 复制所有您在步骤 5
中记下的文件 11. 将其粘贴到 Target macine 的文件夹中
12. 再次转到 SSMS 并右键单击 Database 文件夹
13. 单击附加
14. 单击添加并提供您在步骤 5 中记下的 .mdf 文件的路径

在目标机器
上 1. 转到 SSMS 并右键单击数据库文件夹
2. 单击附加
3. 单击添加并提供路径您从源计算机复制到目标计算机的 .mdf 文件。

编辑
您可以创建一个链接服务器(参考: http: //msdn.microsoft.com/en-us/library/aa213778%28SQL.80%29.aspx)并使用跨服务器查询将数据插入目标数据库,例如

Select * Into Servername.DatabaseName.SchemaName.TableName From SourceSchemaName.Tablename

您不需要对每个对象都执行此操作,您可以使用游标对数据库中存在的所有对象执行此操作。

于 2012-09-13T13:52:01.537 回答
3

刚刚使用http://dbcopytool.codeplex.com/的免费工具将实时数据库从SQL 2005复制到SQL 2012。在第二个标签页中输入所有信息后,可以配置第一个标签页并且一切正常没有问题。

于 2013-01-24T11:53:15.333 回答