Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy
Sets a server long term retention policy.
Warning
The AzureRM PowerShell module has been officially deprecated as of February 29, 2024. Users are advised to migrate from AzureRM to the Az PowerShell module to ensure continued support and updates.
Although the AzureRM module may still function, it's no longer maintained or supported, placing any continued use at the user's discretion and risk. Please refer to our migration resources for guidance on transitioning to the Az module.
Syntax
Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy
-WeeklyRetention <String>
[-ServerName] <String>
[-DatabaseName] <String>
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy
-State <String>
-ResourceId <String>
[-ServerName] <String>
[-DatabaseName] <String>
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy
[-RemovePolicy]
[-ServerName] <String>
[-DatabaseName] <String>
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy
[-WeeklyRetention <String>]
-MonthlyRetention <String>
[-ServerName] <String>
[-DatabaseName] <String>
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy
[-WeeklyRetention <String>]
[-MonthlyRetention <String>]
-YearlyRetention <String>
-WeekOfYear <Int32>
[-ServerName] <String>
[-DatabaseName] <String>
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy cmdlet sets the long term retention policy registered to this database. The policy is an Azure Backup resource used to define backup storage policy.
Examples
Example 1: Set the weekly retention for the current version of long term retention policy
PS C:\> Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy -ResourceGroupName resourcegroup01 -ServerName server01 -DatabaseName database01 -WeeklyRetention P2W
ResourceGroupName : resourcegroup01
ServerName : server01
DatabaseName : database01
WeeklyRetention : P2W
MonthlyRetention : PT0S
YearlyRetention : PT0S
WeekOfYear : 0
State :
RecoveryServicesBackupPolicyResourceId :
Location :
This sets the long term retention policy of database01 to save every weekly full backup for 2 weeks
Example 2: Set the monthly retention for the current version of long term retention policy
PS C:\> Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy -ResourceGroupName resourcegroup01 -ServerName server01 -DatabaseName database01 -MonthlyRetention P5Y
ResourceGroupName : resourcegroup01
ServerName : server01
DatabaseName : database01
WeeklyRetention : PT0S
MonthlyRetention : P5Y
YearlyRetention : PT0S
WeekOfYear : 0
State :
RecoveryServicesBackupPolicyResourceId :
Location :
This sets the long term retention policy of database01 to save the first full backup of each month for 5 years
Example 3: Set the yearly retention for the current version of long term retention policy
PS C:\> Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy -ResourceGroupName resourcegroup01 -ServerName server01 -DatabaseName database01 -YearlyRetention P10Y -WeekOfYear 26
ResourceGroupName : resourcegroup01
ServerName : server01
DatabaseName : database01
WeeklyRetention : PT0S
MonthlyRetention : PT0S
YearlyRetention : P10Y
WeekOfYear : 26
State :
RecoveryServicesBackupPolicyResourceId :
Location :
This sets the long term retention policy of database01 to save the full backup taken on the 26th week of the year for 10 years
Example 4: Set each retention for the current version of long term retention policy
PS C:\> Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy -ResourceGroupName resourcegroup01 -ServerName server01 -DatabaseName database01 -WeeklyRetention 14 -MonthlyRetention P24W -YearlyRetention P10Y -WeekOfYear 26
ResourceGroupName : resourcegroup01
ServerName : server01
DatabaseName : database01
WeeklyRetention : P14D
MonthlyRetention : P24W
YearlyRetention : P10Y
WeekOfYear : 26
State :
RecoveryServicesBackupPolicyResourceId :
Location :
This sets the long term retention policy of database01 to save each full backup for 14 days, the first full backup of each month for 24 weeks, and the full backup taken on the 26th week of the year for 10 years
Example 4: Remove the long term retention policy
PS C:\> Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy -ResourceGroupName resourcegroup01 -ServerName server01 -DatabaseName database01 -RemovePolicy
ResourceGroupName : resourcegroup01
ServerName : server01
DatabaseName : database01
WeeklyRetention : PT0S
MonthlyRetention : PT0S
YearlyRetention : PT0S
WeekOfYear : 0
State :
RecoveryServicesBackupPolicyResourceId :
Location :
Removes the policy for database01 so it no longer saves any long term retention backups. This will not affect backups that have already been taken
Example 4: Remove the long term retention policy
PS C:\> Set-AzureRmSqlDatabaseBackupLongTermRetentionPolicy -ResourceGroupName resourcegroup01 -ServerName server01 -DatabaseName database01 -WeeklyRetention P0D
ResourceGroupName : resourcegroup01
ServerName : server01
DatabaseName : database01
WeeklyRetention : PT0S
MonthlyRetention : PT0S
YearlyRetention : PT0S
WeekOfYear : 0
State :
RecoveryServicesBackupPolicyResourceId :
Location :
This is another way of removing the policy for database01 so it no longer saves any long term retention backups. This will not affect backups that have already been taken
Parameters
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DatabaseName
The name of the Azure SQL Database to use.
Type: | String |
Position: | 2 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DefaultProfile
The credentials, account, tenant, and subscription used for communication with Azure.
Type: | IAzureContextContainer |
Aliases: | AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MonthlyRetention
The Monthly Retention. If just a number is passed instead of an ISO 8601 string, days will be assumed as the units. There is a minumum of 7 days and a maximum of 10 years.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-RemovePolicy
If provided, the policy for the database will be removed.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ResourceGroupName
The name of the resource group.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ResourceId
The Resource ID of the backup long term retention policy.
Type: | String |
Aliases: | Id |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ServerName
The name of the Azure SQL Server the database is in.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-State
The state of the long term retention backup policy, 'Enabled' or 'Disabled'
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WeeklyRetention
The Weekly Retention. If just a number is passed instead of an ISO 8601 string, days will be assumed as the units. There is a minumum of 7 days and a maximum of 10 years.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WeekOfYear
The Week of Year, 1 to 52, to save for the Yearly Retention.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-YearlyRetention
The Yearly Retention. If just a number is passed instead of an ISO 8601 string, days will be assumed as the units. There is a minumum of 7 days and a maximum of 10 years.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Inputs
Outputs
AzureSqlDatabaseBackupLongTermRetentionPolicyModel