postgresql_lang – Добавляет, удаляет или изменяет процедурные языки в базе данных PostgreSQL.
Новая версия 1.7.
Обзор
- Добавляет, удаляет или изменяет процедурные языки в базе данных PostgreSQL.
- Этот модуль позволяет добавить язык, удалить язык или изменить доверенные отношения с базой данных PostgreSQL. Модуль может быть использован на машине, на которой он выполняется, или на удаленном хосте.
- При удалении языка из базы данных возможно, что зависимости препятствуют удалению базы данных. В этом случае вы можете указать параметр cascade, чтобы автоматически удалить объекты, которые зависят от языка (например, функции на этом языке). В случае, если язык не может быть удален, потому что он необходим системе базы данных, вы можете указать fail_on_drop=no, чтобы проигнорировать ошибку.
- Будьте осторожны при маркировке языка как доверенного, так как это может быть потенциальной угрозой безопасности. Недоверенные языки позволяют использовать этот язык для создания новых функций только пользователям с привилегиями суперпользователя PostgreSQL.
Требования
Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.
- psycopg2
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| cascade boolean |
| при удалении языка, также удалить объекты, зависящие от этого языка. используется только при state=absent. |
| db - | имя базы данных, где будет добавлен, удален или изменен язык | |
| fail_on_drop boolean |
| если yes, отказывать при удалении языка. В противном случае просто залогировать и продолжитьв некоторых случаях нельзя удалить язык (используется системой базы данных). Если удаление заблокировано зависимостями, рассмотрите использование cascade. |
| force_trust boolean |
| маркирует язык как доверенный, даже если он помечен как недоверенный в pg_pltemplate. используйте с осторожностью! |
| lang - / обязательно | имя процедурного языка для добавления, удаления или изменения | |
| login_host - | По умолчанию: "localhost" | Хост, на котором выполняется PostgreSQL, где вы хотите выполнить действия. |
| login_password - | Пароль для аутентификации с PostgreSQL (должен совпадать с login_user) | |
| login_user - | По умолчанию: "postgres" | Пользователь для аутентификации с PostgreSQL |
| port - | По умолчанию: 5432 | Порт базы данных для подключения. |
| state - |
| Состояние языка для выбранной базы данных |
| trust boolean |
| сделать этот язык доверенным для выбранной базы данных |
Примечания
Примечание
- По умолчанию предполагается, что вы входите в систему или выполняете sudo как пользователь postgres на хосте.
- Этот модуль использует psycopg2, адаптер Python для базы данных PostgreSQL. Вы должны убедиться, что psycopg2 установлен на хосте перед использованием этого модуля. Если удалённый хост является сервером PostgreSQL (что является случаем по умолчанию), то PostgreSQL также должен быть установлен на удалённом хосте. Для систем на основе Ubuntu установите пакеты postgresql, libpq-dev и python-psycopg2 на удалённом хосте перед использованием этого модуля.
Примеры
# Add language pltclu to database testdb if it doesn't exist:
- postgresql_lang db=testdb lang=pltclu state=present
# Add language pltclu to database testdb if it doesn't exist and mark it as trusted:
# Marks the language as trusted if it exists but isn't trusted yet
# force_trust makes sure that the language will be marked as trusted
- postgresql_lang:
db: testdb
lang: pltclu
state: present
trust: yes
force_trust: yes
# Remove language pltclu from database testdb:
- postgresql_lang:
db: testdb
lang: pltclu
state: absent
# Remove language pltclu from database testdb and remove all dependencies:
- postgresql_lang:
db: testdb
lang: pltclu
state: absent
cascade: yes
# Remove language c from database testdb but ignore errors if something prevents the removal:
- postgresql_lang:
db: testdb
lang: pltclu
state: absent
fail_on_drop: no
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Jens Depuydt (@jensdepuydt)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 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_lang_module.html