Docs
Skip to content

MySQL

MySQL_

Run a native MySQL database provisioned for your project and connect to it directly with standard MySQL clients.

4 min read

Raw

Appwrite native MySQL databases give you a managed MySQL instance provisioned for your project. You pick the compute specification, and Appwrite provisions the engine in your project's region with its own storage, networking, and credentials, exposed through a per-database public hostname secured with TLS.

Native databases are different from Appwrite databases like TablesDB, DocumentsDB, and VectorsDB, which are accessed through Appwrite SDKs and platform APIs. A native MySQL database gives you the raw engine. You connect with the mysql client or any MySQL driver and use the full feature set of MySQL, with no Appwrite abstraction layer in between.

Supported versions

Appwrite manages the database container, storage, backups, and networking. You bring the application.

EngineDefault versionOther supported versionsDefault port
MySQL8.48.03306

The version is selected on create and can be upgraded later. Upgrades run online by provisioning a second instance on the new version, streaming data over with logical replication, and moving traffic once replication is caught up.

A new database starts in a provisioning state and becomes ready within a few minutes. Large specifications or high-availability configurations take longer to schedule; poll the database status or check the databases list until it reports ready.

Regions

A native database lives in the same region as the project that owns it. There is no per-database region selector. Each database gets a unique hostname in the form db-<hash>.<region>.appwrite.center, and data does not leave the region.

Feature overview

Specifications and pricing

Each database runs against one of the following compute specifications, billed monthly:

TierSpecificationCPUMemoryStorageBandwidthConnectionsPrice
Starters-1vcpu-1gb1 core1 GB10 GB50 GB100$10/mo
Standards-2vcpu-2gb2 cores2 GB25 GB200 GB200$20/mo
Standard Pluss-2vcpu-4gb2 cores4 GB50 GB400 GB500$49/mo
Professionals-4vcpu-8gb4 cores8 GB200 GB1 TB1,000$85/mo
Businesss-4vcpu-16gb4 cores16 GB500 GB2 TB2,000$160/mo
Business Pluss-4vcpu-32gb4 cores32 GB1 TB5 TB4,000$299/mo
Enterprises-8vcpu-32gb8 cores32 GB2 TB7.5 TB5,000$425/mo
Enterprise Pluss-8vcpu-64gb8 cores64 GB3 TB10 TB10,000$699/mo

The Storage and Bandwidth columns are the monthly allowances included with each tier. Usage beyond them is billed as overage, and optional features are billed as add-ons on top of the tier price:

Add-onPrice
Storage overage$0.125 per GB per month
Bandwidth overage$0.08 per GB per month
High availability replica50% of the tier price, per replica
Point-in-time recovery20% of the tier price

You can resize between tiers as your workload changes.

Limits

The following limits apply per database:

LimitValue
Databases per project10
High availability replicas0 - 5
IP allowlist entries100
Backup retention1 - 365 days
Point-in-time recovery window1 - 35 days
Max simultaneous connections10,000 platform cap, lower on smaller specifications

Billing and plan requirements

Native databases are available on paid plans, and a payment method must be attached to your organization. Each database is billed by the hour against its compute specification, with separate line items for overages and add-ons. See pricing for details.

Was this page helpful?

Share what worked or what we should fix. Once approved, our agents automatically apply suggested updates to the docs.