ansible-mysql/README.md

103 lines
2.7 KiB
Markdown
Raw Normal View History

2018-03-18 00:47:35 +07:00
MariaDB (MySQL) Ansible role for Debian
=======================================
2015-07-12 15:42:46 +07:00
[![Ansible Galaxy](http://img.shields.io/badge/ansible--galaxy-HanXHX.mysql-blue.svg)](https://galaxy.ansible.com/HanXHX/mysql) [![Build Status](https://app.travis-ci.com/HanXHX/ansible-mysql.svg?branch=master)](https://app.travis-ci.com/HanXHX/ansible-mysql)
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
| OS | Origin | MariaDB versions |
| --------------- | --------- | ----------------- |
| Debian Buster | Debian | 10.3 |
| Debian Buster | Upstream | Up from 10.3 |
| Debian Bullseye | Debian | 10.5 |
| Debian Bullseye | Upstream | Up from 10.5 |
Notes
-----
* 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`
2015-07-13 20:22:42 +07:00
2015-07-12 15:42:46 +07:00
Requirements
------------
- Ansible >=2.11
- Collections: community.general / community.mysql / community.crypto / ansible.posix
2015-07-12 15:42:46 +07:00
Role Variables
--------------
- `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
```
2016-09-25 21:04:36 +07:00
Check "priv" syntax in [mysql\_user module documentation](http://docs.ansible.com/mysql_user_module.html)
2015-07-13 20:22:42 +07:00
### Packaging
- `mariadb_upstream_version`: depends Debian version
2015-07-12 15:42:46 +07:00
### Other
- `mariadb_debug_role`: boolean, set true to disable `no_log` hidding
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
Example Playbook
----------------
- hosts: servers
roles:
- { 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 youve used them for your projects, feel free to buy me some :beers:
- Bitcoin: `1BQwhBeszzWbUTyK4aUyq3SRg7rBSHcEQn`
- 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_)