Spec-Zone.ru › Ansible 2.10

community.postgresql.postgresql_sequence – Создание, удаление или изменение последовательности PostgreSQL

Примечание

Этот плагин входит в коллекцию community.postgresql (версия 1.0.0).

Для его установки используйте: ansible-galaxy collection install community.postgresql.

Для использования в книге задач укажите: community.postgresql.postgresql_sequence.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Возвращаемые значения

Описание

  • Позволяет создавать, удалять или изменять определение генератора последовательностей.

Требования

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

  • psycopg2

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
ca_cert
строка
Указывает имя файла, содержащего сертификаты центра сертификации (CA).
Если файл существует, серверный сертификат будет проверен на подпись одним из этих центров.

Псевдонимы: ssl_rootcert
cache
целое число
Параметр cache определяет, сколько номеров последовательности предварительно выделяется и хранится в памяти для более быстрого доступа. Минимальное значение равно 1 (можно генерировать только одно значение за раз, то есть кеширование отключено), и это значение также используется по умолчанию.
cascade
логическое значение
    Варианты:
  • нет ←
  • да
Автоматически удаляет объекты, зависящие от последовательности, и, в свою очередь, все объекты, зависящие от этих объектов.
Игнорируется, если state=present.
Используется только с state=absent.
cycle
логическое значение
    Варианты:
  • нет ←
  • да
Опция cycle позволяет последовательности циклично повторяться, когда maxvalue или minvalue достигнуты восходящей или нисходящей последовательностью, соответственно. Если предел достигнут, следующее сгенерированное число будет minvalue или maxvalue соответственно.
Если указано false, (ЦИКЛ ОТКЛЮЧЕН), любые вызовы nextval после того, как последовательность достигнет своего максимального значения, вернут ошибку. По умолчанию используется ложь (ЦИКЛ ОТКЛЮЧЕН).
data_type
строка
    Варианты:
  • bigint
  • integer
  • smallint
Указывает тип данных последовательности. Допустимые типы — bigint, integer и smallint. По умолчанию используется bigint. Тип данных определяет значения по умолчанию для минимального и максимального значений последовательности. Дополнительную информацию см. в документации https://www.postgresql.org/docs/current/sql-createsequence.html.
Поддерживается начиная с PostgreSQL 10.
db
строка
Имя базы данных для подключения и выполнения запросов.

Псевдонимы: database, login_db
increment
целое число
Increment определяет, какое значение добавляется к текущему значению последовательности для создания нового значения.
Положительное значение создаст восходящую последовательность, отрицательное — нисходящую. Значение по умолчанию равно 1.
login_host
строка
Хост, на котором работает база данных.
login_password
строка
Пароль для аутентификации.
login_unix_socket
строка
Путь к сокету Unix для локальных подключений.
login_user
строка
По умолчанию:
"postgres"
Имя пользователя для аутентификации.
maxvalue
целое число
Maxvalue определяет максимальное значение для последовательности. По умолчанию для восходящей последовательности — максимальное значение типа данных. По умолчанию для нисходящей последовательности — -1.

Псевдонимы: max
minvalue
целое число
Minvalue определяет минимальное значение, которое может сгенерировать последовательность. По умолчанию для восходящей последовательности — 1. По умолчанию для нисходящей последовательности — минимальное значение типа данных.

Псевдонимы: min
newschema
строка
Новая схема для последовательности. Используется для перемещения последовательности в другую схему.
Работает только для существующих последовательностей.
owner
строка
Установить владельца последовательности.
port
целое число
По умолчанию:
5432
Порт базы данных для подключения.

Псевдонимы: login_port
rename_to
строка
Новое имя для последовательности.
Работает только для существующих последовательностей.
schema
строка
По умолчанию:
"public"
Схема последовательности. Используется для создания и перемещения последовательности в заданную схему.
sequence
строка / обязательный
Имя последовательности.

Псевдонимы: name
session_role
строка
Переключение на роль session_role после подключения. Указанная session_role должна быть ролью, членом которой является текущий login_user.
Проверка разрешений для команд SQL выполняется так, как будто session_role был тем, кто первоначально вошел в систему.
ssl_mode
строка
    Варианты:
  • allow
  • disable
  • prefer ←
  • require
  • verify-ca
  • verify-full
Определяет, будет ли установлено защищенное SSL-соединение TCP/IP с сервером и с какой приоритетностью.
См. https://www.postgresql.org/docs/current/static/libpq-ssl.html для получения дополнительной информации о режимах.
Значение по умолчанию prefer соответствует значению по умолчанию libpq.
start
целое число
Start позволяет начать последовательность с любого значения. Значение по умолчанию для восходящих последовательностей равно minvalue, для нисходящих — maxvalue.
state
строка
    Варианты:
  • отсутствует
  • имеется ←
Состояние последовательности.
Если state=absent, другие параметры будут проигнорированы, кроме name и schema.
trust_input
логическое значение
добавлено в 0.2.0 community.postgresql
    Варианты:
  • нет
  • да ←
Если no, проверьте, не являются ли потенциально опасными значения параметров sequence, schema, rename_to, owner, newschema, session_role.
Использование no имеет смысл только тогда, когда возможны SQL-инъекции через параметры.

Примечания

Примечание

  • Если вы не передаете параметр db, последовательность будет создана в базе данных с именем postgres.
  • Аутентификация по умолчанию предполагает, что вы либо вошли в систему как, либо запустили команду sudo с учетной записью postgres на хосте.
  • Чтобы избежать ошибки «Ошибка аутентификации 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.

См. также

См. также

community.postgresql.postgresql_table

Официальная документация по модулю community.postgresql.postgresql_table.

community.postgresql.postgresql_owner

Официальная документация по модулю community.postgresql.postgresql_owner.

community.postgresql.postgresql_privs

Официальная документация по модулю community.postgresql.postgresql_privs.

community.postgresql.postgresql_tablespace

Официальная документация по модулю community.postgresql.postgresql_tablespace.

Ссылка на CREATE SEQUENCE

Полное руководство по команде CREATE SEQUENCE.

Ссылка на ALTER SEQUENCE

Полное руководство по команде ALTER SEQUENCE.

Ссылка на DROP SEQUENCE

Полное руководство по команде DROP SEQUENCE.

Примеры

- name: Create an ascending bigint sequence called foobar in the default
        database
  community.postgresql.postgresql_sequence:
    name: foobar

- name: Create an ascending integer sequence called foobar, starting at 101
  community.postgresql.postgresql_sequence:
    name: foobar
    data_type: integer
    start: 101

- name: Create an descending sequence called foobar, starting at 101 and
        preallocated 10 sequence numbers in cache
  community.postgresql.postgresql_sequence:
    name: foobar
    increment: -1
    cache: 10
    start: 101

- name: Create an ascending sequence called foobar, which cycle between 1 to 10
  community.postgresql.postgresql_sequence:
    name: foobar
    cycle: yes
    min: 1
    max: 10

- name: Create an ascending bigint sequence called foobar in the default
        database with owner foobar
  community.postgresql.postgresql_sequence:
    name: foobar
    owner: foobar

- name: Rename an existing sequence named foo to bar
  community.postgresql.postgresql_sequence:
    name: foo
    rename_to: bar

- name: Change the schema of an existing sequence to foobar
  community.postgresql.postgresql_sequence:
    name: foobar
    newschema: foobar

- name: Change the owner of an existing sequence to foobar
  community.postgresql.postgresql_sequence:
    name: foobar
    owner: foobar

- name: Drop a sequence called foobar
  community.postgresql.postgresql_sequence:
    name: foobar
    state: absent

- name: Drop a sequence called foobar with cascade
  community.postgresql.postgresql_sequence:
    name: foobar
    cascade: yes
    state: absent

Значения возврата

Общие значения возврата описаны здесь, следующие — уникальные для данного модуля:

Ключ Возвращаемое значение Описание
cycle
строка
всегда
Указывает, является ли последовательность циклической.

Пример:
НЕТ
data_type
строка
всегда
Показывает текущий тип данных последовательности.

Пример:
bigint
increment
целое число
всегда
Значение приращения последовательности. Положительное значение создаёт возрастающую последовательность, отрицательное — убывающую.

Пример:
-1
maxvalue
целое число
всегда
Значение максимального значения последовательности.

Пример:
9223372036854775807
minvalue
целое число
всегда
Значение минимального значения последовательности.

Пример:
1
newname
строка
при успехе
Показывает новое имя последовательности после переименования.

Пример:
barfoo
newschema
строка
при успехе
Показывает новую схему последовательности после изменения схемы.

Пример:
foobar
owner
строка
всегда
Показывает текущего владельца последовательности после успешного выполнения задачи.

Пример:
postgres
queries
строка
всегда
Список запросов, которые пытались выполнить.

Пример:
['CREATE SEQUENCE "foo"']
schema
строка
всегда
Имя схемы последовательности

Пример:
foo
sequence
строка
всегда
Имя последовательности.

Пример:
foobar
start
целое число
всегда
Значение начала последовательности.

Пример:
12
state
строка
всегда
Состояние последовательности в конце выполнения.

Пример:
present


Авторы

  • Tobias Birkefeld (@tcraxs)
  • 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_sequence_module.html

Spec-Zone.ru

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