ansible-mysql/README.md

2.8 KiB

MySQL vendors for Debian Ansible role

Ansible Galaxy Build Status

Install and configure MySQL or MariaDB (Galera Cluster) or Percona Server. Manage replication (master/slave). Create users and databases.

OS Vendor Origin Managed versions
Debian Jessie MySQL Debian 5.5 / 5.6
Debian Jessie MariaDB Debian 10.0
Debian Jessie MariaDB Upstream 10.0 / 10.1 / 10.2
Debian Jessie MariaDB Galera Cluster Upstream 10.1 / 10.2
Debian Jessie Percona server Upstream 5.5 / 5.6 / 5.7

Requirements

None. But if you need MySQL 5.6 (from Debian respository), you must install backports.

Role Variables

  • mysql_origin: origin of the package ("default" or "upstream")
  • mysql_vendor: "mysql", "mariadb", "mariadb_galera" (only with MariaDB upstream 10.1) or "percona"

Configuration

  • mysql_root_password: root password (should be protected with vault)

If you need a feature you can't configure, you can use this list. These config will go to /etc/mysql/conf.d/01-extra.

Databases

  • mysql_databases: list...

Users

Example:

mysql_users:
  - name: 'kiki'
    password: '123'
    priv: hihi.*:ALL
    host: '%'

Check "priv" syntax in mysql_user module documentation

Packaging

  • mysql_mariadb_version: 10.0 / 10.1 / 10.2
  • mysql_mariadb_repository: MariaDB upstream APT repository (see: MariaDB repositories tool)
  • mysql_percona_version: 5.5 / 5.6 / 5.7
  • mysql_percona_repository: Percona upstream APT repository (see: Percona APT doc)
  • mysql_use_percona_apt: Force using Percona APT repository (useful when you want to use latest version of percona toolkits, xtrabackup... etc)

Dependencies

None.

Example Playbook

- hosts: servers
  roles:
     - { role: HanXHX.mysql, mysql_origin: 'upstream', mysql_vendor: 'mariadb' }

License

GPLv2

Author Information