2018-03-18 00:47:35 +07:00
|
|
|
|
MariaDB (MySQL) Ansible role for Debian
|
|
|
|
|
=======================================
|
2015-07-12 15:42:46 +07:00
|
|
|
|
|
2024-08-26 22:51:23 +07:00
|
|
|
|
[![Ansible Galaxy](http://img.shields.io/badge/ansible--galaxy-HanXHX.mysql-blue.svg)](https://galaxy.ansible.com/HanXHX/mysql) ![GitHub Workflow Status (master)](https://img.shields.io/github/actions/workflow/status/hanxhx/ansible-mysql/molecule.yml?branch=master)
|
2015-10-08 00:17:27 +07:00
|
|
|
|
|
2018-03-18 00:47:35 +07:00
|
|
|
|
Install and configure MariaDB (Galera Cluster). Manage replication (master/slave). Create users and databases.
|
2016-09-25 21:04:36 +07:00
|
|
|
|
|
2024-08-26 22:51:23 +07:00
|
|
|
|
| OS | Origin | MariaDB versions |
|
|
|
|
|
|:--------------------:|:----------|:-----------------|
|
|
|
|
|
| Debian Bookworm (12) | Debian | 10.11 |
|
|
|
|
|
| Debian Bookworm (12) | Upstream | From 10.11 |
|
|
|
|
|
|
|
|
|
|
If you need to manage previous Debian versions, please use the [latest managed version](https://github.com/HanXHX/ansible-mysql/releases/tag/2.2.1).
|
2021-09-02 23:17:54 +07:00
|
|
|
|
|
2017-06-28 21:15:44 +07:00
|
|
|
|
|
|
|
|
|
Notes
|
|
|
|
|
-----
|
|
|
|
|
|
2024-08-27 16:28:39 +07:00
|
|
|
|
* Galera Cluster is experimental. Feel free to test it and report issues.
|
2015-07-13 20:22:42 +07:00
|
|
|
|
|
2015-07-12 15:42:46 +07:00
|
|
|
|
Requirements
|
|
|
|
|
------------
|
|
|
|
|
|
2024-08-26 22:51:23 +07:00
|
|
|
|
- Ansible - see [meta/main.yml](meta/main.yml)
|
|
|
|
|
- Collections: see [requirements.yml](requirements.yml)
|
2015-07-12 15:42:46 +07:00
|
|
|
|
|
|
|
|
|
Role Variables
|
|
|
|
|
--------------
|
|
|
|
|
|
2019-04-16 18:55:38 +07:00
|
|
|
|
- `mariadb_use_galera`: set true to configure and install Galera Cluster
|
2015-07-13 20:22:42 +07:00
|
|
|
|
|
|
|
|
|
### Configuration
|
|
|
|
|
|
2015-08-11 04:45:01 +07:00
|
|
|
|
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`.
|
|
|
|
|
|
2018-03-17 23:28:54 +07:00
|
|
|
|
- `mariadb_extra_config`: key/value hash see [default vars file](defaults/main.yml)
|
2015-08-11 04:45:01 +07:00
|
|
|
|
|
2015-07-13 20:22:42 +07:00
|
|
|
|
### Databases
|
|
|
|
|
|
2018-03-17 23:28:54 +07:00
|
|
|
|
- `mariadb_databases`: list...
|
2015-07-13 20:22:42 +07:00
|
|
|
|
|
|
|
|
|
### Users
|
|
|
|
|
|
|
|
|
|
Example:
|
|
|
|
|
|
|
|
|
|
```
|
2018-03-17 23:28:54 +07:00
|
|
|
|
mariadb_users:
|
2019-01-25 17:42:04 +07:00
|
|
|
|
- name: 'lorem'
|
2015-07-13 20:22:42 +07:00
|
|
|
|
password: '123'
|
2019-01-25 17:42:04 +07:00
|
|
|
|
priv: lorem.*:ALL
|
|
|
|
|
host: 'localhost'
|
|
|
|
|
- name: 'ipsum'
|
|
|
|
|
password: '465'
|
|
|
|
|
priv: ipsum.*:ALL
|
|
|
|
|
host_all: yes
|
2015-07-13 20:22:42 +07:00
|
|
|
|
```
|
|
|
|
|
|
2024-08-26 22:51:23 +07:00
|
|
|
|
Check "priv" syntax in [mysql\_user module documentation](https://docs.ansible.com/ansible/latest/collections/community/mysql/mysql_user_module.html)
|
2015-07-13 20:22:42 +07:00
|
|
|
|
|
|
|
|
|
### Packaging
|
|
|
|
|
|
2022-02-28 16:11:30 +07:00
|
|
|
|
- `mariadb_upstream_version`: depends Debian version
|
2015-07-12 15:42:46 +07:00
|
|
|
|
|
2021-09-01 17:24:40 +07:00
|
|
|
|
### Other
|
|
|
|
|
|
2022-02-28 16:11:30 +07:00
|
|
|
|
- `mariadb_debug_role`: boolean, set true to disable `no_log` hidding
|
2021-09-01 17:24:40 +07:00
|
|
|
|
|
2015-07-12 15:42:46 +07:00
|
|
|
|
Dependencies
|
|
|
|
|
------------
|
|
|
|
|
|
2015-07-13 20:22:42 +07:00
|
|
|
|
None.
|
2015-07-12 15:42:46 +07:00
|
|
|
|
|
2024-08-26 22:51:23 +07:00
|
|
|
|
If you need to dev this role locally with molecule
|
|
|
|
|
--------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Check available scenarios in [molecule](molecule) directory.
|
|
|
|
|
|
|
|
|
|
With `debian12_master_slave` scenario:
|
|
|
|
|
|
|
|
|
|
```commandline
|
|
|
|
|
molecule -v -c molecule/_shared/base.yml verify -s debian12_master_slave
|
|
|
|
|
```
|
|
|
|
|
|
2015-07-12 15:42:46 +07:00
|
|
|
|
Example Playbook
|
|
|
|
|
----------------
|
|
|
|
|
|
|
|
|
|
- hosts: servers
|
|
|
|
|
roles:
|
2024-08-26 22:51:23 +07:00
|
|
|
|
- { role: hanxhx.mysql, mariadb_origin: 'upstream' }
|
2015-07-12 15:42:46 +07:00
|
|
|
|
|
|
|
|
|
License
|
|
|
|
|
-------
|
|
|
|
|
|
2015-07-13 20:22:42 +07:00
|
|
|
|
GPLv2
|
2015-07-12 15:42:46 +07:00
|
|
|
|
|
2017-12-09 23:10:55 +07:00
|
|
|
|
Donation
|
|
|
|
|
--------
|
|
|
|
|
|
|
|
|
|
If this code helped you, or if you’ve used them for your projects, feel free to buy me some :beers:
|
|
|
|
|
|
|
|
|
|
- Bitcoin: `1BQwhBeszzWbUTyK4aUyq3SRg7rBSHcEQn`
|
2018-03-17 23:05:45 +07:00
|
|
|
|
- Ethereum: `0x63abe6b2648fd892816d87a31e3d9d4365a737b5`
|
2017-12-09 23:10:55 +07:00
|
|
|
|
- Litecoin: `LeNDw34zQLX84VvhCGADNvHMEgb5QyFXyD`
|
|
|
|
|
- Monero: `45wbf7VdQAZS5EWUrPhen7Wo4hy7Pa7c7ZBdaWQSRowtd3CZ5vpVw5nTPphTuqVQrnYZC72FXDYyfP31uJmfSQ6qRXFy3bQ`
|
|
|
|
|
|
|
|
|
|
No crypto-currency? :star: the project is also a way of saying thank you! :sunglasses:
|
|
|
|
|
|
2015-07-12 15:42:46 +07:00
|
|
|
|
Author Information
|
|
|
|
|
------------------
|
|
|
|
|
|
2016-09-25 21:04:36 +07:00
|
|
|
|
- Twitter: [@hanxhx_](https://twitter.com/hanxhx_)
|