Что установлено на вашем сервере PostgreSQL?
- PostgreSQL 18 из официального репозитория PGDG
- Роль суперпользователя yonetici и пустая база данных uygulama
- Удалённые подключения только по TLS, пароли проверяются через SCRAM-SHA-256
- Самоподписанный сертификат сервера
- Клиент командной строки psql
- Настройки в /etc/postgresql/18/main, наши дополнения — в conf.d/seturack.conf
- Брандмауэр с открытым портом 5432 для базы данных и портом 22 для SSH
Какой размер нужен для PostgreSQL?
Официальной цифры по оперативной памяти у PostgreSQL нет: нужный объём зависит от размера данных и числа одновременных подключений. Ориентир такой: для небольшого проекта начните с 1 ГБ, а для рабочего приложения — с 2–4 ГБ. Настройки памяти при установке не меняются, поэтому shared_buffers остаётся значением по умолчанию. В официальной документации для сервера, на котором работает только база данных и есть 1 ГБ или больше, в качестве отправной точки предлагают 25 процентов оперативной памяти. После увеличения сервера поднимите значение сами. Диск потом уменьшить нельзя.
| Применение | Размер | Цена | Выбрать |
|---|---|---|---|
| Стартовый | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/мес. | |
| Средний | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/мес. | |
| Мощный | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/мес. |
Кому подходит?
- Разработчики, чьё приложение работает в другом месте и кому нужна база данных на отдельном сервере
- Команды, которые хотят сами управлять ролями, расширениями и настройками от имени суперпользователя
- Проекты, построенные на расширениях вроде pgvector или PostGIS
- Приложения, размещённые в Турции, которым нужна база данных в Стамбуле
Что будет после заказа?
- Задайте размер и оплатите заказ.
- Сервер запускается, и PostgreSQL устанавливается сам. В наших проверках на настоящих серверах это заняло около 3 минут.
- На вкладке «Обзор» панели скопируйте строки «Адрес подключения», «Логин» и «Пароль».
- Проверьте подключение со своего компьютера: psql 'postgresql://yonetici:PASSWORD@IP:5432/uygulama?sslmode=require'
- Создайте роль и базу данных для своего приложения: CREATE ROLE api LOGIN PASSWORD 'new-password'; CREATE DATABASE api OWNER api;
- Ограничьте доступ: ufw delete allow 5432/tcp, затем ufw allow from YOUR_IP to any port 5432
С каждым сервером
- Ежедневные бэкапы входят в цену
- Безлимитный трафик
- Полный root-доступ
- Позже можно увеличить или уменьшить RAM и CPU, а диск увеличить
- Расположение: Istanbul · IST-1.
Полезно знать
- Порт 5432 открыт в интернет. Если подключаются только ваши серверы, ограничьте доступ в брандмауэре их IP-адресами.
- Удалённые подключения без TLS или без пароля отклоняются, поэтому sslmode=disable не сработает.
- Сертификат самоподписанный. sslmode=require шифрует соединение, но не подтверждает подлинность сервера; для verify-full установите собственный сертификат.
- Роль yonetici, показанная в панели, — суперпользователь, поэтому не указывайте её в строке подключения вашего приложения.
- Мелкие обновления приходят через apt из репозитория PGDG. Выполнять apt upgrade и крупные обновления через pg_upgrade нужно вам самим.
- В панели по-прежнему показан пароль, заданный при установке. Если вы смените его командой ALTER ROLE, новый пароль храните самостоятельно.
PostgreSQL: вопросы и ответы
Как подключиться к серверу PostgreSQL?
Возьмите адрес подключения и пароль в панели и используйте такую строку: postgresql://yonetici:PASSWORD@IP:5432/uygulama?sslmode=require. Через неё подключатся psql, DBeaver, pgAdmin и любой клиент, принимающий строку подключения.
Открыт ли PostgreSQL в интернет и как его закрыть?
Да, порт 5432 открыт, но принимаются только подключения по TLS с паролем SCRAM. Чтобы пускать только определённые адреса, выполните ufw delete allow 5432/tcp, затем ufw allow from YOUR_IP to any port 5432.
Сколько оперативной памяти нужно PostgreSQL?
Официальной цифры по оперативной памяти у PostgreSQL нет. Ориентир такой: для небольшого проекта хорошо начать с 1 ГБ, а для рабочего приложения — с 2–4 ГБ. После увеличения сервера поднимите и shared_buffers; официальная рекомендация — 25 процентов оперативной памяти.
Почему при подключении из Node.js появляется ошибка сертификата?
Драйвер node-postgres проверяет сертификат, когда видит sslmode=require, и отклоняет самоподписанный. Укажите в строке подключения sslmode=no-verify. Соединение останется зашифрованным, но подлинность сервера проверяться не будет.
Можно ли установить pgvector или PostGIS?
Да. Репозиторий PGDG уже подключён на сервере, поэтому выполните от root apt install postgresql-18-pgvector, а затем CREATE EXTENSION vector в своей базе данных. PostGIS лежит в том же репозитории как postgresql-18-postgis-3.
Включены ли мои базы данных в бэкапы?
Да. Бэкап вашего сервера создаётся каждую ночь, хранятся последние 7 дней, и это входит в цену; файлы баз данных входят в него как часть диска. Чтобы хранить отдельную копию одной базы данных или таблицы, используйте ещё и pg_dump.