A workload-tuned my.cnf in seconds — production-grade connection sizing, innodb_buffer_pool_size + per-thread memory math sourced from the MySQL Reference Manual, with an OOM-risk check on every line it writes.
+OLTP / OLAP / Mixed+memory footprint analysis+OOM-risk warnings+runs in your browser
Buffer pool
13G
Max connections
1,400
Redo log (disk)
4G
Thread cache
175
Server profile
OS reserve auto-derived for a dedicated Linux MySQL box (kernel + systemd + sshd + monitoring + page-cache headroom).
Memory footprint
16 GB budget
Realistic96%
Worst-case149%
Buffer pool
Connections
OS reserve
Buffer pool13 GB
Engine overhead584 MB
Connections1.8 GB
OS reserve2.3 GB
RAM allocations only. Buffer pool absorbs whatever's left after OS reserve, log_buffer, and engine overhead. The redo log (shown separately above) lives on disk in #innodb_redo/ — it doesn't consume RAM. Per-thread budget uses realistic utilization (small buffers 50% active, tmp_table 5%).
Disk usage estimate
beyond user data volume
Redo log
4 GB
Fixed, in #innodb_redo/
Binlog (≈7 days)
34.2 GB – 205.1 GB
Range — depends on write rate
Slow log
≈500 MB
Rotates by file size
Estimates for OLTP workload. On a busy box, plan EBS/SSD for at least 209.6 GB of MySQL log volume in addition to your data volume.
This my.cnf is a defensible starting point for a 16 GB OLTP box on NVMe with up to 1,400 connections. JusDB tunes it against your actual query mix, index quality, and replication topology — usually in a single working session.