Ограничения в Базе данных Azure для PostgreSQL (отдельный сервер)

Область применения: отдельный сервер Базы данных Azure для PostgreSQL

Внимание

База данных Azure для PostgreSQL — одиночный сервер находится на пути выхода на пенсию. Настоятельно рекомендуется выполнить обновление до База данных Azure для PostgreSQL — гибкий сервер. Дополнительные сведения о миграции на База данных Azure для PostgreSQL — гибкий сервер см. в статье "Что происходит с одним сервером База данных Azure для PostgreSQL?".

В следующих разделах описываются действующие ограничения емкости и функциональных возможностей в службе базы данных. Сведения об уровнях ресурсов (вычисления, память, хранилище) см. в статье о ценовых категориях.

Максимальное количество соединений

В таблице ниже приведено максимальное число подключений и количество виртуальных ядер на ценовую категорию. Системе Azure требуется пять подключений для отслеживания Базы данных Azure для PostgreSQL.

Ценовая категория Виртуальные ядра Максимальное число подключений Максимальное количество подключений пользователя
Основное 1 55 50
Основное 2 105 100
Общего назначения 2 150 145
Общего назначения 4 250 245
Общего назначения 8 480 475
Общее назначение 16 950 945
Общее назначение 32 1500 1495
Общее назначение 64 1900 1895
С оптимизацией для операций в памяти 2 300 295
С оптимизацией для операций в памяти 4 500 495
С оптимизацией для операций в памяти 8 960 955
С оптимизацией для операций в памяти 16 1900 1895
С оптимизацией для операций в памяти 32 1987 1982

При превышении предельного количества подключений может появиться следующая ошибка:

FATAL: sorry, too many clients already (Неустранимая ошибка: уже подключено слишком много клиентов)

Внимание

Для обеспечения оптимальной работы рекомендуется использовать пул подключений, например pgBouncer, чтобы эффективно управлять подключениями.

Подключение PostgreSQL, даже в состоянии простоя, может использовать до 2 МБ памяти. Кроме того, создание новых подключений занимает некоторое время. Большинство приложений запрашивают много кратковременных соединений, из-за которых и возникает такая ситуация. В результате для реальной рабочей нагрузки будет меньше доступных ресурсов, что приведет к снижению производительности. Предотвратить такую ситуацию поможет использование пула подключений, который сокращает количество бездействующих подключений и повторно использует существующие подключения. Дополнительные сведения см. в записи блога.

Функциональные ограничения

Операции масштабирования

  • В настоящее время динамическое масштабирование из ценовой категории "Базовый" и в нее не поддерживается.
  • Уменьшение размера хранилища сервера в настоящее время не поддерживается.

Обновления версии сервера

  • В настоящее время автоматический переход между основными версиями ядра СУБД не поддерживается. Чтобы выполнить обновление до следующей основной версии, восстановите дамп на сервере, который был создан с новой версией ядра.

Учтите, что в PostgreSQL до версии 10 действовала политика выбора версий PostgreSQL, согласно которой обновлением основного номера версии считалось увеличение первого или второго числа (например, обновление с 9.5 до 9.6 считалось изменением основного номера версии). Начиная с версии 10, основным номером версии считается только первое число (то есть теперь обновление с 10.0 до 10.1 считается изменением дополнительного номера версии, а для основного требуется обновление с версии 10 до 11).

Конечные точки службы виртуальной сети

  • Поддержка конечных точек службы виртуальной сети предназначена только для серверов общего назначения и серверов, оптимизированных для операций в памяти.

Восстановление сервера

  • При использовании компонента PITR создается сервер с той же ценовой категорией, что и сервер, с которого он восстанавливается.
  • На новом сервере, созданном во время восстановления, нет правил брандмауэра, которые были настроены на сервере-источнике. Для этого нового сервера правила брандмауэра нужно настроить отдельно.
  • Восстановление удаленного сервера не поддерживается.

Символы UTF-8 в Windows

  • В некоторых сценариях символы UTF-8 не полностью поддерживаются в среде PostgreSQL с открытым исходным кодом в операционной системе Windows, что влияет на службу "База данных Azure для PostgreSQL". Дополнительные сведения см. в беседе об ошибке 15476 в postgresql-archive.

Ошибка GSS

Если вы увидите ошибку, связанную с GSS, скорее всего используется клиент или драйвер более новой версии, которую одиночный сервер Azure Postgres поддерживает пока не полностью. Эта ошибка влияет на драйвер JDBC версий 42.2.15 и 42.2.16.

  • Мы планируем завершить обновление до конца ноября. Сейчас рекомендуется использовать рабочую версию драйвера.
  • Также вы можете отключить запрос GSS. Используйте параметр подключения, например gssEncMode=disable.

Уменьшение размера хранилища

Размер хранилища уменьшить невозможно. Необходимо создать сервер с требуемым размером хранилища, вручную выполнить дамп и восстановление и перенести базы данных на новый сервер.

Следующие шаги