Spec-Zone.ru › Ansible 2.6

mysql_db - Добавление или удаление баз данных MySQL на удалённом хосте.

  • Описание
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Статус
  • Техническое обслуживание
    • Автор

Описание

  • Добавление или удаление баз данных MySQL на удалённом хосте.

Требования

Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.

  • MySQLdb (Python 2.x)
  • PyMySQL (Python 2.7 и Python 3.X), или
  • mysql (бинарник командной строки)
  • mysqldump (бинарник командной строки)

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
collation
Режим сортировки (collation). Это относится только к новым таблицам/базам данных и не обновляет существующие, это ограничение MySQL.
config_file
(добавлен в 2.0)
По умолчанию:
"~/.my.cnf"
Укажите конфигурационный файл, из которого будут считываться имя пользователя и пароль.
connect_timeout
(добавлен в 2.1)
По умолчанию:
30
Таймаут подключения при подключении к серверу MySQL.
encoding
Режим кодировки, примеры: utf8 или latin1_swedish_ci
login_host По умолчанию:
"localhost"
Хост, на котором работает база данных.
login_password
Пароль, используемый для аутентификации.
login_port По умолчанию:
3306
Порт сервера MySQL. Требуется, чтобы login_host был определён как другой, чем localhost, если используется login_port.
login_unix_socket
Путь к сокету Unix-домена для локальных подключений.
login_user
Имя пользователя, используемое для аутентификации.
name
обязательно
Имя базы данных для добавления или удаления
name=all Может быть указано только если state равен dump или import.
если name=all Работает как опция --all-databases для mysqldump (Добавлена в 2.0)

псевдонимы: db
quick
bool

(добавлен в 2.1)
    Варианты:
  • нет
  • да ←
Вариант, используемый для выгрузки больших таблиц
single_transaction
bool

(добавлен в 2.1)
    Варианты:
  • нет ←
  • да
Выполнить выгрузку в одной транзакции
ssl_ca
(добавлен в 2.0)
Путь к сертификату Удостоверяющего центра (CA). Если используется, этот параметр должен указывать тот же сертификат, что и сервер.
ssl_cert
(добавлен в 2.0)
Путь к сертификату открытого ключа клиента.
ssl_key
(добавлен в 2.0)
Путь к закрытому ключу клиента.
state
    Варианты:
  • present ←
  • absent
  • dump
  • import
Состояние базы данных
target
Местоположение на удалённом хосте файла дампа для чтения или записи. Поддерживаются не сжатые файлы SQL (.sql) а также сжатые файлами bzip2 (.bz2), gzip (.gz) и xz (Добавлена в 2.0).

Примечания

Примечание

  • Требуется пакет PyMySQL (Python 2.7 и Python 3.X) или MySQL-python (Python 2.X) на удалённом хосте, а также бинарники mysql и mysqldump.
  • Этот модуль не идемпотентен, когда state равен import, и будет импортировать файл дампа каждый раз, если запускается более одного раза.
  • Требуется пакет 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' без пароля.

Примеры

- name: Create a new database with name 'bobdata'
  mysql_db:
    name: bobdata
    state: present

# Copy database dump file to remote host and restore it to database 'my_db'
- name: Copy database dump file
  copy:
    src: dump.sql.bz2
    dest: /tmp
- name: Restore database
  mysql_db:
    name: my_db
    state: import
    target: /tmp/dump.sql.bz2

- name: Dump all databases to hostname.sql
  mysql_db:
    state: dump
    name: all
    target: /tmp/{{ inventory_hostname }}.sql

- name: Import file.sql similar to mysql -u <username> -p <password> < hostname.sql
  mysql_db:
    state: import
    name: all
    target: /tmp/{{ inventory_hostname }}.sql

Статус

Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется обратной совместимостью.

Техническое обслуживание

Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.

Список других модулей, также поддерживаемых сообществом Ansible, см. здесь.

Автор

  • Команда Ansible Core

Подсказка

Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/mysql_db_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API