Проект

Общее

Профиль

UpdateOmegaProduction » История » Версия 5

BEA, 27.08.2024 18:57

1 1 BEA
h1. Обновления
2 2 BEA
3 4 BEA
{{>toc}}
4
5 5 BEA
h2. Общеее описание обновления
6
7
Обнволения бывают 2 видов:
8
* Релиз - основное крупное обновления с одной версии на другую
9
* Патч - небольшие обновления и правки
10
11
*Установка происходит строго последовательно! То есть: релиз->патч 1->патч 2 и так далее*
12
Рекомендуется:
13
* перед обновлением делать бекап базы данных и резервную копию файлов приложения
14
* во время обновления блокировать доступ пользователей
15
16
Методы установки:
17
* [[UpdateOmegaProduction#Установщик обновлений|установщик обновлений]] (рекомендуется)
18
* копирование файлов приложения и пуск скриптов 
19
20 2 BEA
h2. Установщик обновлений
21
22
Установщик необходимо запускать на сервере, на котором располагаются исполняемые файлы Омеги.
23 3 BEA
24
h3. Первый запуск и настройка
25
26 2 BEA
При первом запуске установщик выдаст сообщение “Укажите в настройках путь к tnsnames.ora". 
27
Нужно зайти в пункт “Настройка” и указать путь к tnsnames.ora, в котором есть алиасы к используемым базам.
28
При последующих запусках может появиться сообщение “Не обнаружен tnsnames.ora”. 
29 3 BEA
Нужно зайти в пункт “Настройка” и скорректировать путь к tnsnames.ora, в котором есть алиасы к используемым базам.
30 2 BEA
После задания\изменения пути к tnsnames.ora требуется перезапуск установщика.
31 1 BEA
Путь выглядит примерно так: C:\app\product\12.2.0\client_1\network\admin\
32 4 BEA
33 1 BEA
h3. Описание установщика
34 4 BEA
35
Внешний вид установщика:
36 1 BEA
!clipboard-202408211920-rj3vg.png!
37
38
h4. Закладка Обновление
39
40
h5. Раздел Экземпляр
41
42 5 BEA
* *Расположение приложения Omega Production для обновления* – расположение, в котором находятся папки App32, App64 или AppC64
43
* *Версия приложения* – отображает текущую версию приложения из соответствующей папки. 
44
Если в расположении отсутствует папка, для которой есть обновление в патче, то будет написано “Отсутствует. Будет обновлено”
45
* *Базы данных* – отображает список баз из файла omp_db.ini приложения. 
46
Нужно отметить базы, подлежащие обновлению и указать пароль администратора в поле “Пароль”. 
47
Тогда в поле “Версия скриптов” отобразится версия скриптов из базы.
48 1 BEA
49 4 BEA
h5. Раздел Обновление
50
51 5 BEA
* *Название* – название обновления.
52
* *Версия приложения* – указывает на какую версию приложения произойдёт обновление.
53
* *Версия скриптов* – указывает с какой на какую версию скриптов произойдёт обновление.
54
55 1 BEA
Если версия скриптов, с какой должно производиться обновление, не совпадает с версиями скриптов выбранных баз, то кнопка “Обновить” будет недоступна.
56 4 BEA
57
h5. Раздел опций
58
59
* Делать резервную копию приложения – существующие исполняемые файлы будут скопированы в папку Backups в выбранном расположении.
60
* Устанавливать блокировку баз – в базе выставляется признак обновления (блокировка под администратором), при этом новые пользователи (кроме администратора) не могут зайти в приложение.
61
* Проверять блокировку баз – выполняется проверка, что в базе выставлен признак обновления (база заблокирована под администратором)
62
63 2 BEA
h4. Закладка Изменения
64 1 BEA
65 2 BEA
* Отображает список изменений, находящихся в обновлении.
66 4 BEA
67
h4. Закладка Лог
68
69
* Отображает лог процесса обновления
70 1 BEA
71 5 BEA
h3. Использование установщика
72 1 BEA
73
Необходимо указать расположение исполняемых файлов, выбрать базы для обновления, указать для них пароль, выбрать необходимые опции. Если всё указано правильно и обновление подходит для выбранных баз, то становится доступной кнопка “Обновить”.
74
Процесс обновления запускается нажатием на кнопку “Обновить”. При этом в зависимости от выбранных опций выполняются следующие действия:
75
* Устанавливаются блокировки баз
76
* Выполняется проверка на блокировку баз
77
* Выполняется проверка на отсутствие подключений к базам
78
* Выполняется проверка на отсутствие невалидных объектов в базах
79
* Выполняется резервное копирование исполняемых файлов
80
* Выполняется копирование новых исполняемых файлов
81
* Выполняется проверка версий исполняемых файлов
82
* Выполняется запуск скриптов по базам. Повторный запуск обновления (если он был прерван по ошибке) не приводит к повторному запуску скриптов. Уже пущенные скрипты будут пропускаться.
83
* Выполняется снятие блокировки с баз
84 5 BEA
85 1 BEA
Если на каком-то этапе произошла ошибка, то процесс обновления прерывается и выдаётся сообщение с указанием ошибки. Так же эта информация заносится в лог.
86 5 BEA
Необходимо устранить ошибки и запустить обновление заново. Резервное копирование исполняемых файлов повторно можно не делать.
87
88
h2. Возможные ошибки
89
90
Список что может привести к ошибке обновления:
91
* *База не заблокирована под админом.* 
92
Нужно выполнить блокировку.
93
* *Не вышли все пользователи.* 
94
Нужно выждать 15 минут после блокировки базы, тогда произойдёт автоматическое закрытие приложения у пользователей.
95
Так же можно отключить сессии пользователей в toad или аналогичном средстве.
96
* *Обнаружены невалидные объекты.* 
97
Нужно устранить невалидные объекты в базе (скомпилировать их).
98
* *Ошибка при создании резервной копии.* 
99
Нужно устранить причины, мешающие копированию файлов
100
* *Ошибка при копировании новых файлов.* 
101
Исполняемые файлы могут быть открыты по сети и это не даёт их перезаписать. В этом случае в логе появляется сообщение @… - не удалось скопировать за первый проход@. 
102
Установщик пытается произвести закрытие сетевых подключений для таких файлов, и повторно скопировать. Иногда это не удаётся, тогда процесс копирование прерывается с ошибкой.
103
* *Ошибка при проверке версий новых файлов.* 
104
Нужно проверить, что всё скопировалось правильно и связаться с разработчиками, возможно ошибка в самом обновлении.
105
* *Ошибка при запуске скриптов.* 
106
Подробную информацию можно найти в логе. Обычные ошибки ora- не приводят к прерыванию процесса обновления, а заносятся в лог запуска скриптов. 
107
Но если в процессе обновления в базе появляются невалидные объекты, то обновление прерывается. Нужно разбираться какие объекты стали невалидными и что к этому привело. 
108
Устранять причину, устранять невалидные объекты (компилировать их) и снова запускать обновление.