SQL 데이터베이스를 백업하고 복원하는 스크립트를 만들었습니다. 나는 최근 Azure SQL Server로 옮겼다. 내 백업 전략이 더 이상 작동하지 않습니다. 내 프로그램의 경우 일반적으로 백업을 저장하고 교육이라는 접미어로 새 백업을 만듭니다. 그것은 Azure SQL Server 백업 전략이 완전히 다른 것 같습니다. 프로그래밍 방식으로 Azure SQL db를 백업하고 복원하는 방법을 묻습니다.프로그래밍 방식으로 Azure Sql db
if (!sqlServer.Databases.Contains(databaseTraining))
{
var backupFile = string.Concat(sqlServer.Settings.BackupDirectory, "\\", database, "Training.BAK");
var sourceBackup = new Backup
{
Database = database,
Action = BackupActionType.Database
};
var destDevice = new BackupDeviceItem(backupFile, DeviceType.File);
sourceBackup.Devices.Add(destDevice);
sourceBackup.Initialize = true;
sourceBackup.SqlBackup(sqlServer);
var db = new Microsoft.SqlServer.Management.Smo.Database(sqlServer, databaseTraining);
db.Create();
var destinationRestore = new Restore
{
Database = databaseTraining,
Action = RestoreActionType.Database
};
destinationRestore.Devices.Add(destDevice);
var dataFile = new RelocateFile
{
LogicalFileName = destinationRestore.ReadFileList(sqlServer).Rows[0][0].ToString(),
PhysicalFileName = sqlServer.Databases[databaseTraining].FileGroups[0].Files[0].FileName
};
var logFile = new RelocateFile
{
LogicalFileName = destinationRestore.ReadFileList(sqlServer).Rows[1][0].ToString(),
PhysicalFileName = sqlServer.Databases[databaseTraining].LogFiles[0].FileName
};
destinationRestore.RelocateFiles.Add(dataFile);
destinationRestore.RelocateFiles.Add(logFile);
destinationRestore.ReplaceDatabase = true;
destinationRestore.NoRecovery = false;
destinationRestore.SqlRestore(sqlServer);
그것은 다른 : MS 당신은 백업을하지 않습니다. Azure SQL Server에서는 [BACKUP] (https://msdn.microsoft.com/en-us/library/ms186865.aspx?f=255&MSPPError=-2147217396) 명령을 사용할 수 없습니다. – Richard
SQL Azure의 경우 [CloudBerry] (http://www.cloudberrylab.com/), [RedGate 's CherrySafe] (https://www.cherrysafe.com/)와 같은 전문 백업 서비스를 살펴볼 수 있습니다. – Win