isnotbadforyou.com/mysql

MySQL is not bad for you... ...it's the part where you lose the database that hurts

How to install, secure, and actually back up MySQL on a home or small-business server without losing everything in a Florida power outage.

The math: MySQL is free, powerful, and runs half the internet — including most small-business websites and home automation systems. The danger isn't the software. It's the default install, which leaves root with no password, remote access wide open, and zero automatic backups. In North Port, where FPL outages spike every hurricane season, an unclean shutdown can corrupt a database faster than you can say 'storm surge.' One lost database can mean lost customer records, a dead website, or an IoT dashboard that never recovers.

1 Start with a real book, not a YouTube rabbit hole

MySQL has decent free documentation but the official manual reads like a legal brief. Learning the Basics: MySQL by O'Reilly gives you a structured path from install to your first working database in a weekend. I wasted two weeks watching fragmented videos before I bought this. Forty dollars saved me from re-doing everything wrong twice.

Start Here
Learning MySQL: Get a Handle on Your Data, 2nd Edition by O'Reilly Media
$39.99 ★★★★☆ 4.4 (1,200+ reviews)
"It covers MariaDB too, which is what Ubuntu actually installs when you type 'mysql' — most videos skip that distinction and cost you an hour of confusion."
⚠️ Avoid: Skip W3Schools as your only reference — it teaches syntax but not security, indexing, or backup strategy, which are the three things that will actually break you.
Check Price on Amazon →

2 Run MySQL on hardware that survives Florida summers

A full server in a North Port garage will hit 95°F ambient before noon in July. The Raspberry Pi 5 runs MySQL fine for small databases, draws 5 watts, and fits in a climate-controlled closet next to your router. I run mine 24/7 and the FPL bill didn't budge. Pair it with an SSD, not a microSD card — cards fail under constant database writes within months.

Step 1
Raspberry Pi 5 8GB Starter Kit with Active Cooler and USB-C Power Supply
$89.99 ★★★★☆ 4.7 (3,400+ reviews)
"The 8GB model handles WordPress + MySQL + PHPMyAdmin simultaneously without thrashing, which the 4GB cannot reliably do."
Check Price on Amazon →

3 Secure the install the same day you run it

The default MySQL install on any Linux system leaves root accessible with no password and a test database anyone can delete. Run mysql_secure_installation immediately after setup — it takes four minutes and closes every obvious door. Then install phpMyAdmin so you have a visual interface instead of typing raw SQL at 11pm when something breaks. This combination is the difference between a working database and a compromised one.

Don't Skip
Raspberry Pi 400GB Samsung T7 Shield Portable SSD USB 3.2
$64.99 ★★★★☆ 4.8 (28,000+ reviews)
"External SSD means your database storage survives a Pi swap, a firmware flash, or handing the project to someone else — your data lives on the drive, not the board."
⚠️ Avoid: Do not store your MySQL data directory on a microSD card. They are not rated for continuous random writes and will fail silently — you will notice when the database simply stops responding one morning.
Check Price on Amazon →

4 Automate backups before the next hurricane season

Charlotte County gets named storms. FPL restores power in days, not hours. If your MySQL server dies during a storm and your last backup is six months old, that is not a tech problem anymore. AutoMySQLBackup is a free script that dumps your databases nightly and rotates old files automatically. Pair it with a USB drive or a Backblaze B2 cloud account — $7 a month for offsite copies is cheap insurance.

The Fix
SanDisk 256GB Ultra Dual Drive USB Type-C Flash Drive
$19.99 ★★★★☆ 4.7 (45,000+ reviews)
"Plugs into the Pi's USB-C port, mounts as a backup target, and costs less than one hour of data recovery services — and data recovery services often can't help with a corrupted MySQL database anyway."
⚠️ Avoid: Do not rely on your hosting provider's 'automatic backups' as your only copy — read the fine print. Many shared hosts only keep 7 days and restore is not guaranteed. Own your backups.
Check Price on Amazon →

5 Add a UPS so a brownout doesn't corrupt the database

FPL's grid in North Port runs fine most of the year, but summer storm season brings voltage sags and fast outages that are worse for running databases than a clean shutdown. An uninterruptible power supply gives the server 10 to 20 minutes to finish writes and shut down gracefully. The APC BE600M1 is the one I put under my desk — it auto-shuts the Pi cleanly via USB signal when battery gets low. One corrupt database taught me this lesson. You don't need to learn it yourself.

Game Changer
APC UPS 600VA UPS Battery Backup and Surge Protector, BE600M1
$64.99 ★★★★☆ 4.7 (22,000+ reviews)
"The USB port communicates battery status to the Pi so a shutdown script can trigger automatically — passive surge protectors don't do this and give you false confidence."
Check Price on Amazon →

6 Monitor the database without staring at a terminal

Adminer is a single PHP file that gives you a clean browser-based MySQL dashboard — lighter than phpMyAdmin and faster to set up. But for production monitoring, add Netdata on the same Pi: it shows you query load, disk writes, and CPU temperature in real time from your phone. When the Pi's CPU hits 80°C in a hot closet in August, you want to know before the database crashes, not after.

Pro Tip
Govee WiFi Thermometer Hygrometer H5179, Smart Sensor with App Alerts
$17.99 ★★★★☆ 4.6 (14,000+ reviews)
"Put this in whatever room your server lives in — if the AC fails and the room hits 90°F, you get a phone alert before the hardware gives out, which Netdata alone won't tell you."
Check Price on Amazon →
DIY total: $298 total for everything on this page
vs. professional: Managed database server (DigitalOcean or RDS): $50–$200/month ongoing, or $150–$500/hr for a consultant to clean up a compromised or corrupted install
You save: $500+ in the first year versus managed hosting, more if you ever need emergency data recovery

The database was never the problem — it was the default install sitting open like an unlocked front door in a hurricane zone.

isnotbadforyou.com/mysql · A North Port neighbor's honest take

This page may contain affiliate links. If you buy something through them, we earn a small commission at no extra cost to you. We only recommend things we'd use ourselves.