The Charm Store will undergo scheduled database maintenance on July 5, 2026 22:00 to July 6, 02:00 UTC. During this time, you may be unable to access charm and bundle metadata or publish updates. No user action is required and services will automatically resume once maintenance is complete.

Charmed MySQL

Canonical Publisher

Platform:

Ubuntu
26.04 24.04 22.04
Channel Revision Published Runs on
8.0/stable 444 22 Jan 2026
Ubuntu 22.04
8.0/stable 442 22 Jan 2026
Ubuntu 22.04
8.0/stable 443 22 Jan 2026
Ubuntu 22.04
8.0/candidate 444 08 Jan 2026
Ubuntu 22.04
8.0/candidate 442 08 Jan 2026
Ubuntu 22.04
8.0/candidate 443 08 Jan 2026
Ubuntu 22.04
8.0/beta 493 15 Apr 2026
Ubuntu 22.04
8.0/beta 494 15 Apr 2026
Ubuntu 22.04
8.0/beta 492 15 Apr 2026
Ubuntu 22.04
8.0/edge 506 18 Jun 2026
Ubuntu 22.04
8.0/edge 505 18 Jun 2026
Ubuntu 22.04
8.0/edge 504 18 Jun 2026
Ubuntu 22.04
8.4/beta 500 28 Apr 2026
Ubuntu 24.04
8.4/beta 499 28 Apr 2026
Ubuntu 24.04
8.4/beta 498 28 Apr 2026
Ubuntu 24.04
8.4/edge 509 26 Jun 2026
Ubuntu 26.04 Ubuntu 24.04
8.4/edge 508 26 Jun 2026
Ubuntu 26.04 Ubuntu 24.04
8.4/edge 507 26 Jun 2026
Ubuntu 26.04 Ubuntu 24.04
8.4/edge 503 08 Jun 2026
Ubuntu 26.04 Ubuntu 24.04
8.4/edge 502 08 Jun 2026
Ubuntu 26.04 Ubuntu 24.04
8.4/edge 501 08 Jun 2026
Ubuntu 26.04 Ubuntu 24.04
juju deploy mysql --channel 8.0/stable

charms.mysql.v0.backups

MySQL helper class for backups and restores.

The MySQLBackups class can be instantiated by a MySQL charm , and contains event handlers for list-backups, create-backup and restore backup actions. These actions must be added to the actions.yaml file.

An example of instantiating the MySQLBackups:

from charms.data_platform_libs.v0.s3 import S3Requirer
from charms.mysql.v0.backups import MySQLBackups
from charms.mysql.v0.backups import MySQLBase


class MySQL(MySQLBase):
    def __init__(self, *args):
        super().__init__(*args)

        self.s3_integrator = S3Requirer(self, "s3-integrator")
        self.backups = MySQLBackups(self, self.s3_integrator)

    @property
    def s3_integrator_relation_exists(self) -> bool:
        # Returns whether a relation with the s3-integrator exists
        return bool(self.model.get_relation(S3_INTEGRATOR_RELATION_NAME))

    def is_unit_blocked(self) -> bool:
        # Returns whether the unit is in blocked state and should run any operations
        return False

class MySQLBackups

Description

Encapsulation of backups for MySQL. None

Methods

MySQLBackups. __init__( self , charm , s3_integrator: S3Requirer )

MySQLBackups. get_binlogs_collector_config( self )

Return binlogs collector service config file.

Description

Returns: dict of binlogs collector service config