Проект

Общее

Профиль

UpdateOmegaProduction » История » Редакция 7

Редакция 6 (BEA, 27.08.2024 19:03) → Редакция 7/9 (BEA, 13.02.2025 14:42)

h1. Обновления 

 {{>toc}} 

 h2. Общеее описание обновления 

 Обнволения бывают 2 видов: 
 * Релиз - основное крупное обновления с одной версии на другую 
 * Патч - небольшие обновления и правки 

 *Установка происходит строго последовательно! То есть: релиз->патч 1->патч 2 и так далее* 
 Рекомендуется: 
 * перед обновлением делать бекап базы данных и резервную копию файлов приложения 
 * во время обновления блокировать доступ пользователей 

 Методы установки: 
 * [[UpdateOmegaProduction#Установщик обновлений|установщик обновлений]] (рекомендуется) 
 * копирование файлов приложения и пуск скриптов  

 h2. Установщик обновлений 

 Установщик необходимо запускать на сервере, на котором располагаются исполняемые файлы Омеги. 

 h3. Первый запуск и настройка 

 При первом запуске установщик выдаст сообщение “Укажите в настройках путь к tnsnames.ora".  
 Нужно зайти в пункт “Настройка” и указать путь к tnsnames.ora, в котором есть алиасы к используемым базам. 
 При последующих запусках может появиться сообщение “Не обнаружен tnsnames.ora”.  
 Нужно зайти в пункт “Настройка” и скорректировать путь к tnsnames.ora, в котором есть алиасы к используемым базам. 
 После задания\изменения пути к tnsnames.ora требуется перезапуск установщика. 
 Путь выглядит примерно так: C:\app\product\12.2.0\client_1\network\admin\ 

 h3. Описание установщика 

 Внешний вид установщика: 
 !clipboard-202408211920-rj3vg.png! 

 h4. Закладка Обновление 

 h5. Раздел Экземпляр 

 * *Расположение приложения Omega Production для обновления* – расположение, в котором находятся папки App32, App64 или AppC64 
 * *Версия приложения* – отображает текущую версию приложения из соответствующей папки.  
 Если в расположении отсутствует папка, для которой есть обновление в патче, то будет написано “Отсутствует. Будет обновлено” 
 * *Базы данных* – отображает список баз из файла omp_db.ini приложения.  
 Нужно отметить базы, подлежащие обновлению и указать пароль администратора в поле “Пароль”.  
 Тогда в поле “Версия скриптов” отобразится версия скриптов из базы. 

 h5. Раздел Обновление 

 * *Название* – название обновления. 
 * *Версия приложения* – указывает на какую версию приложения произойдёт обновление. 
 * *Версия скриптов* – указывает с какой на какую версию скриптов произойдёт обновление. 

 Если версия скриптов, с какой должно производиться обновление, не совпадает с версиями скриптов выбранных баз, то кнопка “Обновить” будет недоступна. 

 h5. Раздел опций 

 * *Делать резервную копию приложения* – существующие исполняемые файлы будут скопированы в папку Backups в выбранном расположении. 
 * *Устанавливать блокировку баз* – в базе выставляется признак обновления (блокировка под администратором).  
 При этом новые пользователи (кроме администратора) не могут зайти в приложение. 
 * *Проверять блокировку баз* – выполняется проверка, что в базе выставлен признак обновления (база заблокирована под администратором) 

 h4. Закладка Изменения 

 Отображает список изменений, находящихся в обновлении. 

 h4. Закладка Лог 

 Отображает лог процесса обновления 

 h3. Использование установщика 

 Необходимо указать расположение исполняемых файлов, выбрать базы для обновления, указать для них пароль, выбрать необходимые опции.  
 Если всё указано правильно и обновление подходит для выбранных баз, то становится доступной кнопка @Обновить@. 
 Процесс обновления запускается нажатием на кнопку @Обновить@. 

 Если на каком-то этапе произошла ошибка, то процесс обновления прерывается и выдаётся сообщение с указанием ошибки. Так же эта информация заносится в лог. 
 Необходимо устранить ошибки и запустить обновление заново. Резервное копирование исполняемых файлов повторно можно не делать. 

 h2. Возможные ошибки 

 Список что может привести к ошибке обновления: 
 * *База не заблокирована под админом.*  
 Нужно выполнить блокировку. 
 * *Не вышли все пользователи.*  
 Нужно выждать 15 минут после блокировки базы, тогда произойдёт автоматическое закрытие приложения у пользователей. 
 Так же можно отключить сессии пользователей в toad или аналогичном средстве. 
 * *Обнаружены невалидные объекты.*  
 Нужно устранить невалидные объекты в базе (скомпилировать их). 
 * *Ошибка при создании резервной копии.*  
 Нужно устранить причины, мешающие копированию файлов 
 * *Ошибка при копировании новых файлов.*  
 Исполняемые файлы могут быть открыты по сети и это не даёт их перезаписать. В этом случае в логе появляется сообщение @… - не удалось скопировать за первый проход@.  
 Установщик пытается произвести закрытие сетевых подключений для таких файлов, и повторно скопировать. Иногда это не удаётся, тогда процесс копирование прерывается с ошибкой. 
 * *Ошибка при проверке версий новых файлов.*  
 Нужно проверить, что всё скопировалось правильно и связаться с разработчиками, возможно ошибка в самом обновлении. 
 * *Ошибка при запуске скриптов.*  
 Подробную информацию можно найти *[[#Закладка Лог|на закладке "Лог"]]*. Вышлите логи разработчикам Omega Production (создайте задачу или вышлите отделу сопровождения) в логе. Обычные ошибки ora- не приводят к прерыванию процесса обновления, а заносятся в лог запуска скриптов.  
 Но если в процессе обновления в базе появляются невалидные объекты, то обновление прерывается. Нужно разбираться какие объекты стали невалидными и что к этому привело.  
 Устранять причину, устранять невалидные объекты (компилировать их) и снова запускать обновление.