You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/dms/dms-overview.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ ms.reviewer: craigg
9
9
ms.service: dms
10
10
ms.workload: data-services
11
11
ms.topic: overview
12
-
ms.date: 09/28/2021
12
+
ms.date: 01/05/2023
13
13
---
14
14
# What is Azure Database Migration Service?
15
15
@@ -32,6 +32,8 @@ For up-to-date info about the regional availability of Azure Database Migration
32
32
33
33
For up-to-date info about Azure Database Migration Service pricing, see [Azure Database Migration Service pricing](https://azure.microsoft.com/pricing/details/database-migration/).
34
34
35
+
36
+
35
37
## Next steps
36
38
37
39
*[Status of migration scenarios supported by Azure Database Migration Service](./resource-scenario-status.md)
Azure SQL Database offline migration utilizes Azure Data Factory (ADF) pipelines for data movement and thus abides by ADF limitations. A corresponding ADF is created when a database migration service is also created. Thus factory limits apply per service.
10
+
11
+
- The machine where the SHIR is installed acts as the compute for migration. Make sure this machine can handle the cpu and memory load of the data copy. To learn more, review [SHIR recommendations](/azure/data-factory/create-self-hosted-integration-runtime).
12
+
- 100,000 table per database limit.
13
+
- 10,000 concurrent database migrations per service.
14
+
- Migration speed heavily depends on the target Azure SQL Database SKU and the self-hosted Integration Runtime host.
15
+
- Azure SQL Database migration scales poorly with table numbers due to ADF overhead in starting activities. If a database has thousands of tables, there will be a couple of seconds of startup time for each, even if they're composed of one row with 1 bit of data.
16
+
- Azure SQL Database table names with double byte characters currently aren't supported for migration. Mitigation is to rename tables before migration; they can be changed back to their original names after successful migration.
17
+
- Tables with large blob columns may fail to migrate due to timeout.
18
+
- Database names with SQL Server reserved are currently not supported.
19
+
- Database names that include semicolons are currently not supported.
- If migrating a single database, the database backups must be placed in a flat-file structure inside a database folder (including container root folder), and the folders can't be nested, as it's not supported.
10
+
- If migrating multiple databases using the same Azure Blob Storage container, you must place backup files for different databases in separate folders inside the container.
11
+
- Overwriting existing databases using DMS in your target Azure SQL Managed Instance isn't supported.
12
+
- Configuring high availability and disaster recovery on your target to match source topology isn't supported by DMS.
13
+
- The following server objects aren't supported:
14
+
- Logins
15
+
- SQL Server Agent jobs
16
+
- Credentials
17
+
- SSIS packages
18
+
- Server roles
19
+
- Server audit
20
+
- You can't use an existing self-hosted integration runtime created from Azure Data Factory for database migrations with DMS. Initially, the self-hosted integration runtime should be created using the Azure SQL migration extension in Azure Data Studio and can be reused for further database migrations.
- If migrating a single database, the database backups must be placed in a flat-file structure inside a database folder (including container root folder), and the folders can't be nested, as it's not supported.
10
+
- If migrating multiple databases using the same Azure Blob Storage container, you must place backup files for different databases in separate folders inside the container.
11
+
- Overwriting existing databases using DMS in your target SQL Server on Azure Virtual Machine isn't supported.
12
+
- Configuring high availability and disaster recovery on your target to match source topology isn't supported by DMS.
13
+
- The following server objects aren't supported:
14
+
- Logins
15
+
- SQL Server Agent jobs
16
+
- Credentials
17
+
- SSIS packages
18
+
- Server roles
19
+
- Server audit
20
+
21
+
- You can't use an existing self-hosted integration runtime created from Azure Data Factory for database migrations with DMS. Initially, the self-hosted integration runtime should be created using the Azure SQL migration extension in Azure Data Studio and can be reused for further database migrations.
22
+
- VM with SQL Server 2008 and below as target versions aren't supported when migrating to SQL Server on Azure Virtual Machines.
23
+
- If you're using VM with SQL Server 2012 or SQL Server 2014, you need to store your source database backup files on an Azure Storage Blob Container instead of using the network share option. Store the backup files as page blobs since block blobs are only supported in SQL 2016 and after.
24
+
- You must make sure the SQL IaaS Agent Extension in the target Azure Virtual Machine is in Full mode instead of Lightweight mode.
25
+
- SQL IaaS Agent Extension only supports management of Default Server Server Instance or Single Named Instance,
26
+
- There is a temporary limit of 80 databases per target Azure Virtual Machine. A workaround to break the limit (reset the counter) is to Uninstall and Reinstall SQL IaaS Agent Extension in the target Azure Virtual Machine.
27
+
- Apart from configuring the Networking/Firewall of your Storage Account to allow your VM to access backup files, you also need to configure Networking/Firewall of your VM to allow outbound connection to your storage account.
Copy file name to clipboardExpand all lines: articles/dms/known-issues-azure-sql-migration-azure-data-studio.md
+42-67Lines changed: 42 additions & 67 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,25 +11,27 @@ ms.service: dms
11
11
ms.workload: data-services
12
12
ms.custom: "seo-lt-2019"
13
13
ms.topic: troubleshooting
14
-
ms.date: 10/19/2022
14
+
ms.date: 01/05/2023
15
15
---
16
16
17
17
# Known issues, limitations, and troubleshooting
18
18
19
-
Known issues and limitations associated with the Azure SQL Migration extension for Azure Data Studio.
19
+
Known issues and troubleshooting steps associated with the Azure SQL Migration extension for Azure Data Studio.
20
20
21
21
> [!NOTE]
22
22
> When checking migration details using the Azure Portal, Azure Data Studio or PowerShell / Azure CLI you might see the following error: *Operation Id {your operation id} was not found*. This can either be because you provided an operationId as part of an api parameter in your get call that does not exist, or the migration details of your migration were deleted as part of a cleanup operation.
23
23
24
24
25
-
### Error code: 2007 - CutoverFailedOrCancelled
25
+
## Error code: 2007 - CutoverFailedOrCancelled
26
+
26
27
-**Message**: `Cutover failed or cancelled for database <DatabaseName>. Error details: The restore plan is broken because firstLsn <First LSN> of log backup <URL of backup in Azure Storage container>' is not <= lastLsn <last LSN> of Full backup <URL of backup in Azure Storage container>'. Restore to point in time.`
27
28
28
29
-**Cause**: The error might occur due to the backups being placed incorrectly in the Azure Storage container. If the backups are placed in the network file share, this error could also occur due to network connectivity issues.
29
30
30
31
-**Recommendation**: Ensure the database backups in your Azure Storage container are correct. If you're using network file share, there might be network-related issues and lags that are causing this error. Wait for the process to be completed.
31
32
32
-
### Error code: 2009 - MigrationRestoreFailed
33
+
## Error code: 2009 - MigrationRestoreFailed
34
+
33
35
-**Message**: `Migration for Database 'DatabaseName' failed with error cannot find server certificate with thumbprint.`
34
36
35
37
-**Cause**: The source SQL Server instance certificate from a database protected by Transparent Data Encryption (TDE) hasn't been migrated to the target Azure SQL Managed Instance or SQL Server on Azure Virtual Machine before migrating data.
@@ -88,7 +90,8 @@ Known issues and limitations associated with the Azure SQL Migration extension f
88
90
> [!NOTE]
89
91
> For more information on general troubleshooting steps for Azure SQL Managed Instance errors, see [Known issues with Azure SQL Managed Instance](/azure/azure-sql/managed-instance/doc-changes-updates-known-issues)
90
92
91
-
### Error code: 2012 - TestConnectionFailed
93
+
## Error code: 2012 - TestConnectionFailed
94
+
92
95
-**Message**: `Failed to test connections using provided Integration Runtime. Error details: 'Remote name could not be resolved.'`
93
96
94
97
-**Cause**: The Self-Hosted Integration Runtime can't connect to the service back end. This issue is caused by network settings in the firewall.
@@ -114,55 +117,62 @@ Known issues and limitations associated with the Azure SQL Migration extension f
114
117
-**Recommendation**: See [Troubleshoot Self-Hosted Integration Runtime](../data-factory/self-hosted-integration-runtime-troubleshoot-guide.md) for general troubleshooting steps for Integration Runtime connectivity errors.
-**Message**: `Integration Runtime <IR Name> in resource group <Resource Group Name> Subscription <SubscriptionID> isn't online.`
119
123
120
124
-**Cause**: The Self-Hosted Integration Runtime isn't online.
121
125
122
126
-**Recommendation**: Make sure the Self-hosted Integration Runtime is registered and online. To perform the registration, you can use scripts from [Automating self-hosted integration runtime installation using local PowerShell scripts](../data-factory/self-hosted-integration-runtime-automation-scripts.md). Also, see [Troubleshoot self-hosted integration runtime](../data-factory/self-hosted-integration-runtime-troubleshoot-guide.md) for general troubleshooting steps for Integration Runtime connectivity errors.
-**Message**: `Migration cannot be canceled as Migration was completed during the cancel process. Target server: <Target server> Target database: <Target database>.`
143
150
144
151
-**Cause**: A cancellation request was received, but the migration was completed successfully before the cancellation was completed.
145
152
146
153
-**Recommendation**: No action required migration succeeded.
147
154
148
155
149
-
### Error code: 2039 - MigrationRetryNotAllowed
156
+
## Error code: 2039 - MigrationRetryNotAllowed
157
+
150
158
-**Message**: `Migration isn't in a retriable state. Migration must be in state WaitForRetry. Current state: <State>, Target server: <Target Server>, Target database: <Target database>.`
151
159
152
160
-**Cause**: A retry request was received when the migration wasn't in a state allowing retrying.
153
161
154
162
-**Recommendation**: No action required migration is ongoing or completed.
-**Message**: `Data copy finished successfully before canceling completed. Target schema is in bad state. Target server: <Target Server>, Target database: <Target Database>.`
167
177
168
178
-**Cause**: Cancel request was received, and the data copy was completed successfully, but the target database schema hasn't been returned to its original state.
@@ -178,7 +188,8 @@ WHERE STEP in (5,7,8) ORDER BY STEP DESC;
-**Message**: `Pre Copy steps finished successfully before canceling completed. Target database Foreign keys and temporal tables have been altered. Schema migration may be required again for future migrations. Target server: <Target Server>, Target database: <Target Database>.`
183
194
184
195
-**Cause**: Cancel request was received and the steps to prepare the target database for copy were completed successfully. The target database schema hasn't been returned to its original state.
@@ -191,67 +202,31 @@ WHERE STEP in (3,4,6);
191
202
```
192
203
193
204
194
-
### Error code: 2043 - CreateContainerFailed
205
+
## Error code: 2043 - CreateContainerFailed
206
+
195
207
-**Message**: `Create container <ContainerName> failed with error Error calling the endpoint '<URL>'. Response status code: 'NA - Unknown'. More details: Exception message: 'NA - Unknown [ClientSideException] Invalid Url:<URL>.`
196
208
197
209
-**Cause**: The request failed due to an underlying issue such as network connectivity, a DNS failure, a server certificate validation, or a timeout.
198
210
199
211
-**Recommendation**: For more troubleshooting steps, see [Troubleshoot Azure Data Factory and Synapse pipelines](../data-factory/data-factory-troubleshoot-guide.md#error-code-2108).
200
212
213
+
## Azure SQL Database limitations
214
+
215
+
Migrating to Azure SQL Database by using the Azure SQL extension for Azure Data Studio has the following limitations:
Migrating to SQL Server on Azure VMs by using the Azure SQL extension for Azure Data Studio has the following limitations:
201
228
202
-
## Database Migration Service issues
203
-
Migrations that were completed before early December 2022 may be missing migration details. This action doesn't have a negative effect on new or ongoing migrations.
204
-
205
-
## Azure SQL Database Migration limitations
206
-
207
-
The Azure SQL Database offline migration (Preview) utilizes Azure Data Factory (ADF) pipelines for data movement and thus abides by ADF limitations. A corresponding ADF is created when a database migration service is also created. Thus factory limits apply per service.
208
-
The machine where the SHIR is installed acts as the compute for migration. Make sure this machine can handle the cpu and memory load of the data copy. To learn more, review [SHIR recommendations](../data-factory/create-self-hosted-integration-runtime.md).
209
-
- 100,000 table per database limit.
210
-
- 10,000 concurrent database migrations per service.
211
-
- Migration speed heavily depends on the target Azure SQL Database SKU and the self-hosted Integration Runtime host.
212
-
- Azure SQL Database migration scales poorly with table numbers due to ADF overhead in starting activities. If a database has thousands of tables, there will be a couple of seconds of startup time for each, even if they're composed of one row with 1 bit of data.
213
-
- Azure SQL Database table names with double-byte characters currently aren't supported for migration. Mitigation is to rename tables before migration; they can be changed back to their original names after successful migration.
214
-
- Tables with large blob columns may fail to migrate due to timeout.
215
-
- Database names with SQL Server reserved are currently not supported.
216
-
- Database names that include semicolons are currently not supported.
217
-
- Computed columns don't get migrated.
218
-
219
-
## Azure SQL Managed Instance known issues and limitations
220
-
221
-
- If migrating a single database, the database backups must be placed in a flat-file structure inside a database folder (including the container root folder), and the folders can't be nested, as it's not supported.
222
-
- If migrating multiple databases using the same Azure Blob Storage container, you must place backup files for different databases in separate folders inside the container.
223
-
- Overwriting existing databases using DMS in your target Azure SQL Managed Instance isn't supported.
224
-
- Configuring high availability and disaster recovery on your target to match source topology isn't supported by DMS.
225
-
- The following server objects aren't supported:
226
-
- Logins
227
-
- SQL Server Agent jobs
228
-
- Credentials
229
-
- SSIS packages
230
-
- Server roles
231
-
- Server audit
232
-
- You can't use an existing self-hosted integration runtime created from Azure Data Factory for database migrations with DMS. Initially, the self-hosted integration runtime should be created using the Azure SQL migration extension in Azure Data Studio and can be reused for further database migrations.
233
-
234
-
## SQL Server on Azure Virtual Machine known issues and limitations
235
-
236
-
- If migrating a single database, the database backups must be placed in a flat-file structure inside a database folder (including the container root folder), and the folders can't be nested, as it's not supported.
237
-
- If migrating multiple databases using the same Azure Blob Storage container, you must place backup files for different databases in separate folders inside the container.
238
-
- Overwriting existing databases using DMS in your target SQL Server on Azure Virtual Machine isn't supported.
239
-
- Configuring high availability and disaster recovery on your target to match source topology isn't supported by DMS.
240
-
- The following server objects aren't supported:
241
-
- Logins
242
-
- SQL Server Agent jobs
243
-
- Credentials
244
-
- SSIS packages
245
-
- Server roles
246
-
- Server audit
247
-
248
-
- You can't use an existing self-hosted integration runtime created from Azure Data Factory for database migrations with DMS. Initially, the self-hosted integration runtime should be created using the Azure SQL migration extension in Azure Data Studio and can be reused for further database migrations.
249
-
- VM with SQL Server 2008 and below as target versions aren't supported when migrating to SQL Server on Azure Virtual Machines.
250
-
- If you're using VM with SQL Server 2012 or SQL Server 2014, you need to store your source database backup files on an Azure Storage Blob Container instead of using the network share option. Store the backup files as page blobs since block blobs are only supported in SQL 2016 and after.
251
-
- You must make sure the [SQL IaaS Agent Extension](/azure/azure-sql/virtual-machines/windows/sql-server-iaas-agent-extension-automate-management) in the target Azure Virtual Machine is in **Full** mode instead of **Lightweight** mode.
252
-
-[SQL IaaS Agent Extension](/azure/azure-sql/virtual-machines/windows/sql-server-iaas-agent-extension-automate-management)only supports management of **Default Server Server Instance** or **Single Named Instance**,
253
-
- There's a temporary limit of 80 databases per target Azure Virtual Machine. A workaround to break the limit (reset the counter) is to **Uninstall** and **Reinstall**[SQL IaaS Agent Extension](/azure/azure-sql/virtual-machines/windows/sql-server-iaas-agent-extension-automate-management) in the target Azure Virtual Machine.
254
-
- Apart from configuring the Networking/Firewall of your Storage Account to allow your VM to access backup files, you also need to configure the Networking/Firewall of your VM to allow outbound connection to your storage account.
0 commit comments