我試圖製作一個小應用程序,它可以幫助我製作服務器備份。該應用程序將在我的家用電腦上運行,因此主要目標是能夠連接到外部服務器,備份所選數據庫,將備份內容轉儲爲字符串或其他內容,以便我可以將其寫入PC磁盤而不是服務器的磁盤。使用Smo.Backup將SQL Server數據庫備份到字符串
我做了可以在服務器磁盤上寫入的內容,但我希望能夠在我的PC磁盤上寫入備份的結果。
private bool BackupDatabase()
{
try
{
// Filename
string sFileName = string.Format("{0}\\{1}.bak", _sWhereToBackup, DatabaseName);
// Connection
string sConnectionString = String.Format(
"Data Source=tcp:{0};Initial Catalog={1};User ID={2};Pwd={3};",
DatabaseHost, DatabaseName, DatabaseUsername, DatabasePassword);
SqlConnection oSqlConnection = new SqlConnection(sConnectionString);
Server oServer = new Server(new ServerConnection(oSqlConnection));
// Backup
Backup backup = new Backup();
backup.Action = BackupActionType.Database;
backup.Database = DatabaseName;
backup.Incremental = false;
backup.Initialize = true;
backup.LogTruncation = BackupTruncateLogType.Truncate;
// Backup Device
BackupDeviceItem backupItemDevice = new BackupDeviceItem(sFileName, DeviceType.File);
backup.Devices.Add(backupItemDevice);
// Start Backup
backup.SqlBackup(oServer);
}
catch (Exception ex)
{
throw ex;
}
return false;
}
非常感謝!
如何從家中連接到該數據庫。 VPN?如果是的話,簡單的C#代碼複製文件從服務器到您的電腦 –