Charmed MySQL Documentation

Charmed MySQL Documentation

The Charmed MySQL Operator delivers automated operations management from day 0 to day 2 on the MySQL Community Edition relational database. It is an open source, end-to-end, production-ready data platform on top of Juju.

MySQL is the world’s most popular open source database. A relational database stores data in separate tables rather than putting all the data in one big storeroom. The database structure is organized into physical files optimized for speed. The logical data model, with objects such as data tables, views, rows, and columns, offers a flexible programming environment.

This MySQL operator charm comes in two flavours to deploy and operate MySQL on physical/virtual machines and Kubernetes. Both offer features such as replication, TLS, password rotation, and easy to use integration with applications. The Charmed MySQL Operator meets the need of deploying MySQL in a structured and consistent manner while allowing the user flexibility in configuration. It simplifies deployment, scaling, configuration and management of MySQL in production at scale in a reliable way.

"Charmed MySQL", “MariaDB”, “OSM MariaDB”, “Percona Cluster” or “Mysql Innodb Cluster”?

This “Charmed MySQL” operator is a new “Charmed SDK”-based charm to replace a “MariaDB”, “OSM MariaDB”, “Percona Cluster” and “Mysql Innodb Cluster” operators.
Read more about legacy charms here.

Project and community

Charmed MySQL is an official distribution of MySQL. It’s an open-source project that welcomes community contributions, suggestions, fixes and constructive feedback.

In this documentation

Get started - a hands-on introduction to using Charmed MySQL operator for new users
How-to guides
Step-by-step guides covering key operations and common tasks
Technical information - specifications, APIs, architecture
Concepts - discussion and clarification of key topics


Level Path Navlink
1 tutorial Tutorial
2 t-overview 1. Introduction
2 t-setup-environment 2. Set up the environment
2 t-deploy-charm 3. Deploy MySQL
2 t-managing-units 4. Manage units
2 t-manage-passwords 5. Manage passwords
2 t-integrations 6. Integrate applications
2 t-enable-security 7. Enable security
2 t-cleanup-environment 8. Cleanup environment
1 how-to How To
2 h-setup Setup
3 h-deploy-lxd Deploy on LXD
3 h-manage-units Manage units
3 h-enable-encryption Enable encryption
3 h-manage-app Manage applications
3 h-async-replication Async replication
2 h-to-manage-backups Backup
3 h-configure-s3-aws Configure S3 AWS
3 h-configure-s3-radosgw Configure S3 RadosGW
3 h-create-and-list-backups Create and List Backups
3 h-restore-backup Restore Backup
3 h-migrate-cluster-via-restore Restore foreign Backup
2 h-enable-monitoring Monitoring (COS)
2 h-upgrade Upgrade
3 h-upgrade-intro Intro
3 h-upgrade-major Major upgrade
3 h-rollback-major Major rollback
3 h-upgrade-minor Minor upgrade
3 h-rollback-minor Minor rollback
2 h-develop Develop
3 h-develop-intro Intro
3 h-develop-mycharm Use in my charm
3 h-develop-migratedataby Migrate data by
4 h-develop-mysqldump mysqldump
4 h-develop-mydumper mydumper
4 h-develop-backuprestore backup/restore
3 h-troubleshooting Troubleshooting
3 h-legacy-charm Legacy charm
1 reference Reference
2 r-releases-group Release Notes
3 r-releases All releases
3 r-releases-rev203 Revision 203
3 r-releases-rev196 Revision 196
3 r-releases-rev151 Revision 151
2 r-requirements Requirements
2 r-contributing Contributing
2 r-testing Testing
2 r-actions Actions
2 r-configurations Configurations
2 r-profiles Profiles
2 r-libraries Libraries
2 r-integrations Integrations
2 r-contacts Contacts
1 explanation Explanation
2 e-architecture Architecture
2 e-interfaces Interfaces/endpoints
2 e-statuses Statuses
2 e-users Users
2 e-logs Logs
2 e-juju-details Juju
2 e-legacy-charm Legacy charm


Mapping table
Path Location