For a long time, I’ve installed MySQL within my development virtual machine (VM), loaded it with a minimal subset of production data, and pointed the database hostname to 127.0.0.1 through the VM’s /etc/hosts file.
However, working from home, I realized that the my slower DSL connection did not affect the amount of time it took to pull a fresh subset of production data into the VM.
I finally went to the trouble of installing MySQL on the host side, and configuring everything to work with that, so that filling it does not require the data to cross any hypervisor boundaries at all. And I learned some things!
- The installer sets it up to launch as
_mysqluser - Using the wrong CA certificate causes padding errors
- MySQL 8.0.14+ allows a separate "administrative management" port
- MySQL’s
AES_ENCRYPT()function makes the worst possible choice by default - The speedup is dominated by MySQL's disk access