In this article we will see how to take Microsoft SQL Server database backup to Azure storage. At high level, we have to do the following to achieve this:
- Create storage account in Microsoft Azure
- Create container in Azure storage account
- Create SQL Server credential using information from Microsoft Azure storage account
- Taking backup using Microsoft SQL Server Management Studio
- Taking backup using SQL code
1. Create storage account in Microsoft Azure
Login to Azure Portal. Create a storage account. To add a storage account, click on the Storage accounts on left and then click on +Add option on top.
2. Create container in Azure storage account
Once storage account is created, we need to create a Container which will keep the database backup files. To add a container, click on Storage accounts, all the storage accounts in your Azure account will be shown. Click on the newly created storage account to open its properties. Click on Containers then on +Container, give the name and click OK as shown in the image below:
3. Create SQL Server credential using information from Microsoft Azure storage account
Use the following SQL code to create credential to use while taking backup.
use master; CREATE CREDENTIAL AzureBlobStorageCredential WITH IDENTITY = 'storageaccountname' , SECRET = 'storage account access key';
AzureBlobStorageCredential: Name of this credential, you can name it any.
IDENTITY: It is the Azure storage account’s name as shown in the image below.
SECRET: It is the storage account’s access key as shown in the image below.
4. Taking backup using Microsoft SQL Server Management Studio
5. Taking backup using SQL code
Use the following SQL code to take database back up to Azure Storage
Declare @BackupUrl AS NVARCHAR(max) = N'https://stoarageaccountname.blob.core.windows.net/containername/backupfilename.bak'; BACKUP DATABASE YourDatabaseName TO URL = @BackupUrl WITH CREDENTIAL = 'SqlServerCredentialName';
Storing backups in Microsoft Azure storage is very beneficial in a sense it can keep redundant copies of the backup file locally or geographically depending upon the Storage Account configuration and its quite easy to achieve this.