/// <summary> /// Start the managed database log replay /// </summary> /// <param name="parameters">The parameters for log replay</param> public void StartManagedDatabaseLogReplay(AzureSqlManagedDatabaseModel parameters) { var model = new Management.Sql.Models.ManagedDatabase() { Location = parameters.Location, Collation = parameters.Collation, AutoCompleteRestore = parameters.AutoCompleteRestore, LastBackupName = parameters.LastBackupName, CreateMode = CreateMode.RestoreExternalBackup, StorageContainerUri = parameters.StorageContainerUri, StorageContainerSasToken = parameters.StorageContainerSasToken }; Communicator.StartLogReplay(parameters.ResourceGroupName, parameters.ManagedInstanceName, parameters.Name, model); }
/// <summary> /// Restore a given Sql Azure Managed Database /// </summary> /// <param name="model">An object modeling the database to create via restore</param> /// <returns>Restored database object</returns> internal AzureSqlManagedDatabaseModel RestoreManagedDatabase(AzureSqlManagedDatabaseModel model) { var dbModel = new Management.Sql.Models.ManagedDatabase() { Location = model.Location, CreateMode = model.CreateMode, RestorePointInTime = model.RestorePointInTime, RecoverableDatabaseId = model.RecoverableDatabaseId, RestorableDroppedDatabaseId = model.RestorableDroppedDatabaseId, SourceDatabaseId = model.SourceDatabaseId, }; Management.Sql.Models.ManagedDatabase database = Communicator.RestoreDatabase(model.ResourceGroupName, model.ManagedInstanceName, model.Name, dbModel); return(new AzureSqlManagedDatabaseModel(model.ResourceGroupName, model.ManagedInstanceName, database)); }
/// <summary> /// Construct AzureSqlManagedDatabaseModel object /// </summary> /// <param name="resourceGroup">Resource group</param> /// <param name="managedInstanceName">Managed Instance name</param> /// <param name="database">Managed Database object</param> public AzureSqlManagedDatabaseModel(string resourceGroup, string managedInstanceName, Management.Sql.Models.ManagedDatabase database) { ResourceGroupName = resourceGroup; ManagedInstanceName = managedInstanceName; Location = database.Location; Id = database.Id; Name = database.Name; Tags = TagsConversionHelper.CreateTagDictionary(TagsConversionHelper.CreateTagHashtable(database.Tags), false); Collation = database.Collation; Status = database.Status; CreationDate = database.CreationDate.Value; EarliestRestorePoint = database.EarliestRestorePoint; RestorePointInTime = database.RestorePointInTime; DefaultSecondaryLocation = database.DefaultSecondaryLocation; CatalogCollation = database.CatalogCollation; CreateMode = database.CreateMode; StorageContainerUri = database.StorageContainerUri; StorageContainerSasToken = database.StorageContainerSasToken; SourceDatabaseId = database.SourceDatabaseId; FailoverGroupId = database.FailoverGroupId; RecoverableDatabaseId = database.RecoverableDatabaseId; RestorableDroppedDatabaseId = database.RestorableDroppedDatabaseId; }
/// <summary> /// Converts the response from the service to a powershell managed database object /// </summary> /// <param name="resourceGroup">The resource group the managed instance is in</param> /// <param name="managedInstanceName">The name of the Azure Sql Database Managed Instance</param> /// <param name="database">The service response</param> /// <returns>The converted model</returns> public static AzureSqlManagedDatabaseModel CreateManagedDatabaseModelFromResponse(string resourceGroup, string managedInstanceName, Management.Sql.Models.ManagedDatabase managedDatabase) { return(new AzureSqlManagedDatabaseModel(resourceGroup, managedInstanceName, managedDatabase)); }
/// <summary> /// Restore a given Sql Azure Managed Database /// </summary> /// <param name="resourceId">The resource ID of the DB to restore (live, geo backup, deleted database, long term retention backup, etc.)</param> /// <param name="model">An object modeling the database to create via restore</param> /// <returns>Restored database object</returns> internal AzureSqlManagedDatabaseModel RestoreManagedDatabase(string resourceId, AzureSqlManagedDatabaseModel model) { Management.Sql.Models.ManagedDatabase database = Communicator.RestoreDatabase(model.ResourceGroupName, model.ManagedInstanceName, model.Name, resourceId, model); return(new AzureSqlManagedDatabaseModel(model.ResourceGroupName, model.ManagedInstanceName, database)); }
/// <summary> /// Creates or updates a managed database /// </summary> public Management.Sql.Models.ManagedDatabase CreateOrUpdate(string resourceGroupName, string managedInstanceName, string databaseName, Management.Sql.Models.ManagedDatabase parameters) { return(GetCurrentSqlClient().ManagedDatabases.CreateOrUpdate(resourceGroupName, managedInstanceName, databaseName, parameters)); }
/// <summary> /// Starts log replay restore execution. /// </summary> /// <param name="resourceGroupName">The name of the resource group</param> /// <param name="managedInstanceName">The name of the Azure SQL Managed Instance</param> /// <param name="databaseName">The name of the Azure SQL Managed database</param> /// <param name="model">Model describing the managed database log replay request</param> public Management.Sql.Models.ManagedDatabase StartLogReplay(string resourceGroupName, string managedInstanceName, string databaseName, Management.Sql.Models.ManagedDatabase model) { return(GetCurrentSqlClient().ManagedDatabases.CreateOrUpdate( resourceGroupName, managedInstanceName, databaseName, model)); }