Обновление с 11.2 на 11.3
Данная инструкция описывает полный процесс обновления платформы iEXExchanger с версии 11.2 до версии 11.3.
Перед началом внимательно ознакомьтесь со всеми этапами. Выполняйте действия последовательно и не пропускайте обязательные проверки.
Важное изменение базы данных
В версии 11.3 основная база iEXExchanger переводится с MySQL на PostgreSQL 18. Это обязательная часть обновления.
После загрузки файлов Backend 11.3 сначала выполните миграцию базы и отдельную проверку перенесённых данных. Не запускайте Product Updates для пустой PostgreSQL-базы до успешного завершения миграции и команды verify.
Не удаляйте исходную MySQL-базу после переноса. Она потребуется для контрольной проверки и возможного возврата проекта до начала записи новых данных в PostgreSQL.
Резервное копирование перед обновлением
Перед обновлением системы обязательно создайте резервную копию файлов сайта и базы данных. Не пропускайте этот шаг: резервная копия поможет избежать потери данных и позволит быстро восстановить сайт, если в процессе обновления возникнут ошибки, сбои или другие непредвиденные ситуации.
Сначала сохраните файлы сайта. Для этого войдите в панель FastPanel, откройте файловый менеджер, найдите папку с вашим сайтом, создайте архив в формате ZIP и скачайте его на свой компьютер. Затем обязательно выполните резервное копирование базы данных: перейдите в раздел «Базы данных», выберите нужную базу и воспользуйтесь функцией экспорта, чтобы получить SQL-файл. Сохраните его в надёжном месте вместе с архивом сайта.
Перед началом обновления убедитесь, что обе резервные копии успешно созданы и сохранены. Только после этого переходите к дальнейшим действиям. Если вы не уверены, что выполняете резервное копирование правильно, или столкнулись со сложностями при работе с FastPanel, рекомендуется обратиться в техническую поддержку вашего хостинга. Специалисты помогут выполнить резервное копирование корректно и подскажут подходящий порядок действий именно для вашего сервера.
Резервная копия, созданная через FastPanel, не отменяет резервное копирование, предусмотренное инструкцией миграции. Перед переносом базы выполните все проверки и действия из документа «Миграция с MySQL на PostgreSQL».
Важно
В данной версии изменена схема работы Nginx. После установки обновления необходимо внести изменения в конфигурацию Nginx согласно актуальной документации.
Подготовка PostgreSQL 18
PostgreSQL 18 необходимо установить и подключить до остановки обменного пункта, чтобы сократить время обслуживания.
В результате должны быть подготовлены:
установленный и работающий PostgreSQL 18;
сервер PostgreSQL со статусом «Доступен» в FastPanel;
модули
pdo_pgsqlиpgsqlдля PHP 8.4;пустая основная PostgreSQL-база и отдельный пользователь;
пустая база Laravel Pulse и пользователь
pulse_pg, если Pulse используется.
PostgreSQL-базы должны оставаться пустыми до запуска iEX DB Migrator.
Не импортируйте в них SQL-дампы, не запускайте Product Updates.
Перевод сайта в режим обслуживания
Перед началом обновления необходимо временно остановить работу обменного пункта.
Для этого в административной панели активируйте режим обслуживания.
Это позволит:
исключить создание новых заявок;
избежать конфликтов во время обновления;
предотвратить ошибки при работе пользователей с системой.
После завершения обновления режим обслуживания можно будет отключить.

Подготовка файлов к обновлению
Перед загрузкой новой версии необходимо удалить часть файлов текущей установки.
Данная процедура позволяет избежать конфликтов между файлами предыдущего и нового релиза.
Важно
Не забудьте скачать файлы лицензии.
Они обязательны для полной установки обновления. После загрузки и распаковки архивов обновления необходимо также загрузить файлы лицензии в папку backend.
Без файлов лицензии обновление может быть установлено не полностью или работать некорректно.
Загрузка файлов обновления
Для обновления используются два архива:
Каждый архив предназначен для своей части системы.
Миграция с MySQL на PostgreSQL
После загрузки Backend 11.3 выполните перенос действующей базы MySQL в подготовленную пустую базу PostgreSQL 18.
Используйте отдельную инструкцию:
Инструкция включает:
проверку PostgreSQL и PHP-модулей;
настройку
iEX DB Migrator;проверку конфигурации и плана переноса;
создание дополнительной резервной копии;
остановку процессов, записывающих данные;
перенос основной базы и Laravel Pulse;
сравнение структуры и SHA-256 digest данных;
автоматическое переключение файла
.env;независимую проверку результата командой
verify.
Выполните инструкцию до успешного завершения раздела «Независимая точная проверка» включительно. Когда документ перейдёт к этапу «Обновление продукта после переноса», вернитесь к текущей инструкции и выполните команды для версии 11.3 из следующего раздела.
Не продолжайте обновление, если миграция или отдельная команда verify завершилась с ошибкой.
Не изменяйте подключение в .env вручную, не удаляйте исходную MySQL-базу и не возвращайте пользовательский трафик. Сначала устраните причину ошибки и повторите проверку по инструкции миграции.
Применение обновления
После загрузки файлов необходимо выполнить обновление через SSH.
Если вы ранее не работали с SSH, воспользуйтесь отдельной инструкцией по подключению к серверу.
Если команда завершилась с ошибкой
Ошибка может быть связана с:
незавершённой миграцией на PostgreSQL;
неправильными правами на файлы проекта;
недостатком свободного места;
отсутствием PHP-модулей
pdo_pgsqlилиpgsql;недоступностью PostgreSQL;
параллельно работающим процессом обновления.
В этом случае:
Сохраните полный текст ошибки.
Проверьте результат миграции и команды
verify.Устраните найденную причину.
Повторно выполните предварительную проверку.
После успешной проверки снова запустите обновление до 11.3.
Завершение обновления
После успешного выполнения всех команд рекомендуется выполнить финальные действия.
Проверка конфигурации PM2
После обновления также рекомендуется проверить файл ecosystem.config.cjs, расположенный в директории основного сайта ваш_сайт.
В версии 11.2 необходимо использовать актуальную конфигурацию PM2. Если в файле указаны другие параметры (например, cluster или instances: 'max'), замените их на рекомендуемую конфигурацию.
Файл ecosystem.config.cjs должен выглядеть следующим образом:
После внесения изменений сохраните файл и перезапустите процесс Frontend через PM2, чтобы новая конфигурация вступила в силу.
Проверка и обновление конфигурации Nginx
Перед финальной проверкой сайта обязательно изучите актуальную инструкцию по настройке Frontend Nginx и внесите необходимые изменения в конфигурацию.
В версии 11.1.8 изменилась схема работы Nginx, поэтому старая конфигурация может работать некорректно.
Перейдите по ссылке на актуальную инструкцию:
Внимательно проверьте конфигурацию и приведите её к актуальной версии.
Особое внимание уделите:
настройке проксирования Frontend на Angular SSR;
отсутствию старых языковых редиректов в Nginx.
После внесения изменений сохраните конфигурацию, проверьте её корректность и перезапустите Nginx.
Только после этого переходите к проверке работы сайта.
Если сайт не открывается после обновления
Наиболее распространённая причина — не был автоматически запущен Frontend через PM2 после перезагрузки сервера.
Проверьте состояние процессов:
Если процесс отсутствует или находится в состоянии ошибки, воспользуйтесь инструкцией:
Обновление успешно завершено
Поздравляем!
Система успешно обновлена до версии iEXExchanger 11.2.
После завершения проверки не забудьте отключить режим обслуживания и вернуть обменный пункт в рабочий режим.
Завершение обновления
После успешной проверки:
Отключите режим обслуживания.
Верните в работу очереди, планировщики и остальные процессы, остановленные перед миграцией.
Убедитесь, что обменный пункт принимает новые заявки.
Сохраните резервные копии и исходную MySQL-базу до подтверждения стабильной работы PostgreSQL.
Система обновлена с версии 11.2 до версии 11.3 и работает с PostgreSQL 18.
Перезагрузка сервера
После завершения обновления рекомендуется полностью перезагрузить сервер, чтобы все изменения вступили в силу.
Вы можете выполнить перезагрузку одним из способов.
Через SSH
Подключение к серверу по SSHАвторизуйтесь на сервере под пользователем root и выполните команду:
Последнее обновление
Это было полезно?

