Мониторинг и метрики
Как получить доступ к метрикам моего экземпляра Managed Postgres?
Резервное копирование и восстановление
Какие варианты резервного копирования доступны?
Инфраструктура и автоматизация
Доступна ли поддержка Terraform для Managed Postgres?
Расширения и конфигурация
Какие расширения поддерживаются?
Можно ли настраивать параметры конфигурации PostgreSQL?
Пул соединений
Почему через PgBouncer возникают ошибки prepared statement does not exist?
PREPARE (или Parse в extended query). Если соответствующий EXECUTE попадает на другое backend-соединение, возникают ошибки вида:
- Всплески ошибок
prepared statement does not exist, особенно во время дозагрузки или записи с высоким параллелизмом - Вставки, которые как будто «тихо не срабатывают»: оператор завершается ошибкой, драйвер выполняет повторную попытку, и в итоге батч может быть применён частично или вовсе отброшен
- Возвращаемые значения неправильного типа (например, столбец
BIGINT, декодированный как битовый шаблонfloat64) — это происходит, когда кэшированный клиентский план повторно использует устаревшие коды типа/формата для backend-соединения, которому так и не был отправлен соответствующийParse
Если ваша рабочая нагрузка зависит от подготовленных операторов, подключайтесь напрямую к PostgreSQL (порт 5432), а не через пулер PgBouncer — прямые подключения штатно поддерживают подготовленные операторы. Подробнее о выборе между pooled и direct конечными точками см. в разделе Connection.
Что означает параметр max_client_conn в PgBouncer и как он соотносится с max_connections в Postgres?
max_connectionsв Postgres ограничивает число backend-соединений с самим PostgreSQL. Это затратный показатель — каждое backend-соединение потребляет память и занимает слот процесса.max_client_connв PgBouncer ограничивает число клиентских соединений, которые могут быть одновременно открыты в пулере. PgBouncer мультиплексирует множество таких клиентских соединений на значительно меньшее число backend-соединений.
default_pool_size), а не в основной лимит клиентских соединений.
Возможности базы данных
Могу ли я создать несколько баз данных и схем?
Поддерживается ли ролевое управление доступом (RBAC)?
Расширенные возможности RBAC с интеграцией в консоль планируются в этом году.
Обновления
Как выполняются обновления версий PostgreSQL?
Миграция
Какие инструменты доступны при миграции в Managed Postgres?
- pg_dump and pg_restore: Для небольших баз данных или разовых миграций. См. руководство pg_dump and pg_restore.
- Logical replication: Для более крупных баз данных, где требуется минимальное время простоя. См. руководство Логическая репликация.
- PeerDB: Для репликации на основе CDC из других экземпляров Postgres. См. руководство Миграция с PeerDB.
Полностью управляемый процесс миграции скоро станет доступен.