Legacy charm¶
Historically, there were several legacy charms that provided MySQL/MariaDB functionality:
Legacy VM charms |
Legacy K8s charms |
|---|---|
These legacy charms provided endpoints mysql and mysql-root for the interface mysql.
This Charmed MySQL operator is a modern charm - i.e. it is based on the Ops framework and designed to replace all legacy interfaces and endpoints of legacy charms.
The modern charm provides old endpoints as well as the new endpoint database for the interface mysql_client.
See all available endpoints/interfaces for Charmed MySQL on Charmhub:
The default track latest vs. 8.0¶
The default track has been switched from the latest to 8.0 for both VM and K8s MySQL charms.
This was done to ensure all new deployments use a modern codebase. For more context, see this Discourse topic.
We strongly advise against using the latest track, as a future charm upgrade may result in a MySQL version incompatible with an integrated application. Track 8.0 guarantees MySQL 8.0 deployment only.
The track latest is closed to avoid confusion.
How to migrate from legacy to modern charm¶
The modern charm provides temporary support for legacy interfaces.
Quick try: Relate the current application with new charm using endpoint mysql (set the channel to 8.0/stable). No extra changes are necessary:
mysql:
charm: mysql
channel: 8.0/stable
trust: true
mysql:
charm: mysql-k8s
channel: 8.0/stable
trust: true
Note
The trust option must be enabled if Role Based Access Control (RBAC) is in use in your Kubernetes.
Proper migration: Migrate the application to the new interface mysql_client.
The application will connect MySQL using data_interfaces library from data-platform-libs via the database endpoint.
Caution
In-place upgrades from the legacy charm to the modern, Ops-based charm are not supported.
To migrate database data, see the following guides:
How to deploy a legacy MySQL charm¶
mariadb:
charm: mariadb
channel: latest/stable
percona-cluster:
charm: percona-cluster
channel: latest/stable
osm-mariadb:
charm: charmed-osm-mariadb-k8s
channel: latest/stable
mysql:
charm: mysql-innodb-cluster
channel: 8.0/stable
Supported MySQL versions by modern charm¶
Both K8s and VM modern charms support MySQL 8.0 (based on Jammy/22.04 series) only.
Please contact us if you need different versions/series.
Supported architectures¶
Currently, all modern charm revisions support amd64. Later revisions introduced support for arm64, and s390x.
See the Release notes for more information.