2014-09-28 142 views
1

我的应用程序应该备份SQL Server 2008 R2数据。当应用程序在服务器上时它工作正常。当我得到应用程序客户端PC和连接到服务器,服务器无法找到路径...SQL Server VDI备份

因此,我决定使用VDI的备份,找到这个页面http://www.codeproject.com/Articles/19449/Accessing-the-SQL-Server-Virtual-Device-Interface和经过一些改变后,它可以在本地PC上正常工作。但是当我尝试在服务器客户端上备份时。我无法在服务器上制作VirtualDevice。

它看起来像我需要设置VDI服务器地址在服务器上创建VirtualDevice。之后,我将能够使用流到服务器。

有没有人有解决方案?那C++代码对我来说很奇怪。

或者如果有另一种可能性如何在不使用sharedFolder的情况下在远程服务器上创建C#应用程序备份数据库?

感谢,的Jakub

+0

驱动器应共享,一旦共享使用UNC路径,它将解决问题。 – 2014-09-28 13:05:55

+0

但这确实是问题。客户不必共享文件夹。如果Thay有,他们已经映射了光盘等共享文件夹。所以服务器获取路径P:\ Backup。但光盘P是客户端PC的名称,不适用于服务器PC。任何其他想法? – 2014-09-28 13:12:55

+0

这就是为什么我说使用UNC路径,而不是使用'P:\ Backup.'使用UNC路径,它看起来像'\\ ClientPC \ SharedFolder_backup' – 2014-09-28 13:14:38

回答

0

无论在哪里你的驱动器或[虚拟/物理]要进行备份你的驱动器。只要共享,您就可以在那里进行备份。

假设你有一个ClientPC并且你共享了一个文件夹P:\Backup。现在采取的备份,当您将使用UNC路径是这样的....

BACKUP DATABASE [Test_DB] 
    TO DISK = N'\\ClientPC\Backup\BackupFile.bak' 
0

这个问题是关于VDI(虚拟设备接口),这是流备份到自己的软件的方式 - 即它赢得了”不要使用网络共享,也不要使用本地文件 - 它将流式传输到他的代码。

我知道你需要在系统管理员角色中运行VDI,但是我不确定更多关于确切需求的信息 - 我很好奇如果可以通过VDI完成某些操作并在本文中研究它。

祝你好运..