You can make backups of SQL Server by using either of the following options:
-- Example of how to make a full database backup to a URL
BACKUP DATABASE [SampleDB]
TO URL = 'https://<mystorageaccountname>.blob.core.windows.net/<containername>/<databasefolder>/SampleDB_full.bak'
WITH INIT, COMPRESSION, CHECKSUM
GO
-- Example of how to make a transactional log backup to a URL
BACKUP LOG [SampleDB]
TO URL = 'https://<mystorageaccountname>.blob.core.windows.net/<containername>/<databasefolder>/SampleDB_log.trn'
WITH COMPRESSION, CHECKSUM
Here our database is AdventureWorks2016
Azure Blob Storage is used as intermediary storage for backup files between SQL Server and SQL Managed Instance. You need to generate an SAS authentication token, with only list and read permissions, for LRS. The token will enable LRS to access Blob Storage and use the backup files to restore them on SQL Managed Instance.
Follow these steps to generate the token:
1. Open Storage Explorer from the Azure portal.
2. Expand Blob Containers.
3. Right-click the blob container and select Get Shared Access Signature.
4. Select the timeframe for token expiration. Ensure that the token is valid for the duration of your migration.
5. Select the time zone for the token: UTC or your local time.
Important:
The time zone of the token and your managed instance might mismatch. Ensure that the SAS token has the appropriate time validity, taking time zones into consideration. If possible, set the time zone to an earlier and later time of your planned migration window.
6. Select the time zone for the token: UTC or your local time.
7. Select Read and List permissions only.
Important:
Don’t select any other permissions. If you do, LRS won’t start. This security requirement is by design.
8. Select Create.
Before you use the SAS token to start LRS, you need to understand its structure. The URI of the generated SAS token consists of two parts separated with a question mark (?
), as shown in this example:
In our example it will be
StorageContainerUri: https://storageaccountsqlmitest.blob.core.windows.net/sqlmibackup/AdventureWorks2016
StorageContainerSasToken: sv=2020-08-04&st=2021-12-17T17%3A01%3A53Z&se=2022-05-30T17%3A01%3A00Z&sr=c&sp=rl&sig=oo1mHExX5StH85yM6ngYP1onMcu5fpLSoH7PNy5C0Zk%3D
Copy the parameters as follows:
Note: Don’t include the question mark when you copy either part of the token.
Use the following PowerShell cmdlet to log in to Azure:
Login-AzAccount
Select the appropriate subscription where your managed instance resides by using the following PowerShell cmdlet:
Select-AzSubscription -SubscriptionId <subscription ID>
Disclaimer:
The views expressed and the content shared in all published articles on this website are solely those of the respective authors, and they do not necessarily reflect the views of the author’s employer or the techbeatly platform. We strive to ensure the accuracy and validity of the content published on our website. However, we cannot guarantee the absolute correctness or completeness of the information provided. It is the responsibility of the readers and users of this website to verify the accuracy and appropriateness of any information or opinions expressed within the articles. If you come across any content that you believe to be incorrect or invalid, please contact us immediately so that we can address the issue promptly.
Jagath Jayaprakash
Senior Database Consultant
This site uses Akismet to reduce spam. Learn how your comment data is processed.3 Responses
Leave a Reply Cancel reply
[…] Part 2: Preparing for migration […]
[…] Part 2: Preparing for migration […]
[…] Part 2: Preparing for migration […]