Managed databases
PostgreSQL, MySQL, MongoDB-compatible and Redis-compatible databases that you never have to install, patch or expose to the internet. Create one in a couple of clicks and copy the connection string.
Four engines, your choice of version
PostgreSQL and MySQL for relational data, FerretDB when you need a MongoDB-compatible document store, and Valkey — a multi-threaded, Redis-compatible key-value store — for caches and queues.
Automatic backups
Backups run on a schedule and are stored in external secure storage, so a problem with the underlying infrastructure never becomes a problem with your data. PostgreSQL also supports point-in-time recovery on request.
Scaling and replicas
Start on the smallest configuration and move up when the load grows: change the node configuration or add nodes without rebuilding your application.
Connection pooling
Every replica of your application opens its own connections. A pooler in front of the database keeps that under control, so scaling the app does not exhaust the connection limit.
Private by default
No public endpoint and no public domain. The database is reachable only from the resources in your project, over internal DNS — a much smaller attack surface than a database on the open internet.
Port forwarding when you need it
Use the CLI to forward the database port to localhost and connect with psql, mysql or your favourite GUI client. Perfect for a one-off dump or a manual fix, without opening anything up permanently.
What runs where
Databases live in the same cluster as your applications, so the hop between them is short and stays on the internal network.
Supported engines
- PostgreSQL
- The default choice for relational data. Point-in-time recovery available on request.
- MySQL
- For applications and frameworks that expect MySQL.
- FerretDB
- MongoDB-compatible document store — keep using your MongoDB drivers and queries.
- Valkey
- Redis-compatible, multi-threaded and memory-efficient. Use it for caching, sessions and queues.
Access control
Who can reach the database, and how.
- Network
- Reachable only from inside your project over internal DNS. There is no public address to scan or brute force.
- Credentials
- Connection details are generated for you and shown on the database page. Pass them to your application as encrypted secrets, not as plain text in the repository.
- People
- Access to the database page follows project membership, so revoking someone from the project revokes their access to the credentials as well.
- Temporary local access
- CLI port forwarding gives you a connection from your machine for as long as the session is open, and nothing beyond that.
Database questions
More questions? Email us at support@granite.so
Databases are billed from the same monthly usage credits as the rest of your project.
See pricing The rest of the platform
Everything your application needs lives in the same project, with no networking to configure.
App platform
Run HTTP apps, workers and cron jobs from a Docker image or your Git repository.
Learn more
S3-compatible storage
Unlimited buckets behind a built-in CDN, with per-bucket keys and a file browser.
Learn more
Docker registry
A private registry for unlimited images, right next to the apps that run them.
Learn more
Be first in line for updates
and special pricing
Get early access to new features and exclusive discounts delivered straight to your inbox