mysql_replication - Управление репликацией MySQL
Новая версия с 1.3.
Обзор
- Управляет репликацией сервера MySQL, получением статуса мастера/ведомого и изменением хоста мастера.
Требования
Ниже перечислены требования, необходимые на хосте, на котором будет выполняться этот модуль.
- PyMySQL (Python 2.7 и Python 3.X), или
- MySQLdb (Python 2.x)
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| config_file (добавлено в 2.0) | По умолчанию: ~/.my.cnf | Укажите файл конфигурации, из которого следует читать имя пользователя и пароль. |
| connect_timeout (добавлено в 2.1) | По умолчанию: 30 | Таймаут подключения при подключении к серверу MySQL. |
| login_host | По умолчанию: localhost | Хост, на котором работает база данных. |
| login_password | По умолчанию: None | Пароль, используемый для аутентификации. |
| login_port | По умолчанию: 3306 | Порт сервера MySQL. Требуется, чтобы login_host был определён как другой, чем localhost, если используется login_port. |
| login_unix_socket | По умолчанию: None | Путь к сокету Unix-домена для локальных подключений. |
| login_user | По умолчанию: None | Имя пользователя, используемое для аутентификации. |
| master_auto_position (добавлено в 2.0) | По умолчанию: None | Использует ли хост репликацию на основе GTID? |
| master_connect_retry | То же, что и переменная mysql | |
| master_host | То же, что и переменная mysql | |
| master_log_file | То же, что и переменная mysql | |
| master_log_pos | То же, что и переменная mysql | |
| master_password | То же, что и переменная mysql | |
| master_port | То же, что и переменная mysql | |
| master_ssl |
| То же, что и переменная mysql |
| master_ssl_ca | То же, что и переменная mysql | |
| master_ssl_capath | То же, что и переменная mysql | |
| master_ssl_cert | То же, что и переменная mysql | |
| master_ssl_cipher | То же, что и переменная mysql | |
| master_ssl_key | То же, что и переменная mysql | |
| master_user | То же, что и переменная mysql | |
| mode |
| Режим работы модуля. Может быть получить_ведомого (SHOW SLAVE STATUS), получить_мастера (SHOW MASTER STATUS), изменить_мастера (CHANGE MASTER TO), запустить_ведомого (START SLAVE), остановить_ведомого (STOP SLAVE), сбросить_ведомого (RESET SLAVE), сбросить_все_ведомых (RESET SLAVE ALL) |
| relay_log_file | То же, что и переменная mysql | |
| relay_log_pos | То же, что и переменная mysql | |
| ssl_ca (добавлено в 2.0) | По умолчанию: None | Путь к сертификату центра сертификации (CA). Если используется, этот параметр должен указывать тот же сертификат, что и на сервере. |
| ssl_cert (добавлено в 2.0) | По умолчанию: None | Путь к клиенту открытый ключ сертификат. |
| ssl_key (добавлено в 2.0) | По умолчанию: None | Путь к закрытому ключу клиента. |
Примечания
Примечание
- Требуется пакет PyMySQL (Python 2.7 и Python 3.X) или MySQL-python (Python 2.X) Python на удалённом хосте. В Ubuntu это можно сделать с помощью apt-get install python-pymysql. (См. apt.) В CentOS/Fedora это делается с помощью yum install python2-PyMySQL. (См. yum.)
- И
login_passwordиlogin_userнеобходимы при передаче учётных данных. Если ни один из них не указан, модуль попытается прочитать учётные данные из~/.my.cnf, и в конечном счёте вернётся к использованию стандартного входа MySQL «root» без пароля.
Примеры
# Stop mysql slave thread
- mysql_replication:
mode: stopslave
# Get master binlog file name and binlog position
- mysql_replication:
mode: getmaster
# Change master to master server 192.0.2.1 and use binary log 'mysql-bin.000009' with position 4578
- mysql_replication:
mode: changemaster
master_host: 192.0.2.1
master_log_file: mysql-bin.000009
master_log_pos: 4578
# Check slave status using port 3308
- mysql_replication:
mode: getslave
login_host: ansible.example.com
login_port: 3308
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Автор
- Balazs Pocze (@banyek)
Подсказка
Если вы заметите какие-либо проблемы в этом руководстве, вы можете изменить этот документ для улучшения.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/mysql_replication_module.html