mysql_replication – Управление репликацией MySQL
Описание
- Управляет репликацией сервера MySQL, получением статуса для следов и ведущих узлов и изменением хоста ведущего узла.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- PyMySQL (Python 2.7 и Python 3.X), или
- MySQLdb (Python 2.x)
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| ca_cert путь добавлено в 2.0 | Путь к сертификату Центра сертификации (CA). Этот параметр, если используется, должен указывать на тот же сертификат, что и используется сервером. псевдонимы: ssl_ca | |
| client_cert путь добавлено в 2.0 | Путь к сертификату открытого ключа клиента. псевдонимы: ssl_cert | |
| client_key путь добавлено в 2.0 | Путь к закрытому ключу клиента. псевдонимы: ssl_key | |
| config_file путь добавлено в 2.0 | Значение по умолчанию: "~/.my.cnf" | Указывает файл конфигурации, из которого необходимо считать имя пользователя и пароль. |
| connect_timeout целое число добавлено в 2.1 | Значение по умолчанию: 30 | Таймаут подключения при соединении с сервером MySQL. |
| login_host строка | Значение по умолчанию: "localhost" | Хост, на котором работает база данных. |
| login_password строка | Пароль, используемый для аутентификации. | |
| login_port целое число | Значение по умолчанию: 3306 | Порт сервера MySQL. Требует, чтобы login_host был определен как что-то отличное от localhost, если используется login_port. |
| login_unix_socket строка | Путь к сокету Unix domain для локальных соединений. | |
| login_user строка | Имя пользователя, используемое для аутентификации. | |
| master_auto_position логическое добавлено в 2.0 |
| Использует ли хост репликацию на основе 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 строка |
| Режим работы модуля. Может быть getslave (SHOW SLAVE STATUS), getmaster (SHOW MASTER STATUS), changemaster (CHANGE MASTER TO), startslave (START SLAVE), stopslave (STOP SLAVE), resetslave (RESET SLAVE), resetslaveall (RESET SLAVE ALL) |
| relay_log_file строка | То же, что и переменная mysql. | |
| relay_log_pos целое число | То же, что и переменная mysql. |
Примечания
Примечание
- Требуется пакет PyMySQL (Python 2.7 и Python 3.X) или MySQL-python (Python 2.X) на удалённом хосте. Пакет Python можно установить с помощью apt-get install python-pymysql (Ubuntu; см. apt) или yum install python2-PyMySQL (RHEL/CentOS/Fedora; см. yum). Также можно использовать dnf install python2-PyMySQL для более новых версий Fedora; см. dnf.
- Оба
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
Статус
- Гарантии обратной совместимости этого модуля нет. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- 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.8/modules/mysql_replication_module.html