Consolidating and migrating the shared MySQL estate
Servers, accounts and naming differed per service, so production and test databases could be confused. I set a standard, cleaned up, then moved production.
- MySQL
- mysqldump
- Linux
Specification
- Organisation
- SKKU Systems Consultant Group (SCG)
- Period
- 2023 – 2025
- Role
- Database operation, naming standard, migration
Context
Services used different database servers, accounts and naming conventions. Some databases could not be identified as production, development or test from their names alone.
A failure in a shared database affects several services at once. Without cleanup, the blast radius could not be predicted.
Approach
I cleaned up MySQL accounts and set standards for separating dev, prod and test, and for naming.
Deprecated databases were identified, and each database's size and active endpoints established.
Backups were taken with mysqldump and data migrated. Production was moved only after its blast radius had been established.
Boundaries
- Replication and an active-standby arrangement for production were reviewed, not built.
- No shareable measurement exists for this work, so no figure is claimed.