DEV Community

Jake Barnby
Jake Barnby

Posted on Originally published at appwrite.io

Appwrite shipped managed Postgres and MySQL (real engines, not our document API)

Hey. I'm Jake (abnegate). I work on databases at Appwrite. We just shipped managed native PostgreSQL and MySQL, and I wanted a place to talk about what that actually means before people assume it's TablesDB with a SQL coat of paint.

It isn't.

What you get

You pick Postgres or MySQL in the Console, pick a compute tier, and Appwrite provisions a real engine in your project's region. Own hostname, credentials, TLS. Connect with psql / the mysql client / Prisma / Drizzle / TypeORM / Kysely / Knex / Sequelize / whatever you already use. No Appwrite SDK between your code and the data.

Defaults:

  • PostgreSQL 18 (17 on create if you want it)
  • MySQL 8.4 (8.0 on create if you want it)

Ports:

  • Postgres: pooler 6432, direct 5432
  • MySQL: pooler 6033, direct 3306

Same hostname for both. Point runtime traffic at the pooler. Keep migrations, dumps, and anything that needs session semantics on the direct port. That pattern is the boring one that actually works with serverless fan-out.

Not TablesDB

TablesDB / DocumentsDB / VectorsDB are Appwrite's managed data products. SDKs, permissions, the platform layer. Different job.

Native Postgres and MySQL are the engines. Your drivers own the connection. Appwrite runs backups, PITR, branches, HA, pooling, allowlists, monitoring, and the SQL editor in the Console. You bring the schema and the ORM.

If you've been waiting for "give me Postgres so I can run my own migrations and pgvector," this is that.

Managed bits we actually care about

  • Backups + point-in-time recovery
  • Branches from a storage snapshot (preview DBs without cloning by hand)
  • HA with up to five replicas and automatic failover
  • Online resize between tiers
  • Per-database pooler with read/write split when replicas are on
  • Extensions on Postgres (PostGIS, pgvector, pg_trgm, etc.)

I walk through provisioning and connecting in a short demo here: https://www.youtube.com/watch?v=Rq4WNPvqWes

Pricing / regions

Starter is $10/mo (1 vCPU, 1 GB, 10 GB storage). Pro plans include $10/mo in database credits, so starter is covered on Pro if you're already there.

Regions are rolling out. Frankfurt (fra) and New York (nyc) first. The database lives in the same region as the project, so create the project in one of those if you want to try it now.

Links

Integration guides for TypeORM, Kysely, Knex, Sequelize, Prisma, Drizzle, and drivers live under those docs trees.

If something's weird with pooling modes, branches, or how we wire TLS, ask. Happy to go deep. I built a lot of this and I'd rather answer a sharp question than ship another marketing page.

Top comments (0)