Skip to content

Commit 350189b

Browse files
committed
Updates
1 parent 671bcf8 commit 350189b

File tree

2 files changed

+25
-7
lines changed

2 files changed

+25
-7
lines changed

articles/mysql/migrate/migrate-single-flexible-in-place-auto-migration.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ Following described are the ways to review your migration schedule once you have
5353
* For Single Server instance with **SSL enabled**, ensure you have all three certificates (**[BaltimoreCyberTrustRoot](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem), [DigiCertGlobalRootG2 Root CA](https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem) and [DigiCertGlobalRootCA Root CA](https://dl.cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem)**) available in the trusted root store. Additionally, if you have the certificate pinned to the connection string create a combined CA certificate with all three certificates before scheduled auto-migration to ensure business continuity post-migration.
5454
* The MySQL engine doesn't guarantee any sort order if there is no 'SORT' clause present in queries. Post in-place automigration, you may observe a change in the sort order. If preserving sort order is crucial, ensure your queries are updated to include 'SORT' clause before the scheduled in-place automigration.
5555
* If your source Azure Database for MySQL Single Server has engine version v8.x, ensure to upgrade your source server's .NET client driver version to 8.0.32 to avoid any encoding incompatibilities post migration to Flexible Server.
56+
* If your source Azure Database for MySQL Single Server has firewall rule names exceeding 80 characters, please rename them to ensure length of name is less than 80 characters. (The firewall rule name length supported on Flexible Server is 80 characters whereas on Single Servers the allowed length is 12 8 characters.)
5657

5758
## How is the target MySQL Flexible Server auto-provisioned?
5859

@@ -87,6 +88,12 @@ Following described are the ways to review your migration schedule once you have
8788
* Monitoring page settings (Alerts, Metrics, and Diagnostic settings)
8889
* Any Terraform/CLI scripts you host to manage your Single Server instance should be updated with Flexible Server references.
8990
* For Single Server instance with Query store enabled, the server parameter 'slow_query_log' on target instance is set to ON to ensure feature parity when migrating to Flexible Server. Please note, for certain workloads this could impact performance and if you observe any performance degradation, set this server parameter to 'OFF' on the Flexible Server instance.
91+
* For Single Server instance with Advance Threat Protection enabled, consider configuring the following properties post auto-migration in the following table to maintain parity as you are auto-migrated to Azure Defender for Cloud :
92+
**Property** | **Configuration**
93+
---|---|---
94+
properties.disabledAlerts | You can disable specific alert types by using the Microsoft Defender for Cloud platform. For more information, see the article [Suppress alerts from Microsoft Defender for Cloud guide](../../defender-for-cloud/alerts-suppression-rules.md).
95+
properties.emailAccountAdmins, properties.emailAddresses | You can centrally define email notification for Microsoft Defender for Cloud Alerts for all resources in a subscription. For more information, see the article [Quickstart: Configure email notifications for security alerts](../../defender-for-cloud/configure-email-notifications.md).
96+
properties.retentionDays, properties.storageAccountAccessKey, properties.storageEndpoint | The Microsoft Defender for Cloud platform exposes alerts through Azure Resource Graph. You can export alerts to a different store and manage retention separately. For more about continuous export, see the article [Set up continuous export in the Azure portal - Microsoft Defender for Cloud](../../defender-for-cloud/continuous-export.md?tabs=azure-portal).
9097

9198
## Frequently Asked Questions (FAQs)
9299

@@ -109,13 +116,6 @@ Following described are the ways to review your migration schedule once you have
109116

110117
**A.** You can review the migration schedule by navigating to the Migration blade of your Single Server instance. If you wish to defer the migration, you can defer by a month at the most by navigating to the Migration blade of your single server instance on the Azure portal and re-scheduling the migration by selecting another migration window within a month. Note that the migration details will be locked 7 days prior to the scheduled migration window after which you're unable to reschedule. This in-place migration can be deferred monthly until 16 September 2024.
111118

112-
**Q. What are some post-migration activities I need to perform?​**
113-
114-
**A.** Following are some post-migration activities:
115-
116-
* Monitoring page settings (Alerts, Metrics, and Diagnostic settings)
117-
* Any Terraform/CLI scripts you host to manage your Single Server instance should be updated with Flexible Server references.
118-
119119
**Q. What username and connection string would be supported for the migrated Flexible Server? ​​**
120120

121121
**A.** Both username formats - username@server_name (Single Server format) and username (Flexible Server format) will be supported for the migrated Flexible Server, and hence you aren't required to update them to maintain your application continuity post migration. Additionally, both connection string formats (Single and Flexible server format) will also be supported for the migrated Flexible Server.

articles/mysql/migrate/migrate-single-flexible-mysql-import-cli.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,23 @@ az account set --subscription <subscription id>
6464
- If the Single Server instance has ' Infrastructure Double Encryption' enabled, enabling Customer Managed Key (CMK) on target Flexible Server instance is recommended to support similar functionality. You can choose to enable CMK on target server with Azure Database for MySQL Import CLI input parameters or post migration as well.
6565
- If the Single Server instance has 'Query Store' enabled, enabling slow query logs on target Flexible Server instance is recommended to support similar functionality. You can configure slow query logs on the target flexible server by following steps [here](/azure/mysql/flexible-server/tutorial-query-performance-insights#configure-slow-query-logs-by-using-the-azure-portal). You can then view query insights by using [workbooks template](/azure/mysql/flexible-server/tutorial-query-performance-insights#view-query-insights-by-using-workbooks).
6666
- If your Single Server instance has Legacy Storage architecture (General Purpose storage V1), you need to set the parameter log_bin=ON for your Single Server instance before initiating the import operation. In order to do so, create a read replica for your Single Server instance and then delete it. This operation will set the parameter log_bin to ON and you can then trigger an import operation to migrate to Flexible Server.
67+
- If your Single Server instance has engine version v8.0, consider performing the following actions to avoid any breaking changes due to community minor version differences between the Single and Flexible Server instance :
68+
69+
- Run the following statement to check if your instance could be impacted by erroneous histogram information. If the corresponding tables are output, we recommend that you refer to [https://dev.mysql.com/blog-archive/histogram-statistics-in-mysql/](https://dev.mysql.com/blog-archive/histogram-statistics-in-mysql/) to delete the histogram information, and then recreate it on the Flexible Server. It's worth noting that the histogram inf` is only statistical information about the columns, and this information only exists in system tables, so deleting the histogram info will not affect the table data.
70+
71+
```sql
72+
SELECT DISTINCT SCHEMA_NAME, TABLE_NAME FROM `information_schema`.`column_statistics`;
73+
```
74+
75+
- Run the following command to check for tables that could have their table column order be disorganized. If this check identifies any affected tables, you need to dump all the data from these tables and then import it back. Failure to do so can lead to the sequence of columns in the binlog not matching the sequence of columns in the user tables. This discrepancy can prevent users from setting up replication, restoring data, enabling High Availability (HA), and other operations.
76+
77+
```sql
78+
SELECT table_schema, table_name, COUNT(*) AS column_count, MAX(ORDINAL_POSITION) AS max_ordinal_position
79+
FROM information_schema.columns
80+
GROUP BY table_schema, table_name
81+
HAVING column_count != max_ordinal_position;
82+
```
83+
6784
- Only instance-level import is supported. No option to import selected databases within an instance is provided.
6885
- Below items should be copied from source to target by the user post the Import operation:
6986
- Read-Replicas
@@ -251,6 +268,7 @@ Below is the benchmarked performance based on varying number of tables for 10 Gi
251268
252269
- Copy the following properties from the source Single Server to target Flexible Server post Azure Database for MySQL Import operation is completed successfully:
253270
- Read-Replicas
271+
- Server parameter value for event_scheduler
254272
- Monitoring page settings (Alerts, Metrics, and Diagnostic settings)
255273
- Any Terraform/CLI scripts you host to manage your Single Server instance should be updated with Flexible Server references.
256274

0 commit comments

Comments
 (0)