Руководство по настройке источника Azure Flexible Server для Postgres
ClickPipes поддерживает Postgres версии 12 и выше.
Включение логической репликации
Вам не нужно выполнять приведённые ниже шаги, если wal_level установлен в значение logical. Этот параметр, как правило, уже настроен заранее, если вы мигрируете с другого инструмента репликации данных.
- Перейдите в раздел Server parameters

- Измените значение
wal_levelнаlogical

- Это изменение потребует перезапуска сервера, поэтому перезапустите его, когда получите соответствующий запрос.

Создание пользователей ClickPipes и выдача прав доступа
Подключитесь к Azure Flexible Server Postgres под учетной записью администратора и выполните следующие команды:
-
Создайте отдельного пользователя для ClickPipes.
-
Предоставьте на уровне схемы доступ только для чтения пользователю, которого вы создали на предыдущем шаге. В следующем примере показаны права для схемы
public. Повторите эти команды для каждой схемы, содержащей таблицы, которые вы хотите реплицировать: -
Выдайте пользователю привилегии репликации:
-
Создайте publication с таблицами, которые вы хотите реплицировать. Настоятельно рекомендуется включать в публикацию только необходимые таблицы, чтобы избежать лишней нагрузки на производительность.
ПримечаниеЛюбая таблица, включённая в публикацию, должна либо иметь определённый первичный ключ, либо иметь replica identity, настроенную в значение
FULL. См. раздел Postgres FAQs для рекомендаций по выбору области публикаций.-
Чтобы создать публикацию для конкретных таблиц:
-
Чтобы создать публикацию для всех таблиц в определённой схеме:
Публикация
clickpipesбудет содержать набор событий изменений, сгенерированных из указанных таблиц, и позже будет использоваться для приёма потока репликации. -
-
Установите
wal_sender_timeoutв 0 дляclickpipes_user:
Добавьте IP-адреса ClickPipes в Firewall
Выполните приведённые ниже шаги, чтобы добавить IP-адреса ClickPipes в вашу сеть.
- Перейдите на вкладку Networking и добавьте IP-адреса ClickPipes в Firewall вашего Azure Flexible Server Postgres или Jump Server/Bastion, если вы используете SSH-туннелирование.

Что дальше?
Теперь вы можете создать ClickPipe и начать приём данных из экземпляра Postgres в ClickHouse Cloud. Обязательно запишите параметры подключения, которые вы использовали при настройке экземпляра Postgres, так как они понадобятся при создании ClickPipe.