Ограничения в Базе данных 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
.
Уменьшение размера хранилища
Размер хранилища уменьшить невозможно. Необходимо создать сервер с требуемым размером хранилища, вручную выполнить дамп и восстановление и перенести базы данных на новый сервер.