postgresql_db – Добавление или удаление баз данных PostgreSQL на удалённом хосте.
Описание
- Добавление или удаление баз данных PostgreSQL на удалённом хосте.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- psycopg2
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| encoding - | Кодировка базы данных | |
| lc_collate - | Порядок сортировки (LC_COLLATE), используемый в базе данных. Должен соответствовать порядку сортировки шаблонной базы данных, если не используется template0. | |
| lc_ctype - | Классификация символов (LC_CTYPE), используемая в базе данных (например, нижний регистр, верхний регистр, ...). Должна соответствовать LC_CTYPE шаблонной базы данных, если не используется template0. | |
| login_host - | Хост, на котором работает база данных | |
| login_password - | Пароль, используемый для аутентификации | |
| login_unix_socket - | Путь к сокету Unix доменной области для локальных подключений | |
| login_user - | По умолчанию: "postgres" | Имя пользователя, используемое для аутентификации |
| maintenance_db - добавлено в 2.5 | По умолчанию: "postgres" | Значение задаёт начальную базу данных (также называемую базой данных обслуживания), к которой Ansible подключается. |
| name - / обязательно | Имя базы данных для добавления или удаления псевдонимы: db | |
| owner - | Имя роли, которая будет установлена в качестве владельца базы данных | |
| port - | По умолчанию: 5432 | Порт базы данных для подключения. |
| ssl_mode - добавлено в 2.3 |
| Определяет, будет ли и с каким приоритетом устанавливаться защищённое SSL TCP/IP-соединение с сервером. См. https://www.postgresql.org/docs/current/static/libpq-ssl.html для получения дополнительной информации о режимах. Значение по умолчанию prefer соответствует значению по умолчанию libpq. |
| ssl_rootcert - добавлено в 2.3 | Указывает имя файла, содержащего сертификат(ы) сертификационного центра SSL (CA). Если файл существует, сертификат сервера будет проверен на подпись одним из этих центров. | |
| state - |
| Состояние базы данных. present подразумевает, что база данных должна быть создана, если необходимо. absent подразумевает, что база данных должна быть удалена, если она существует. dump требует определения целевого объекта, в который будет произведена резервная копия базы данных. (Добавлена в 2.4) restore также требует определения целевого объекта, из которого будет восстановлена база данных. (Добавлена в 2.4) Формат резервной копии будет определён на основе имени целевого объекта. Поддерживаемые форматы сжатия для dump и restore: .bz2, .gz и .xz Поддерживаемые форматы для dump и restore: .sql и .tar |
| target - добавлено в 2.4 | Файл для создания резервной копии или восстановления из него. Используется, когда состояние — "dump" или "restore" | |
| target_opts - добавлено в 2.4 | Дополнительные аргументы для pg_dump или pg_restore. Используется, когда состояние — "dump" или "restore" | |
| template - | Шаблон, используемый для создания базы данных |
Примечания
Примечание
- Аутентификация по умолчанию предполагает, что вы либо входите как пользователь, либо используете sudo для
postgresучётной записи на хосте. - Этот модуль использует psycopg2, адаптер базы данных Python PostgreSQL. Вы должны убедиться, что psycopg2 установлен на хосте перед использованием этого модуля. Если удалённый хост — сервер PostgreSQL (что является случаем по умолчанию), то PostgreSQL также должен быть установлен на удалённом хосте. Для систем на основе Ubuntu установите пакеты
postgresql,libpq-dev, иpython-psycopg2на удалённом хосте перед использованием этого модуля. - Параметр ssl_rootcert требует как минимум версии Postgres 8.4 и psycopg2 версии 2.4.3.
Примеры
# Create a new database with name "acme"
- postgresql_db:
name: acme
# Create a new database with name "acme" and specific encoding and locale
# settings. If a template different from "template0" is specified, encoding
# and locale settings must match those of the template.
- postgresql_db:
name: acme
encoding: UTF-8
lc_collate: de_DE.UTF-8
lc_ctype: de_DE.UTF-8
template: template0
# Dump an existing database to a file
- postgresql_db:
name: acme
state: dump
target: /tmp/acme.sql
# Dump an existing database to a file (with compression)
- postgresql_db:
name: acme
state: dump
target: /tmp/acme.sql.gz
# Dump a single schema for an existing database
- postgresql_db:
name: acme
state: dump
target: /tmp/acme.sql
target_opts: "-n public"
Статус
- Данный модуль гарантирует отсутствие изменений в обратной совместимости в будущем. [stableinterface]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Команда разработчиков Ansible
Подсказка
Если вы обнаружите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/postgresql_db_module.html