ALTER SUBSCRIPTION
ALTER SUBSCRIPTION — изменить определение подписки
Синтаксис
ALTER SUBSCRIPTIONимяCONNECTION 'строка_подключения' ALTER SUBSCRIPTIONимяSET PUBLICATIONимя_публикации[, ...] [ WITH (параметр_set_publication[=значение] [, ... ] ) ] ALTER SUBSCRIPTIONимяREFRESH PUBLICATION [ WITH (параметр_обновления[=значение] [, ... ] ) ] ALTER SUBSCRIPTIONимяENABLE ALTER SUBSCRIPTIONимяDISABLE ALTER SUBSCRIPTIONимяSET (параметр_подписки[=значение] [, ... ] ) ALTER SUBSCRIPTIONимяOWNER TO {новый_владелец| CURRENT_USER | SESSION_USER } ALTER SUBSCRIPTIONимяRENAME TOновое_имя
Описание
ALTER SUBSCRIPTION может менять многие свойства подписки, которые могут задаваться в CREATE SUBSCRIPTION.
Чтобы выполнить ALTER SUBSCRIPTION для подписки, нужно быть её владельцем. Чтобы сменить владельца, нужно быть непосредственным или опосредованным членом новой роли-владельца. Новый владелец должен быть суперпользователем. (В настоящее время все владельцы подписок должны быть суперпользователями, так что на практике проверка владельца будет пропущена. Но в будущем это может быть изменено.)
Параметры
- имя
- Имя подписки, свойства которой изменяются. 
- CONNECTION '- строка_подключения'
- Это предложение изменяет строку соединения, изначально установленную командой CREATE SUBSCRIPTION. За дополнительными сведениями обратитесь к описанию этой команды. 
- SET PUBLICATION- имя_публикации
- Изменяет список публикаций, на которые оформлена подписка. За подробностями обратитесь к описанию CREATE SUBSCRIPTION. По умолчанию эта команда также выполняет действие - REFRESH PUBLICATION.- В указании - параметр_set_publicationзадаются дополнительные свойства операции. Поддерживаются следующие параметры:- refresh(- boolean)
- Со значением - falseданная команда не будет обновлять информацию о таблицах. В этом случае следует выполнить- REFRESH PUBLICATIONотдельно. Значение по умолчанию —- true.
 - Кроме того, здесь могут задаваться параметры обновления, упомянутые в описании - REFRESH PUBLICATION.
- REFRESH PUBLICATION
- Считывает недостающую информацию о таблицах с публикующего сервера. В результате производится репликация таблиц, добавленных в публикации, на которые оформлена подписка, после последнего вызова - REFRESH PUBLICATIONили- CREATE SUBSCRIPTION.- В указании - параметр_обновлениязадаются дополнительные свойства операции обновления. Поддерживаются следующие параметры:- copy_data(- boolean)
- Определяет, должны ли копироваться существующие данные в публикациях, на которые оформляется подписка, сразу после начала репликации. Значение по умолчанию — - true. (К таблицам, добавленным в публикации ранее, это не относится.)
 
- ENABLE
- Включает ранее отключённую подписку, запуская процесс логической репликации в конце транзакции. 
- DISABLE
- Отключает активную подписку, останавливая процесс логической репликации в конце транзакции. 
- SET (- параметр_подписки[=- значение] [, ... ] )
- Это предложение изменяет параметры, изначально установленные командой CREATE SUBSCRIPTION. За подробностями обратитесь к её описанию. Данное предложение позволяет изменить параметры - slot_nameи- synchronous_commit
- новый_владелец
- Имя пользователя, назначаемого новым владельцем подписки. 
- новое_имя
- Новое имя подписки. 
Примеры
Изменение подписки, заключающееся в подписывании на публикацию insert_only: 
ALTER SUBSCRIPTION mysub SET PUBLICATION insert_only;
Отключение (остановка) подписки:
ALTER SUBSCRIPTION mysub DISABLE;
Совместимость
ALTER SUBSCRIPTION является расширением Postgres Pro.