postgresql_db - Добавление или удаление баз данных PostgreSQL на удалённом хосте.
Краткое описание
- Добавление или удаление баз данных PostgreSQL на удалённом хосте.
Требования (к хосту, на котором выполняется модуль)
- psycopg2
Параметры
| параметр | обязательный | значение по умолчанию | возможные значения | комментарии |
|---|---|---|---|---|
| encoding | нет | Кодировка базы данных | ||
| lc_collate | нет | Порядок сортировки (LC_COLLATE) для использования в базе данных. Должен совпадать с порядком сортировки шаблонной базы данных, если в качестве шаблона не используется template0. | ||
| lc_ctype | нет | Классификация символов (LC_CTYPE) для использования в базе данных (например, lower, upper, ...). Должен совпадать с LC_CTYPE шаблонной базы данных, если в качестве шаблона не используется template0. | ||
| login_host | нет | Хост, на котором запущена база данных | ||
| login_password | нет | Пароль для аутентификации | ||
| login_unix_socket | нет | Путь к Unix-сокету доменной области для локальных подключений | ||
| login_user | нет | postgres | Имя пользователя для аутентификации | |
| name | да | Имя базы данных для добавления или удаления | ||
| owner | нет | Имя роли, которая будет установлена как владелец базы данных | ||
| port | нет | 5432 | Порт базы данных для подключения. | |
| ssl_mode (добавлено в 2.3)
| нет | prefer |
| Определяет, будет ли и с каким приоритетом устанавливаться защищённое SSL TCP/IP соединение с сервером. Дополнительную информацию о режимах см. на https://www.postgresql.org/docs/current/static/libpq-ssl.html. Значение по умолчанию prefer соответствует значению по умолчанию libpq. |
| ssl_rootcert (добавлено в 2.3)
| нет | Указывает имя файла, содержащего сертификат(ы) центра сертификации SSL (CA). Если файл существует, сертификат сервера будет проверен на подпись одним из этих центров. | ||
| state | нет | present |
| Состояние базы данных. present подразумевает создание базы данных при необходимости. absent подразумевает удаление базы данных при её наличии. dump требует определения целевого объекта, в который будет сделана резервная копия базы данных. (Добавлено в 2.4) restore также требует определения целевого объекта, из которого будет восстановлена база данных. (Добавлено в 2.4) Формат резервной копии будет определён на основе имени целевого объекта. Поддерживаемые форматы сжатия для dump и restore: .bz2, .gz и .xz Поддерживаемые форматы для dump и restore: .sql и .tar |
| target (добавлено в 2.4)
| нет | Файл для резервного копирования или восстановления из него. Используется при state = "dump" или "restore" | ||
| target_opts (добавлено в 2.4)
| нет | Дополнительные параметры для pg_dump или pg_restore. Используется при state = "dump" или "restore" | ||
| template | нет | Шаблон, используемый для создания базы данных |
Примеры
# 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"
Примечания
Примечание
- По умолчанию предполагается, что вы входите как пользователь или используете sudo с правами пользователя
postgresна хосте. - Этот модуль использует psycopg2, адаптер базы данных Python для PostgreSQL. Необходимо убедиться, что psycopg2 установлен на хосте перед использованием этого модуля. Если удалённый хост — сервер PostgreSQL (что является стандартным случаем), то PostgreSQL также должен быть установлен на удалённом хосте. Для систем на базе Ubuntu необходимо установить пакеты
postgresql,libpq-dev, иpython-psycopg2на удалённом хосте перед использованием этого модуля. - Для параметра ssl_rootcert требуется как минимум версия Postgres 8.4 и psycopg2 2.4.3.
Статус
Этот модуль помечен как stableinterface, что означает, что разработчики гарантируют отсутствие изменений интерфейса, несовместимых со старыми версиями.
Для получения помощи в разработке модулей обратитесь к Документации сообщества и руководству по участию, Руководству по тестированию 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.4/postgresql_db_module.html