Databases & backend

Managed databases. Right next to your app.

Run PostgreSQL, MySQL, MariaDB, Redis or MongoDB on your team’s private network. Attach a database to a project and its connection string lands in the app’s environment variables — no credentials to copy around.

Private networkAttach to any projectScheduled backupsRestore when neededServers in the EU

Five engines, one dashboard

Pick the database your app expects. It runs on your team’s private network and is managed from the same place as your deployments.

  • PostgreSQLRelational data for web apps and APIs
  • MySQLThe classic choice for PHP and many frameworks
  • MariaDBOpen source and compatible with MySQL
  • RedisCaching, sessions, queues and rate limiting
  • MongoDBA document database for JSON-shaped data
  • Import a dumpBring an existing PostgreSQL, MySQL, MariaDB, MongoDB or Redis dump

From zero to connected in three steps

Create a database, hand it to your app and put backups on a schedule.

  1. Create itPick an engine and a name. The database starts on your team’s private network, reachable only by your projects until you decide otherwise.
  2. Attach it to a projectThe connection string is added to the project’s environment variables as DATABASE_URL. Redeploy, and your app is connected.
  3. Schedule backupsChoose how often backups run and how many days to keep them. About to make a risky change? Back up now.

Backups you control. Access you decide.

Your data stays on your team’s private network until you open it. Backups run on the schedule you set, and you can restore from the dashboard, the CLI or the API.

  • Scheduled backups from a cron expression, like every night at 03:00
  • Retention in days, so old backups are cleared out automatically
  • On-demand backups before migrations and big releases
  • A list of recent backups with their status and size
  • Restores that ask you to confirm first, because they replace the current data
  • Public access you can switch on and off at any time

At a glance

  • NetworkPrivate to your team
  • Public accessOff until you turn it on
  • ConnectionDATABASE_URL on attach
  • BackupsOn your schedule
  • RestoreDashboard, CLI or API
  • ImportFrom a dump file

Everything around the database

Secrets, scheduled work and a clear view of what each project uses — managed next to your deployments.

Environment variables and secrets

Keep API keys and connection strings out of your code. Sensitive values stay hidden once saved, and changes apply on the next deploy.

Cron jobs

Run recurring commands — a nightly cleanup, a report, a cache warm-up — on a schedule in your app’s container. Start any job with Run now.

Project storage

Each project’s Storage view shows the databases it uses. Connect any database from your team to any project.

From your terminal

# Create PostgreSQL and attach it to a project
hostingsurge databases create shop-db --engine postgresql --project shop

# Back up every night at 03:00 and keep 14 days
hostingsurge databases backups shop-db set --frequency "0 3 * * *" --retention-days 14

# Open it to your own machine, then close it again
hostingsurge databases public shop-db on
hostingsurge databases public shop-db off

The same actions are available in the REST API and over MCP, and every command can print --json for scripts. Explore the API and CLI

Database questions, answered

Engines, connections, backups and access.

Which databases can I create?

PostgreSQL, MySQL, MariaDB, Redis and MongoDB. Each one runs as a managed database on your team’s private network.

How does my app connect to its database?

Attach the database to a project and its connection string is added to the project’s environment variables as DATABASE_URL. Redeploy, and your app reads it like any other variable.

Are backups automatic?

You decide. Set a schedule, for example every night, choose how many days to keep each backup, or run one on demand. Restores are available from the dashboard, the CLI and the API.

Can I connect from my own computer?

Yes. Turn on public access and the database gets a public host and port you can reach from your own tools. Turn it off again when you’re done — by default, a database is only reachable from your team’s projects.

Can I move an existing database here?

Yes. Import a PostgreSQL, MySQL, MariaDB, MongoDB or Redis dump and it’s restored into a managed database. Rather have our team do it? Ask for a concierge migration

Where is my data stored?

On servers in the EU, in France, behind a firewall. Every team’s projects, data and credentials are isolated from other teams.

Give your app a database today.

Create PostgreSQL, MySQL, MariaDB, Redis or MongoDB next to your projects, or import the one you already run.