Ваши данные — у вас, а не в чужом облаке

У каждого проекта своя база PostgreSQL на вашем сервере. CRM, мессенджеры, отчёты и сценарии пишут в неё через один служебный вход. В обход не ходит никто: ни сервис, ни человек. Схема во всех базах одна и меняется только записанными миграциями.

  • Своя база у проектаКаждый проект в отдельной базе. Проект не видит соседей.
  • Один входСлужебный сервис баз проверяет токен и форму каждого запроса до того, как тронуть данные.
  • Одна схемаТаблицы, индексы и триггеры одинаковы во всех проектах. Новый проект получает ровно то же.
напрямую в базу — нельзя CRM клиенты, сделки Мессенджеры переписка Сценарии отчёты, интеграции Один вход служебный токен, проверка База проекта 1 База проекта 2 База проекта 15 своя база у каждого проекта журнал миграций, шаг за шагом
Все пишут через один вход. У каждого проекта своя база. Схема ведётся журналом миграций.

Схема одна на всех — и не разъезжается

Раньше правки схемы гонялись руками по базам, и проекты расходились: где-то поле осталось, где-то его нет. Теперь схему доводит один проход, и его зовут ровно в двух случаях: при старте сервиса по всем проектам и при заведении нового.

Реестр
  • Все таблицы, индексы, функции и триггеры описаны в коде
  • Проход добавляет недостающее и сверяет типы колонок
  • Ничего не удаляет молча
Сверка правил
  • Ограничения на значения колонок сверяются с реестром
  • Разошлись — меняются под точкой сохранения
  • Старые строки не подошли — остаётся прежнее правило и строка в журнале, сервис не падает
Один список шагов
  • Миграции → таблицы → функции и представления → триггеры
  • Тот же порядок на старте и для нового проекта
  • Другого списка нет, новый проект не отличается от живых

На проде PostgreSQL 18.4. Переезд с 16-й прошёл дампом на новый том, старый том оставался нетронутым как откат до подтверждения.

Каждая правка схемы — записана и учтена

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

  1. 1
    Правится реестр
    Схема в коде приводится к новому виду. Новые проекты с этого момента рождаются правильными.
  2. 2
    Миграция в конец списка
    Если правка не только добавляет, дописывается миграция с номером и заметкой «зачем».
  3. 3
    Своя транзакция под замком
    Старт сервиса и заведение проекта могут прийти в одну базу одновременно. Замок не даст выполнить миграцию дважды.
  4. 4
    Упала — проход остановлен
    Дальше по этому проекту ничего не делается: проход поверх недомигрированной базы завёл бы новые колонки рядом со старыми. Ошибка видна в ответе и в журнале старта.
  5. 5
    Выкаченное не правят
    Её номер уже записан в базах. Исправление — следующей миграцией.

На проде шесть миграций: базовая отметка от 22.09.2026 и пять после неё. Новая база получает все отметки сразу, без выполнения: её строит реестр по текущему коду.

Один вход — и никого в обход

Прямого доступа к базе нет ни у фронта, ни у интеграций, ни у сценариев. Все идут через служебный сервис баз, он один знает пароль. Каждый запрос приносит служебный токен и проходит проверку формы: лишний ключ в теле — ошибка до того, как запрос дойдёт до SQL.

  • Роли и праваСмотреть таблицы и править их — два разных права. 12 ролей на проде, раздел «Базы» виден только тем, у кого есть право смотреть.
  • Журнал действийВход, выход, смена прав, действия администратора пишутся в журнал. 438 записей с марта 2026.
  • Изоляция проектовУ каждого проекта своя база и свой пул соединений. Запрос всегда адресован конкретному проекту, чужие таблицы не видны.
Стабильность
Одна схема на всех
  • одна схема на все проекты
  • новый проект рождается таким же
  • правила колонок сверяются на старте
Миграции
Записаны и учтены
  • каждая — своей транзакцией под замком
  • упала — проход остановлен, база целая
  • выкаченную не правят, только следующей
Безопасность
Один вход, роли, журнал
  • служебный токен на каждый запрос
  • права смотреть и править — по ролям
  • каждое действие в журнале
Надёжность
PostgreSQL 18.4
  • держит нагрузку живых проектов
  • записи по ключу не затирают друг друга
  • обновление схемы не роняет сервис
Удобство сверху: таблицы, фильтры и правка строк прямо в браузере.
Четыре опоры базы: стабильность, миграции, безопасность, надёжность.

Не роняет, не теряет — и говорит, если что не так

База под платформой должна переживать обновления, параллельных писателей и чужие ошибки. Ниже то, что для этого сделано, с цифрами прода на 28.09.2026.

132 млн
Транзакций с июля
С переезда на PostgreSQL 18 в июле 2026 по проектным базам прошло 132 миллиона транзакций, откатов 0,008 %.
0 гонок
Записи по ключу
Когда одну строку трогают два писателя сразу, работает атомарная запись: второй обновляет, а не падает. Пачки до 1 000 строк идут одним оператором, упавшая пачка откатывается целиком.
старт
Не падает от схемы
Разошедшееся правило колонки, занятая таблица, гонка на создании базы — всё это громкая строка в журнале, а не остановка сервиса.
откат
Обновление с возвратом
Крупные обновления идут дампом на новый том, старый остаётся нетронутым до подтверждения. Контейнер базы поднимается сам после любого сбоя.

Регулярное резервное копирование по расписанию настраивается под ваш сервер отдельно при внедрении: куда складывать копии и как долго хранить.

Таблицы — прямо в браузере

Разработчик для того, чтобы посмотреть данные, не нужен. В интерфейсе проекта есть раздел «Базы»: список таблиц с поиском, просмотр с фильтрами, редактор строк и создание новых таблиц и колонок.

список
Таблицы проекта
Все таблицы проекта с поиском по имени. Открывается любая.
фильтры
Просмотр
Условия «колонка · оператор · значение», сколько угодно. Страницы, сортировка, скопировать строку как JSON.
правка
Редактор строк
Поправить значение, дублировать строку, удалить. Системные поля база заполняет сама.
схема
Новая таблица и колонка
Имя и тип — и таблица есть. Дополнительные поля клиентов и сделок заводятся так же, без миграций.

На скриншоте в блоке на главной КП — таблицы проекта 1 в интерфейсе.

Данные достаются — тремя дверями

Ничего не заперто. Одни и те же таблицы читаются из интерфейса, из сценариев и снаружи по API. Отчёты считаются с тех же строк, куда пишут CRM и мессенджеры, поэтому цифра в отчёте всегда прослеживается до записи.

Интерфейс
  • Раздел «Базы» в проекте
  • Посмотреть, отфильтровать, поправить
  • Выгрузить список для обзвона
Сценарии
  • Блок «база» в инструкциях
  • Прочитать, записать, обновить пачкой
  • Тот же вход и те же проверки, что у сервисов
API и своя аналитика
  • Чтение и запись строк по HTTP с проверкой токена
  • Любую таблицу можно выгрузить
  • Или подключить к своему BI

Что нужно от вас

Список данных, которые нужно хранить сверх стандартных: поля, справочники, реестры. И решение по резервным копиям: куда и как часто.

Показать этот модуль на вашей задаче?

За 30 минут посмотрим, как он ляжет на ваш процесс, и скажем, что включается сразу, а что требует настройки.

Выберите способ связи

Написать в MAX Написать в Telegram