Feature · Scale & data
Managed databases, right next to your app.
A managed database is a database the platform runs for you: setup, updates, and backups included. Create PostgreSQL, MySQL, Redis, or MongoDB on Runex and it's connected to your app through an environment variable, with no database server to maintain.
- PostgreSQL, MySQL, Redis, MongoDB
- Connection injected as env var
- Scheduled backups
- engine
- PostgreSQL
- project
- acme/storefront
- connection
- DATABASE_URL · injected
- network
- private
- backups
- scheduled
- status
- running
Definition
What is a managed database?
A managed database is a database service where the provider handles installation, patching, backups, and uptime. You get a connection string and use it.
You focus on your schema and queries; the provider looks after the machine underneath.
On Runex, a managed database lives in the same project as your app. Runex injects its connection string, for example DATABASE_URL, as an environment variable, and traffic between app and database stays on the private network.
You can still bring your own. If your data already lives with another provider, set its connection string as an environment variable and Runex connects to it like any external service.
How it works
How do managed databases work on Runex?
Create, connect, ship.
-
You
Create a database
Pick PostgreSQL, MySQL, Redis, or MongoDB.
-
Runex
Provision it
It starts inside your project.
-
Runex
Inject the connection
Its URL is added as an env variable.
-
Runex
Keep it running
Updates and backups are handled for you.
Benefits
Why use a managed database?
Your data, without the database admin work.
No server to patch
Updates and maintenance are handled.
Backups by default
Scheduled backups protect against mistakes.
Private by default
App-to-database traffic stays off the internet.
Everything in one project
App and database deploy side by side.
Compare
Managed vs self-hosted database: what's the difference?
Managed means the provider runs it; self-hosted means you do.
| Managed on Runex | Self-hosted | |
|---|---|---|
| Setup | Created in the dashboard | Install and configure a server |
| Updates | Handled for you | You patch it |
| Backups | Scheduled automatically | You script and test them |
| Connection | Injected as an env variable | You manage credentials |
Example
Example: a Next.js store with Postgres and Redis
A store gets Postgres for orders and Redis for sessions: both wired in automatically.
- Deploy acme/storefront from GitHub
- Create a PostgreSQL database in the project
- Runex injects DATABASE_URL
- Add Redis for sessions; REDIS_URL is injected
- The app redeploys and connects to both
- Backups run on schedule
- postgres
- orders, users
- redis
- sessions, cache
- DATABASE_URL
- postgres://… · private
- REDIS_URL
- redis://… · private
- status
- connected
Which database should I use for a web app?
PostgreSQL is a safe default for most web apps. Add Redis for caching, sessions, or queues, and choose MongoDB if your data is document-shaped.
What is a database connection string?
A single URL holding the host, port, user, password, and database name, for example postgres://user:pass@host:5432/db. Apps usually read it from an environment variable like DATABASE_URL.
Should I use Redis or PostgreSQL?
Use each for its job. PostgreSQL stores durable, relational data; Redis is an in-memory store for fast caching, sessions, and queues.
Can I use an external database instead?
Yes. Set the external provider's connection string as an environment variable on Runex and your app connects to it as usual.
Next step
Ship with managed databases today.
Sign up, install the GitHub App, and deploy your first app. It's free to start.
