ab63c1ccc5 | ||
---|---|---|
defaults | ||
handlers | ||
meta | ||
tasks | ||
templates | ||
tests | ||
vars | ||
.gitignore | ||
.travis.yml | ||
LICENSE | ||
README.md | ||
Vagrantfile |
README.md
MySQL vendors for Debian Ansible role
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 / 10.3 |
Debian Jessie | MariaDB Galera Cluster | Upstream | 10.1 / 10.2 |
Debian Jessie | Percona server | Upstream | 5.5 / 5.6 / 5.7 |
Debian Stretch | MariaDB | Debian | 10.1 |
Debian Stretch | MariaDB | Upstream | 10.1 / 10.2 / 10.3 |
Debian Stretch | MariaDB Galera Cluster | Upstream | 10.1 / 10.2 |
Notes
- MySQL 5.6 on Jessie needs backports repository
- MySQL server no longer exists on Debian Stretch
- Percona Server is not available (soon?) on Debian Stretch
- Galera Cluster is experimental
- Due to Vagrant + Docker limitation (private network), replication/galera can't be checked with Travis
- If you need to test this role with Vagrant, you must install hostmanager plugin:
vagrant plugin install vagrant-hostmanager
Requirements
None.
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
.
mysql_extra_config
: key/value hash see default vars file
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.2mysql_mariadb_repository
: MariaDB upstream APT repository (see: MariaDB repositories tool)mysql_percona_version
: 5.5 / 5.6 / 5.7mysql_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
Donation
If this code helped you, or if you’ve used them for your projects, feel free to buy me some 🍻
- Bitcoin:
1BQwhBeszzWbUTyK4aUyq3SRg7rBSHcEQn
- Ethereum:
63abe6b2648fd892816d87a31e3d9d4365a737b5
- Litecoin:
LeNDw34zQLX84VvhCGADNvHMEgb5QyFXyD
- Monero:
45wbf7VdQAZS5EWUrPhen7Wo4hy7Pa7c7ZBdaWQSRowtd3CZ5vpVw5nTPphTuqVQrnYZC72FXDYyfP31uJmfSQ6qRXFy3bQ
No crypto-currency? ⭐ the project is also a way of saying thank you! 😎
Author Information
- Twitter: @hanxhx_