community.postgresql.postgresql_schema – Добавление или удаление схемы PostgreSQL
Примечание
Этот плагин является частью коллекции community.postgresql (версия 1.0.0).
Для его установки используйте: ansible-galaxy collection install community.postgresql.
Для использования в книге задач укажите: community.postgresql.postgresql_schema.
Обзор
- Добавление или удаление схемы PostgreSQL.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- psycopg2
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| ca_cert строка | Указывает имя файла, содержащего сертификат(ы) центра сертификации SSL (CA). Если файл существует, сертификат сервера будет проверен на подпись одним из этих центров. псевдонимы: ssl_rootcert | |
| cascade_drop булево |
| Удалить схему с CASCADE для удаления дочерних объектов. |
| database строка | Значение по умолчанию: "postgres" | Имя базы данных, к которой необходимо подключиться и добавить или удалить схему. псевдонимы: db, login_db |
| login_host строка | Хост, на котором работает база данных. | |
| login_password строка | Пароль, используемый для аутентификации. | |
| login_unix_socket строка | Путь к сокету Unix для локальных соединений. | |
| login_user строка | Значение по умолчанию: "postgres" | Имя пользователя, используемое для аутентификации. |
| name строка / обязательно | Имя схемы для добавления или удаления. псевдонимы: schema | |
| owner строка | Имя роли, которая будет установлена в качестве владельца схемы. | |
| port целое число | Значение по умолчанию: 5432 | Порт базы данных для подключения. псевдонимы: login_port |
| session_role строка | Переключиться на session_role после подключения. Указанная роль session_role должна быть ролью, членом которой является текущий login_user. Проверка разрешений для команд SQL выполняется так, как если бы роль session_role была той, которая первоначально вошла в систему. | |
| ssl_mode строка |
| Определяет, будет ли и с каким приоритетом устанавливаться защищенное соединение SSL TCP/IP с сервером. См. https://www.postgresql.org/docs/current/static/libpq-ssl.html для получения дополнительной информации о режимах. Значение по умолчанию prefer соответствует значению по умолчанию libpq. |
| state строка |
| Состояние схемы. |
| trust_input булево добавлено в 0.2.0 community.postgresql |
| Если no, проверить, являются ли значения параметров schema, owner, session_role потенциально опасными.Использование no имеет смысл только в том случае, если SQL-инъекции через параметры возможны. |
Примечания
Примечание
- По умолчанию предполагается аутентификация с помощью входа в систему под учетной записью
postgresили с помощью sudo на хосте. - Для предотвращения ошибки «Ошибка аутентификации peer для пользователя postgres» используйте пользователя postgres в качестве become_user.
- Этот модуль использует psycopg2, адаптер Python для баз данных PostgreSQL. Необходимо убедиться, что psycopg2 установлен на хосте перед использованием этого модуля.
- Если удаленный хост является сервером PostgreSQL (что является стандартным случаем), то PostgreSQL также должен быть установлен на удаленном хосте.
- Для систем на основе Ubuntu установите пакеты postgresql, libpq-dev и python-psycopg2 на удаленном хосте перед использованием этого модуля.
- Параметр ca_cert требует как минимум версии Postgres 8.4 и psycopg2 версии 2.4.3.
См. также
См. также
- Схемы PostgreSQL
-
Общая информация о схемах PostgreSQL.
- Ссылка CREATE SCHEMA
-
Полная справка по команде CREATE SCHEMA.
- Ссылка ALTER SCHEMA
-
Полная справка по команде ALTER SCHEMA.
- Ссылка DROP SCHEMA
-
Полная справка по команде DROP SCHEMA.
Примеры
- name: Create a new schema with name acme in test database
community.postgresql.postgresql_schema:
db: test
name: acme
- name: Create a new schema acme with a user bob who will own it
community.postgresql.postgresql_schema:
name: acme
owner: bob
- name: Drop schema "acme" with cascade
community.postgresql.postgresql_schema:
name: acme
state: absent
cascade_drop: yes
Возвращаемые значения
Общие возвращаемые значения описаны в этом разделе, следующие являются полями, уникальными для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| queries список / элементы=строка | всегда | Список выполненных запросов. Пример: ['CREATE SCHEMA "acme"'] |
| schema строка | успех, изменения | Имя схемы. Пример: acme |
Авторы
- Flavien Chantelot (@Dorn-) <contact@flavien.io>
- Thomas O’Donnell (@andytom)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/postgresql/postgresql_schema_module.html