3
使用這個我成功地備份我的數據庫:還原數據庫失敗服務器
Server myServer = new Server(@"PC-1\INSTANCE1");
private void button1_Click(object sender, EventArgs e)
{
try
{
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
Backup bkpDBFull = new Backup();
bkpDBFull.Action = BackupActionType.Database;
bkpDBFull.Database = "MyDatabase";
BackupDeviceItem bkpDevice = new BackupDeviceItem(saveFileDialog1.FileName, DeviceType.File);
bkpDBFull.Devices.Add(bkpDevice);
bkpDBFull.BackupSetName = "Sample";
bkpDBFull.BackupSetDescription = "Sample";
bkpDBFull.SqlBackup(myServer);
}
}
catch (SmoException ex)
{
throw new SmoException(ex.Message, ex.InnerException);
}
}
但我得到了一個錯誤我恢復Restore failed for Server 'PC-1\INSTANCE1'.
private void button2_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
Restore restoreDB = new Restore();
restoreDB.Database = "MyDatabase";
restoreDB.Action = RestoreActionType.Database;
BackupDeviceItem bkpDevice = new BackupDeviceItem(openFileDialog1.FileName, DeviceType.File);
restoreDB.Devices.Add(bkpDevice);
restoreDB.ReplaceDatabase = true;
restoreDB.SqlRestore(myServer);
}
}
我用的是同一臺服務器中進行備份和恢復。儘管備份使用相同的服務器和數據庫成功,但它爲什麼還原失敗?
它在SQL服務器錯誤日誌中說了什麼?這可能是因爲在嘗試還原時存在連接到數據庫的連接,所以無法獲得獨佔訪問權限,然後恢復失敗。 – steoleary
服務器'PC-1 \ INSTANCE1'的恢復失敗。 SSMS在操作過程中關閉。 –
恢復已存在的數據庫寬度數據庫名稱也可能導致此問題。 –