Tiers
Single, replicated and HA
One node, a primary with one or two read replicas, or a three- or five-member group with automatic failover. Plans pair CPU and memory per node, from 0.5 vCPU / 1 GB to 8 vCPU / 32 GB.
A relational database for the state your application keeps — with databases and users declared as configuration, a tier for every failure tolerance, and backups that are always on. Managed through the same console, CLI and Terraform provider as the rest of your platform.
MySQL 8.4 LTS, unmodified. Your ORM, migration tool and client library connect the way they always have — point them at the instance handle on port 3306 and keep the code you have.
List the databases you want and the user that owns each one. The platform creates them, generates the passwords and keeps the instance matching the list — and never touches the schemas you create yourself over SQL.
A single node that recovers from its own disk. A primary with read replicas for read-heavy applications. Or Group Replication across three or five members with automatic failover — the console shows the derived node count before you create anything.
Every database is dumped on a schedule you set, and the binary log ships off the instance every 15 minutes. There is no switch to turn backups off — the recovery window is always there when a migration goes wrong.
Platform features
Everything a relational database needs in production — provisioning, security, backups and visibility — without operating any of it.
Tiers
One node, a primary with one or two read replicas, or a three- or five-member group with automatic failover. Plans pair CPU and memory per node, from 0.5 vCPU / 1 GB to 8 vCPU / 32 GB.
Durability
Scheduled per-database dumps plus binary logs shipped every 15 minutes, with the recovery window shown per region in the console and the CLI.
Security
Encryption at rest from the day you create the instance. Project-private by default; external access requires TLS and an IP allowlist, enforced by the platform.
Access
Reach the instance from anywhere you allowlist over verified TLS, or open phpMyAdmin in the browser for a session of work — it switches itself off when the time is up.
Credentials
Every password is generated by the platform and never returned in a read. Reveal or rotate one when you need it — and every reveal is in the activity log.
Automation
Create and manage instances from the console, from the Reis CLI in flag or YAML mode, or declaratively through the Terraform provider — the same resource model as every other Bahriya resource.
Use cases
Pick the tier that matches how much a minute of downtime costs you.
The database behind your HTTP containers — Laravel, Rails, Django, Spring or anything with a MySQL driver. Give each service its own database and user on one instance, or its own instance.
Catalogues, content and dashboards on the replicated tier — writes to the primary, reads spread across replicas through a read-only endpoint.
Orders, ledgers and accounts on the highly available tier, where every acknowledged write is held by a majority of the group and a failed primary is replaced automatically.
Move a database in from elsewhere, or let a reporting tool hosted outside the platform read it — over TLS, from the addresses you allowlist, on a port reserved for your instance.
Tier, plan, storage, databases and regions with sensible defaults and a derived node count before you create.
CPU, memory and storage are per node, so the node count shown on the form is the multiplier.
Status, metrics, logs, connection endpoints and the backup window in the console, with every change in the activity log.
Tiers, databases and users, external access, phpMyAdmin and backups — covered in the knowledgebase with CLI and Terraform examples.
Coming Soon
Planned for later in 2026/2027, timeline subject to change.
Managed PostgreSQL with automated backups, point-in-time recovery, and regional deployment. Advanced SQL features, JSONB support, and extensions for modern application workloads.
A globally distributed, multi-region document database with built-in replication. Conflict-free sync across regions for offline-first applications and geo-distributed NoSQL workloads.
S3-compatible object storage for files, media, backups, and static assets. Accessible from your containers or directly via standard S3 APIs and client libraries.
Global content delivery network for static assets, media, and API acceleration. Edge caching across multiple PoPs with automatic origin pull from your containers or object storage.
Your own dedicated API gateway in front of your services. JWT/OAuth2/OIDC and key auth, fine-grained rate limiting and quotas, request/response transformations, circuit breakers, canary releases and traffic splitting, gRPC and WebSocket proxying, and rich per-route analytics — all configured declaratively via Reis or the Console.
Managed RabbitMQ for asynchronous messaging between containers. Multi-region clusters, project-private networking, and per-node billing — same operational model as Memcached.
Create an instance next to your containers, declare your databases, and point your application at it.