What it is
MySQL is an open-source relational database, first developed by MySQL AB and now owned by Oracle. It was the M in the LAMP stack of Linux, Apache, MySQL and PHP that ran much of the early web, and it remains one of the most widely deployed databases, behind WordPress and a long list of business systems.
It stores data in tables queried with SQL, and its InnoDB engine provides transactions, row-level locking and foreign keys. It runs on a single server or with replicas, and every major cloud offers it as a managed service. MariaDB is a community fork started by its original developers, and the two remain largely compatible.
How I use it
- Rental Pilot's MySQL holds 3,900 rental agreements, 6,200 invoices, 43,000 fuel deliveries and 1.4 million rows of audit trail.
- Each company runs in its own database, with permissions enforced by the API.
- Production and a scrubbed sandbox share a server but never a database. The sandbox is refreshed from a production snapshot with customer emails scrubbed.
- EBS snapshots of the server are scheduled by Data Lifecycle Manager.
- Also behind the stucco company's job app, both company WordPress sites, and earlier systems at Brikers and Metal Mountain.
MySQL is the right tool for a transactional business system where the records must reconcile and the team knows it well. I use it for Rental Pilot because it has held the yard's agreements, invoices and payroll reliably since 2008, through a complete rebuild of the software on top.
Questions
How do you test changes without touching live customer data?
Rental Pilot has a sandbox database refreshed from a production snapshot, with customer emails scrubbed so nothing on the test side can mail a real customer. It shares the server but never a database.
Is each company's data kept separate?
Yes. Each Rental Pilot company runs in its own database, and permissions are enforced by the API.