Azure Database for MySQL

azureSQL databaseazure-database-for-mysql

Managed MySQL Community Edition flexible server with automated backups and read replicas.

Provider
azure
Category
Data
Properties · 5 set by this component
propertytypevaluesrequiredkind defaultthis component
appendOnly · advancedboolean—nofalseinherited
backupEnabledboolean—nofalse▸ true
backupRetentionDaysinteger—no—▸ 7
commitProtocol · advancedenumsingle | two-phasenosingleinherited
computeTier · component propertyenumburstable | general-purpose | memory-optimizedno—inherited
concurrencyControl · advancedenumpessimistic | optimistic | constraintno—inherited
distributedboolean—nofalseinherited
encryptionAtRestboolean—nofalse▸ true
geoRedundantBackup · component propertyboolean—nofalseinherited
highAvailability · component propertyenumdisabled | same-zone | zone-redundantnodisabledinherited
idEncodesShard · advancedboolean—nofalseinherited
instancesinteger—no—inherited
managedboolean—nofalse▸ true
multiWriterboolean—nofalseinherited
readReplicas · component propertyinteger—no0inherited
replicaFanout · advancedinteger—no—inherited
replicaOfref—no—inherited
replicationenumnone | async | syncnonone▸ none
shardKeystring—no—inherited
shardedboolean—nofalseinherited
tlsEnforced · component propertyboolean—notrueinherited
Rules that apply · 6

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

business-updates-without-index-propagation

Application servers write this database and the design keeps a search index, but nothing captures the database's changes. The index then depends on the application writing to both places, and the two drift apart silently.

  • — all of these hold:
  • — the node has at least one synchronous incoming edge from an app-server
  • — the design contains a node of kind search-index
  • — this does not hold:
  • — the node has at least one outgoing edge to a change-data-capture
datastore-missing-backup

A system of record with backups off, or with no retention period stated, cannot be restored. The loss is discovered on the day it matters.

  • — any of these hold:
  • — the node's `backupEnabled` is false
  • — the node's `backupRetentionDays` has no value
datastore-single-region

The design promises multi-region availability, but this datastore sits in one region and does not replicate. A region outage takes the system of record with it.

  • — all of these hold:
  • — the design requirement `availability.multiRegion` is true
  • — the node sits inside exactly 1 region group
  • — the node's `replication` is "none"
read-heavy-path-without-cache

The design states a read-heavy workload and application servers read this datastore directly, yet the design has no cache anywhere. Every read pays a database round trip.

  • — all of these hold:
  • — the design requirement `traffic.readWriteRatio` is a number greater than 10
  • — the node has at least one synchronous incoming edge from an app-server
  • — this does not hold:
  • — the design contains a node of kind cache
read-replica-as-sole-scaling

Asynchronous read replicas scale reads only. When the store is neither sharded nor distributed the writes still land on one primary, so the replicas add nothing at the declared peak.

  • — all of these hold:
  • — the node's `replication` is "async"
  • — the node's `sharded` is false
  • — the node's `distributed` is false
  • — the node's declared requests per second is more than 5000
single-writer-primary-at-peak-qps

A single-writer, unsharded relational primary has a throughput ceiling. Declaring more than five thousand requests per second against it means the peak finds that ceiling in production.

  • — all of these hold:
  • — the node's `multiWriter` is false
  • — the node's `sharded` is false
  • — the node's declared requests per second is more than 5000
Use it in a design
nodes:
  - { id: "database-for-mysql", component: "azure-database-for-mysql" }
Other SQL database products · 75
ApsaraDB for OceanBasealibaba-oceanbasealibabacloudsql-databasePolarDBalibaba-polardbalibabacloudsql-databasePolarDB-Xalibaba-polardb-xalibabacloudsql-databaseApsaraDB RDSalibaba-rdsalibabacloudsql-databaseAmazon Auroraauroraawssql-databaseAmazon Aurora DSQLaws-aurora-dsqlawssql-databaseOracle Database@AWSaws-oracle-databaseawssql-databaseAmazon RDSaws-rdsawssql-databaseAmazon RDS Customaws-rds-customawssql-databaseAzure Database for PostgreSQLazure-database-for-postgresqlazuresql-databaseAzure HorizonDBazure-horizondbazuresql-databaseOracle AI Database@Azureazure-oracle-databaseazuresql-databaseAzure SQL Databaseazure-sqlazuresql-databaseAzure SQL Managed Instanceazure-sql-managed-instanceazuresql-databaseSQL Server on Azure Virtual Machinesazure-sql-server-vmazuresql-databaseCloudflare D1cloudflare-d1cloudflaresql-databaseCituscitussql-databaseCockroachDBcockroachdbsql-databaseCockroachDB Cloudcockroachdb-cloudsql-databaseDatomicdatomicsql-databaseIBM Db2db2sql-databaseEDB Postgres Advanced Serveredb-postgressql-databaseClaris FileMaker Serverfilemakersql-databaseFirebirdfirebirdsql-databaseIBM Informixinformixsql-databaseActian Ingresingressql-databaseInterBaseinterbasesql-databaseInterSystems IRISintersystems-irissql-databaseMariaDB Servermariadbsql-databaseMySQLmysqlsql-databaseNeonneonsql-databaseOceanBase Databaseoceanbasesql-databaseProgress OpenEdgeopenedgesql-databaseOracle Databaseoracle-dbsql-databasePlanetScaleplanetscalesql-databasePostGISpostgissql-databasePostgreSQLpostgressql-databaseRelational databaserelational-databasesql-databaseSAP Adaptive Server Enterprisesap-asesql-databaseSAP HANAsap-hanasql-database
and 35 more → SQL database page
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Azure Database for MySQL flexible server: managed MySQL Community Edition.
# "Azure Database for MySQL flexible server": automatic backups retained 7 days by default
# (1-35), AES-256 storage encryption with system-managed keys, TLS enforced by default,
# and high availability plus read replicas are opt-in.
schemaVersion: "1"
type: "component"
id: "azure-database-for-mysql"
kind: "sql-database"
provider: "azure"
docs: "https://learn.microsoft.com/en-us/azure/mysql/flexible-server/overview"
defaults:
  managed: true
  replication: "none"
  backupEnabled: true
  backupRetentionDays: 7
  encryptionAtRest: true
properties:
  computeTier:
    type: "enum"
    values: ["burstable", "general-purpose", "memory-optimized"]
  highAvailability:
    type: "enum"
    values: ["disabled", "same-zone", "zone-redundant"]
    default: "disabled"
  geoRedundantBackup:
    type: "boolean"
    default: false
  tlsEnforced:
    type: "boolean"
    default: true
  readReplicas:
    type: "integer"
    default: 0

The same page as markdown, for an agent: /catalogue/components/azure-database-for-mysql.md