Предварительные требования
- Доступ к вашей исходной базе данных PostgreSQL с учетной записью пользователя, у которой есть права на репликацию. Следуйте руководству по настройке для соответствующего источника:
- Amazon RDS Postgres
- Amazon Aurora Postgres
- Supabase Postgres
- Google Cloud SQL Postgres
- Azure Flexible Server for Postgres
- Neon Postgres
- Crunchy Bridge Postgres
- TimescaleDB
- Универсальный источник Postgres для любого другого провайдера или самоуправляемого экземпляра
- Сервис ClickHouse Managed Postgres в качестве целевого сервиса для миграции. Если у вас его еще нет, см. руководство по быстрому началу.
- На локальной машине должны быть установлены
pg_dumpиpsql. Оба входят в стандартный набор клиентских инструментов PostgreSQL.
Что нужно учесть перед миграцией
- Распространение DDL: непрерывная репликация (CDC) фиксирует операции DML и
ADD COLUMN. Другие изменения DDL, такие какDROP COLUMNиALTER COLUMN, не распространяются автоматически, и их нужно применять на целевой стороне вручную.
Если во время миграции возникнут проблемы, ознакомьтесь с FAQ по миграциям Managed Postgres, где описаны распространённые ошибки и способы их устранения.
1
Подключитесь к исходной базе данных
Откройте консоль ClickHouse Cloud и выберите свой сервис Managed Postgres.На левой боковой панели нажмите источник данных.Нажмите Start import.Заполните сведения о подключении к исходной базе данных PostgreSQL: host, port, username, password и имя базы данных. Включите TLS, если это требуется для исходной базы.Если вам нужно приватное подключение к исходной базе данных, можно выбрать SSH tunneling и указать необходимые параметры SSH. Это позволит миграции безопасно подключаться к базам данных, которые недоступны из публичной сети.Выберите метод ингестии:
- Initial load + CDC — копирует существующие данные, а затем поддерживает синхронизацию целевой системы с последующими изменениями.
- Initial load only — однократное копирование без дальнейшей репликации.
- CDC only — пропускает начальное копирование и реплицирует только новые изменения, начиная с этого момента.
2
Экспортируйте схему базы данных
Мастер покажет команду В результате в текущем каталоге будет создан файл
pg_dump, уже заполненную сведениями о подключении к исходной базе данных. Выполните её в терминале:pg.sql.Нажмите Next.3
Импортируйте схему в свой сервис Managed Postgres
Выберите базу данных назначения в раскрывающемся списке или нажмите Create a new database, чтобы создать новую.Мастер покажет команду Нажмите Next.
psql для применения дампа схемы к вашему сервису Managed Postgres. Выполните её в терминале:4
Настройте параметры ингестии
Укажите публикацию для логической репликации. Если оставить это поле пустым, публикация будет создана автоматически.Разверните Advanced replication settings, чтобы настроить пропускную способность:
Нажмите Next.
5
Выберите таблицы
Выберите таблицы, которые хотите реплицировать. Таблицы сгруппированы по схемам. Выберите отдельные таблицы или разверните схему, чтобы выбрать все таблицы в ней.Нажмите Create migration.