DROP SUBSCRIPTION#

DROP SUBSCRIPTION

DROP SUBSCRIPTION

DROP SUBSCRIPTION — удалить подписку

Синтаксис

DROP SUBSCRIPTION [ IF EXISTS ] name [ CASCADE | RESTRICT ]

Описание

DROP SUBSCRIPTION удаляет подписку из кластера базы данных.

Подписку может удалить только суперпользователь.

Внутри блока транзакции невозможно выполнить команду DROP SUBSCRIPTION, если подписка связана с репликационным слотом. (Вы можете использовать команду ALTER SUBSCRIPTION для снятия слота).

Параметры

name

Имя подписки, которую нужно удалить.

CASCADE
RESTRICT

Эти ключевые слова не имеют никакого эффекта, так как нет зависимостей от подписок.

Примечания

При удалении подписки, связанной с слотом репликации на удаленном хосте (обычное состояние), DROP SUBSCRIPTION подключится к удаленному хосту и попытается удалить слот репликации (и любые оставшиеся слоты синхронизации таблиц) как часть своей операции. Это необходимо для того, чтобы ресурсы, выделенные для подписки на удаленном хосте, были освобождены. Если это не удается, либо потому что удаленный хост недоступен, либо потому что удаленный слот репликации не может быть удален или не существует или никогда не существовал, команда DROP SUBSCRIPTION не выполнится. Чтобы продолжить в этой ситуации, сначала отключите подписку, выполнив ALTER SUBSCRIPTION ... DISABLE, а затем отвяжите ее от слота репликации, выполнив ALTER SUBSCRIPTION ... SET (slot_name = NONE). После этого DROP SUBSCRIPTION больше не будет пытаться выполнить какие-либо действия на удаленном хосте. Обратите внимание, что если удаленный слот репликации все еще существует, его (и любые связанные слоты синхронизации таблиц) следует затем удалить вручную; в противном случае он/они продолжат резервировать WAL и в конечном итоге могут привести к заполнению диска. См. также Раздел 30.2.1.

Если подписка связана с слотом репликации, то команда DROP SUBSCRIPTION не может быть выполнена внутри блока транзакции.

Примеры

Удаление подписки:

DROP SUBSCRIPTION mysub;

Совместимость

DROP SUBSCRIPTION - это расширение Tantor SE.