Improvements to Azure Database for MySQL recommendations
Published Jun 12 2020 12:53 PM 2,543 Views

Cloud optimizations are critical to ensuring that you get the most out of your Azure investments, especially in complex environments with many Azure resources spread across multiple subscriptions and resource groups. Azure Advisor helps you optimize your Azure resources for high availability, security, performance, and cost, by providing free, personalized recommendations based on your Azure usage and configurations.


One of the core value propositions for running your MySQL servers on Azure Database for MySQL service is Intelligent Performance insights. Azure Database for MySQL leverages Azure Advisor to bring users these intelligent insights to ensure that they get the most out of their MySQL databases. Azure Advisor uses database server configuration details and usage metrics to provide targeted recommendations based on your workload pattern. Over the last year, we have seen increased Advisor recommendation adoption and overwhelmingly positive response from customers who have implemented the recommendations and seen visible improvements in the performance of their servers.


Initial recommendation set


The team started off surfacing recommendations by programmatically analyzing server metrics telemetry continuously to determine whether workload performance can be improved by configuring one or more of resource settings. Spanning four different areas, the initial set of recommendations includes:

  • Addressing the CPU pressure of your Azure Database for MySQL, PostgreSQL, and MariaDB servers with CPU bottleneck.
  • Reducing memory constraints on your Azure Database for MySQL, PostgreSQL, and MariaDB servers.
  • Using an Azure Database for MySQL, PostgreSQL Read Replica to scale out reads for read intensive workloads.
  • Scaling your Azure Database for MySQL, PostgreSQL, and MariaDB server to a higher SKU to prevent connection constraints.

Read more about the initial recommendation set in this blog post.


What’s new with Azure Database for MySQL recommendations


We aim to continuously make it easier for you to manage your MySQL servers, and we’ve added three new recommendations to the Azure platform. These recommendations are focused on cost and performance optimizations for your Azure resources.


  • Improve MySQL connection management - Advisor analysis helps indicate that your application connecting to MySQL server may not be managing connections efficiently. This issue may result in unnecessary resource consumption and overall higher application latency.
  • To improve connection management, we recommend that you reduce the number of short-lived connections and eliminate unnecessary idle connections. To do this, configure a server-side connection-pooler, such as ProxySQL.

  • Optimize spend for MariaDB, MySQL and PostgreSQL servers by right sizing - Advisor analyses your usage and recommends if your Azure Database for MySQL, PostgreSQL and MariaDB database server resource has been underutilized for an extended period of time over the last 7 days. Low resource utilization results in unwanted expenditure which can be fixed without significant performance impact. To reduce your costs and efficiently manage your resources, we recommend reducing the compute size (vCores).
  • Buy reserved instances for several resource types to save over your pay-as-you-go costs
    We analyze your Azure Database for MySQL usage pattern over last 30 days and recommend reserved capacity purchase that maximizes your savings. With reserved capacity you can pre-purchase MySQL hourly usage and save over your costs. Reserved capacity is a billing benefit and will automatically apply to new or existing deployments. Saving estimates are calculated for individual subscriptions using 3-year reservation pricing and the usage pattern over last 30 days. Shared scope recommendations are available in reservation purchase experience and can increase savings further.


Getting started with Azure Advisor


Review the recommendations for your Azure resources by using Azure Advisor recommendations. If you need help getting started, check our Advisor documentation.


You can also postpone or dismiss these recommendations. For example, if you do not want to receive recommendations for a specific subscription or resource group, you can use the portal or the CLI to configure Azure Advisor to limit the resources on which recommendation are provided. For more information about using Azure Advisor, see the article Get started with Azure Advisors.


If you identify any problems or want to make a feature suggestion, please reach out to the Ask Azure DB for MySQL alias. You can also engage with us on the Azure feedback forums for Azure Database for MySQL feedback forum.

Version history
Last update:
‎Jun 12 2020 12:53 PM
Updated by: