我需要将数据库从远程服务器复制到本地服务器。我尝试使用SQL Server Management Studio,但它只备份到远程服务器上的驱动器。

一些要点:

我不能以复制文件的方式访问远程服务器; 我没有权限设置一个UNC路径到我的服务器;

知道如何复制这个数据库吗?我是否需要使用第三方工具?


当前回答

看看这个博客如何复制远程数据库:

从共享主机环境备份SQL Server 2008数据库

其他回答

从远程sql server获取bak文件到本地pc有99%的解决方案。我在我的帖子http://www.ok.unsode.com/post/2015/06/27/remote-sql-backup-to-local-pc中描述了它

通常是这样的:

执行SQL脚本生成bak文件 执行SQL脚本将每个bak文件插入到字段类型为varbinary的临时表中,并选择这一行下载数据 重复上一页。你有多少bak文件就有多少步 执行SQL脚本删除所有临时资源

就是这样,你在本地电脑上有你的bak文件。

看看这个博客如何复制远程数据库:

从共享主机环境备份SQL Server 2008数据库

首先,使用Everyone向机器上的本地路径授予完全控制权限(如下所示)。(或者专门授予SQL Server代理帐户权限)。

其次,执行以下步骤:

BACKUP DATABASE [dev] TO  DISK = N'\\myMachine\c\dev.bak' WITH COPY_ONLY, INIT;

正如Martin Smith所说,如果您无法访问计算机或文件系统,那么您将需要使用第三方工具,如Red Gate或Adept来对源系统和目标系统进行比较。Red Gate的工具将允许您复制对象、模式和数据。

部分第三方备份程序允许设置文件传输的网络权限。当SQL Server服务在受限帐户下运行且没有足够的网络权限时,它非常有用。尝试使用EMS SQL Backup解决此任务。