2017-04-12 85 views
0

我試圖恢復遠程SQL服務器上的一個.bak文件,但我發現試圖恢復遠程數據庫

Cannot open backup device .bak Operating system error 21(The device is not ready.). RESTORE DATABASE is terminating abnormally. 

這就是我想

var restore = new Restore(); 
      restore.Database = databaseName; 
      restore.Action = RestoreActionType.Database; 
      restore.Devices.AddDevice(backUpFilePath, DeviceType.File); 
      restore.ReplaceDatabase = true; 
      restore.NoRecovery = false; 

      var sqlConnection = new SqlConnection(ConnectionString); 
      var serverConnection = new ServerConnection(sqlConnection); 

      var sqlServer = new Server(serverConnection); 
      restore.SqlRestore(sqlServer); 
+1

標記您正在使用的dbms。 (爲了得到更好的關注,這是一個特定於產品的問題,甚至與SQL語言無關。) – jarlh

+0

錯誤消息似乎是說它認爲「.bak」是備份設備。這就是我首先要看的。 ('restore.Devices.AddDevice(...)') –

回答

-1

我相信錯誤消息非常含糊,因爲它可能意味着許多不同的事情。

您是否能夠在SQL Server的應用程序之外還原該.bak? SQL錯誤日誌是否提供了更多具體信息?

+0

這並不回答這個問題。使用問題中的「添加評論」鏈接發表評論或要求澄清。 –

+0

你必須有50個聲望才能做到這一點......這似乎是一種不合邏輯的工作方式。 – Leonidas199x

+0

這是[FAQ](http://stackoverflow.com/help/whats-reputation)。 –