我已获得使用 SQL Server 身份验证访问远程 SQL Server 2005(部分)的权限,以便能够对数据库进行更改,而无需涉及未参与该项目的其他人。数据库已在我的本地计算机上创建。有没有办法从本地计算机上的备份文件恢复远程数据库?我目前无权访问远程服务器上的文件系统。
编辑:澄清一下,我拥有的访问权限是我可以通过 SQL Server Management Studio 登录到服务器。我有一个到本地数据库服务器的连接和一个到远程服务器的连接。我基本上想做的是将数据库从一个连接复制到另一个连接。
答案1
据我所知没有。您可能想看看 Redgate SQL Compare/SQL Data Compare 工具,看看它们是否能满足您的需要。它们提供 14 天免费试用。
答案2
如果服务器可以访问你的 IP 地址,请尝试以下操作:
RESTORE DATABASE Data FROM DISK = '\\your.ip.address.number\share\backup.bak'
只要您能正确设置 IP 链接和安全性,它就应该可以工作。检查TSQL 参考:
如果使用具有 UNC 名称或重定向驱动器号的网络服务器,请指定磁盘的设备类型。运行 SQL Server 的帐户必须具有对远程计算机或网络服务器的读取访问权限才能执行 RESTORE 操作。
答案3
如果没有 *.mdf 和 *.ldf,您就无法恢复它。但是,您可以尝试手动复制数据(取决于您的数据库有多大),或者尝试将其导出到您可以通过网络访问的位置。
如果其中任何一个都失败了,恐怕您就需要请求访问服务器 :-(
答案4
尝试创建一个 SSIS 包来复制所有内容,假设您无权创建或访问数据库的备份文件。根据您本地的 SQL 版本,您可以右键单击数据库,选择任务,然后导出数据以通过 SQL Server 导入和导出向导复制所有内容。