Skip to content

Commit 4c30d19

Browse files
authored
Merge pull request #23210 from danimir/main
Updates to LRS feature
2 parents 2520872 + bb978ab commit 4c30d19

2 files changed

Lines changed: 11 additions & 10 deletions

File tree

azure-sql/managed-instance/log-replay-service-migrate.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.topic: how-to
99
author: danimir
1010
ms.author: danil
1111
ms.reviewer: mathoma
12-
ms.date: 07/13/2022
12+
ms.date: 07/14/2022
1313
---
1414

1515
# Migrate databases from SQL Server to SQL Managed Instance by using Log Replay Service (Preview)
@@ -120,7 +120,6 @@ Ensure the following requirements are met:
120120
- Use the full recovery model on SQL Server (mandatory).
121121
- Use `CHECKSUM` for backups on SQL Server (mandatory).
122122
- Place backup files for an individual database inside a separate folder in a flat-file structure (mandatory). Nested folders inside database folders aren't supported.
123-
- Plan to complete the migration within 36 hours after you start LRS (mandatory). This time window is a grace period during which system-managed software patches are postponed.
124123

125124
## Best practices
126125

@@ -129,12 +128,17 @@ We recommend the following best practices:
129128
- Split full and differential backups into multiple files, instead of using a single file.
130129
- Enable backup compression to help the network transfer speeds.
131130
- Use Cloud Shell to run PowerShell or CLI scripts, because it will always be updated to the latest cmdlets released.
131+
- Configure [maintenance window](../database/maintenance-window.md) to allow scheduling of system updates at a specific day/time. This configuration will help achieve a more predictable time of database migrations.
132132

133133
> [!IMPORTANT]
134134
> - You can't use databases being restored through LRS until the migration process completes.
135135
> - LRS doesn't support read-only access to databases during the migration.
136136
> - After the migration completes, the migration process is finalized and can't be resumed with additional differential backups.
137137
138+
> [!TIP]
139+
> System updates on managed instance will take precedence over database migrations in progress. All pending LRS migrations in case of a system update on Managed Instance will be suspended and resumed once the update has been applied. This system behavior might prolong migration time, especially in cases of very large databases. To achieve a predictable time of database migrations, consider configuring [maintenance window](../database/maintenance-window.md) allowing scheduling of system updates at a specific day/time, and consider running and completing migration jobs outside of the scheduled maintenance window day/time.
140+
>
141+
138142
## Steps to migrate
139143

140144
To migrate using LRS, follow the steps in this section.
@@ -349,9 +353,6 @@ When you use continuous mode, the service continuously scans Azure Blob Storage
349353
> When migrating multiple databases, LRS must be started separately for each database pointing to the full URI path of Azure Blob storage container and the individual database folder.
350354
>
351355
352-
> [!IMPORTANT]
353-
> After you start LRS, any system-managed software patches are halted for 36 hours. After this window, the next automated software patch will automatically stop LRS. If that happens, you can't resume migration and need to restart it from the beginning.
354-
355356
### Start LRS in autocomplete mode
356357

357358
Ensure that the entire backup chain has been uploaded to Azure Blob Storage. This option doesn't allow new backup files to be added once the migration is in progress.
@@ -488,7 +489,7 @@ az sql midb log-replay complete -g mygroup --mi myinstance -n mymanageddb --last
488489
Consider the following limitations of LRS:
489490

490491
- During the migration process, databases being migrated can't be used for read-only access on SQL Managed Instance.
491-
- System-managed software patches are blocked for 36 hours once the LRS has been started. After this time window expires, the next software maintenance update stops LRS. You'll need to restart the LRS migration from the beginning.
492+
- Configure [maintenance window](../database/maintenance-window.md) to allow scheduling of system updates at a specific day/time. Plan to run and complete migrations outside of the scheduled maintenance window.
492493
- LRS requires databases on SQL Server to be backed up with the `CHECKSUM` option enabled.
493494
- The SAS token that LRS uses must be generated for the entire Azure Blob Storage container, and it must have **Read** and **List** permissions only. For example, if you grant **Read**, **List** and **Write** permissions, LRS won't be able to start because of the extra **Write** permission.
494495
- Using SAS tokens created with permissions set through defining a [stored access policy](/rest/api/storageservices/define-stored-access-policy) isn't supported. Follow the instructions in this article to manually specify **Read** and **List** permissions for the SAS token.
@@ -498,8 +499,8 @@ Consider the following limitations of LRS:
498499
- LRS must be started separately for each database pointing to the full URI path containing an individual database folder.
499500
- LRS can support up to 100 simultaneous restore processes per single managed instance.
500501

501-
> [!NOTE]
502-
> If you require database to be R/O accessible during the migration, a faster minimum downtime migration, and if you require migration window larger than 36 hours, please consider the [link feature for Managed Instance](managed-instance-link-feature-overview.md) as a recommended migration solution in these cases.
502+
> [!TIP]
503+
> If you require database to be R/O accessible during the migration, a much longer timeframe to perform the migration, and the best possible minimum downtime, consider the [link feature for Managed Instance](managed-instance-link-feature-overview.md) as a recommended migration solution in these cases.
503504
>
504505
505506
## Troubleshooting

azure-sql/managed-instance/managed-instance-link-feature-overview.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ ms.topic: conceptual
1111
author: danimir
1212
ms.author: danil
1313
ms.reviewer: mathoma, danil
14-
ms.date: 07/12/2022
14+
ms.date: 07/14/2022
1515
---
1616
# Link feature for Azure SQL Managed Instance (preview)
1717
[!INCLUDE[appliesto-sqlmi](../includes/appliesto-sqlmi.md)]
@@ -136,7 +136,7 @@ Managed Instance link has a set of general limitations, and those are listed in
136136
- In case distributed transactions are used with database replicated from the SQL Server, and in case of migration scenario, on the cutover to the cloud, the DTC capabilities won't be transferred. There will be no possibility for migrated database to get involved in distributed transactions with SQL Server, as SQL Managed Instance doesn't support distributed transactions with SQL Server at this time. For reference, SQL Managed Instance today supports distributed transactions only between other SQL Managed Instances, see [this article](../database/elastic-transactions-overview.md#transactions-for-sql-managed-instance).
137137
- Managed Instance link can replicate database of any size if it fits into chosen storage size of target SQL Managed Instance.
138138
- Client Windows OS 10 and 11 cannot be used to host your SQL Server, as it will not be possible to enable Always On required for the link. SQL Server must be hosted on Windows Server 2012 or higher.
139-
- SQL Server 2008, 2012 and 2014 cannot be supported for the link feature, as SQL engines of these releases do not have built-in support for Always On, required for the link. Upgrade to a newer version of SQL Server is required to be able to use the link.
139+
- SQL Server 2008, 2012 and 2014 cannot be supported for the link feature, as SQL engines of these releases do not have built-in support for Distributed Availability Groups, required for the link. Upgrade to a newer version of SQL Server is required to be able to use the link.
140140

141141
### Preview limitations
142142

0 commit comments

Comments
 (0)