Every server Unmetered traffic, DDoS protection and IPMI included. No setup fees, no contract. Unmetered traffic on every server See pricing

Databases on bare metal

Fast, predictable databases on NVMe Gen5 bare metal

Put your working set in RAM and your writes on local NVMe Gen5. Pro servers pair 12-channel DDR5-6000 memory with fast local drives, and replicate to standby servers over a free private VLAN.

Top pick for databases

Pro 32

32 Zen 5 cores, 384 GB of RAM and 2 × 3.84 TB NVMe Gen5 in a mirror: a solid primary for PostgreSQL or MySQL datasets up to about 3 TB. Order two, a primary and a standby, at $749/mo each.

Processor
AMD EPYC 9355P32 cores · 64 threads
Memory
384 GBDDR5-6000 ECC
Storage
2 × 3.84 TBNVMe Gen5
Network
25 GbpsUnmetered traffic

$749/mo

Deploy

Ready in minutes · 8 locations

Benefits

Working set in memory

384 to 768 GB of DDR5-6000 ECC on 12 memory channels keeps hot tables and indexes in RAM, so most reads never touch a disk.

Local NVMe Gen5 storage

No network block storage between your database and its disks: commits and checkpoints go straight to PCIe 5.0 NVMe drives in the server.

Free replication network

Stream WAL or binlogs to replicas over a private VLAN between your servers in the same location. Internal traffic is not billed.

No noisy neighbors

Single-tenant hardware means no CPU steal and no shared IOPS budget, so query latency stays steady under load.

Recommended servers

Three configurations that fit.

Prices per month in USD, excluding taxes, with unmetered traffic and DDoS protection included.

ProRecommended

Pro 32

32 Zen 5 cores, 384 GB of RAM and 2 × 3.84 TB NVMe Gen5 in a mirror: a solid primary for PostgreSQL or MySQL datasets up to about 3 TB. Order two, a primary and a standby, at $749/mo each.

  • AMD EPYC 9355P32 cores · 64 threads
  • 384 GBDDR5-6000 ECC
  • 2 × 3.84 TBNVMe Gen5
  • 25 Gbps portUnmetered traffic

Ready in minutes · 8 locations

Pro

Pro 48

576 GB of RAM and 2 × 7.68 TB NVMe Gen5 for larger datasets or busy multi-tenant databases. 48 cores absorb heavy concurrency, reporting queries and parallel index builds.

  • AMD EPYC 9455P48 cores · 96 threads
  • 576 GBDDR5-6000 ECC
  • 2 × 7.68 TBNVMe Gen5
  • 25 Gbps portUnmetered traffic

Ready in minutes · 8 locations

Pro

Pro 64

Four 3.84 TB NVMe Gen5 drives allow RAID 10, and 768 GB of RAM holds very large working sets. Two 25 Gbps ports give replication, backups and client traffic plenty of headroom.

  • AMD EPYC 9555P64 cores · 128 threads
  • 768 GBDDR5-6000 ECC
  • 4 × 3.84 TBNVMe Gen5
  • 2 × 25 Gbps portUnmetered traffic

Ready in minutes · 6 locations

$1,349/mo

Architecture and sizing

How to run it well.

01

Size RAM to your working set

Database performance on modern hardware is mostly a question of what fits in memory. Estimate your working set, the tables and indexes your queries touch in a typical hour, not the full size on disk. If it fits in RAM with room to spare, reads come from memory and the NVMe drives mostly absorb writes.

Starting points for a server dedicated to the database:

  • PostgreSQL: shared_buffers at about 25% of RAM and effective_cache_size at about 75%; the OS page cache does the rest.
  • MySQL and MariaDB (InnoDB): innodb_buffer_pool_size at 60 to 75% of RAM.
  • Redis and Valkey: set maxmemory well below physical RAM, leaving headroom for fork-based snapshots.

As an estimate, assuming about 30% of RAM stays free for connections, sorts and the OS, a Pro 32 caches a working set of roughly 270 GB, a Pro 48 about 400 GB and a Pro 64 about 540 GB. Bandwidth matters too: 12 channels of DDR5-6000 give each EPYC 9005 socket about 576 GB/s of theoretical peak memory bandwidth.

02

Storage layout on NVMe Gen5

Every Pro server has at least two NVMe Gen5 drives, so mirror them. Software RAID 1 with mdadm, or a ZFS mirror, keeps the database running through a drive failure, and spare parts on site in every location mean the failed drive can be replaced quickly. On a Pro 64, RAID 10 across the four drives gives roughly twice the write bandwidth of a single mirror.

Choices that matter more than raw drive speed:

  • File system: XFS or ext4 mounted with noatime. On ZFS, a common starting point is a recordsize matching the database page: 8K for PostgreSQL, 16K for InnoDB.
  • No parity RAID for write-heavy databases: RAID 5 and 6 turn small random writes into read-modify-write cycles.
  • Benchmark first: run fio with your block size and pgbench or sysbench at your concurrency before migrating, and keep the results as a baseline.
  • Free space: copy-on-write file systems and SSDs slow down when nearly full, so plan to stay under about 80%.

Our guide to software RAID on NVMe with mdadm covers the setup step by step.

03

Replication and backups over the private VLAN

Run the standby in the same location and connect it over a free private VLAN: replication stays off the public interface and internal traffic is not billed. A typical high-availability layout:

  • Two identical Pro servers as primary and standby, with synchronous or asynchronous replication.
  • A failover manager: Patroni with etcd for PostgreSQL, or MySQL InnoDB Cluster, with a third small node such as a Core 16 for quorum.
  • A routing layer: HAProxy with Patroni health checks, or MySQL Router, so clients always reach the current primary. Add PgBouncer for connection pooling.

For disaster recovery, add an asynchronous replica in a second location over WireGuard or TLS. Traffic is unmetered, so cross-site replication adds no transfer cost. Keep backups separate from replicas: a replica copies a bad DELETE instantly, while a backup lets you go back in time. pgBackRest or Percona XtraBackup to a Storage 264 handles large archives well.

Your stack

Runs what you already use.

Full root access and one-click images for Ubuntu, Debian, AlmaLinux, Rocky Linux, Windows Server and Proxmox VE, or your own ISO through the KVM console.

  • PostgreSQL
  • MySQL
  • MariaDB
  • Redis
  • Valkey
  • MongoDB
  • Patroni
  • PgBouncer
  • HAProxy
  • pgBackRest

FAQ

Databases, answered.

Which server should I start with for PostgreSQL or MySQL?

A Pro 32 is a sound default: 32 cores, 384 GB of DDR5 and 2 × 3.84 TB NVMe Gen5 for $749/mo. Move to a Pro 48 or Pro 64 when your working set outgrows RAM or you need more than about 3 TB of mirrored storage. Our engineers can help you size it from your current metrics.

Do you offer managed databases?

No. Servers are unmanaged by default: you get full root access and run the database engine, upgrades and backups yourself. Our engineers handle hardware, network and platform issues 24/7, and help with operating-system questions on a best-effort basis.

Is replication traffic between my servers billed?

No. Servers in the same location can share a free private VLAN, and internal traffic is not billed. Public traffic is unmetered too, so replicating to another location adds no transfer cost either.

How should I set up the NVMe drives for a database?

Mirror them: RAID 1 with mdadm or a ZFS mirror on two drives, or RAID 10 across the four drives of a Pro 64. That protects you from a single drive failure. Avoid parity RAID for write-heavy databases, and keep backups on another server.

Can I keep a replica in another region?

Yes. Private VLANs connect servers within one location, so link regions with WireGuard or TLS-encrypted replication over the public network. Traffic is unmetered, and Pro 32 and Pro 48 are available in eight locations across North America, Europe and Asia-Pacific.

Still have a question?Tickets for customers, written quotes for projects.How to reach us

Start with Pro 32.

Our top pick for databases costs $749/mo with unmetered traffic and DDoS protection included. Or let an engineer size the whole setup with you.

  • No setup fees
  • Unmetered traffic
  • Cancel anytime