Исправление базы данных Oracle с помощью AutoUpgrade
В этой статье подробно статье , как установить патч для базы данных Oracle 19c AutoUpgrade. AutoUpgrade инструмент, рекомендованный Oracle для более быстрого, безопасного и простого управления обновлениями базы данных. Мы также покажем, как использовать AutoUpgrade автоматической и простой установки патча для базы данных.
В этом примере мы увидим, как с AutoUpgrade можно не только исправить базу данных, но и загрузить необходимые исправления, создать новый корневой каталог Oracle, что позволяет применять исправления с помощью рекомендуемого метода «out-of-place». Autoupgrade автоматически Autoupgrade проверки до и после исправления, что делает его более простым методом для применения исправлений к нашей базе данных.
Наша лаборатория
Base de datos 19c: versión 19.27
Multitenant: Si. PDBS (TESTPDB1).
RAC: No

В нашем случае у нас есть база данных версии 19.27.0.0.0, и мы собираемся применить патч 19.28.
1 – Подготовьте базу данных перед установкой патча.
Независимо от применяемого метода, Oracle всегда рекомендует проанализировать базу данных или выполнить предварительную проверку состояния базы данных, чтобы узнать, можно ли без проблем установить исправление.
Для этого мы запустим AutoUpgrade режиме «analyze», где будет выполнен анализ, чтобы проверить, готова ли наша база данных к установке патча.
Autoupgrade файл конфигурации с информацией о базе данных, которую необходимо исправить.
Мы создали файл 01-simple.patching.cfg со следующей информацией:
global.autoupgrade
patch1.source_home=/u01/app/oracle/product/19
patch1.target_home=/u01/app/oracle/product/19_28
patch1.sid=TEST
patch1.folder=/home/oracle/patch-repo
patch1.patch=RECOMMENDED,37738908
patch1.download=no
source_homeиsidописывает текущую базу данных.- global_log_dir каталог, в котором будут храниться файлы журнала.
target_homeуказывает расположение нового Oracle Home. Если он не существует, AutoUpgrade новый с характеристиками исходного Oracle.folderуказывает Autoupgrade находится патч, который необходимо применить. В данном случае мы загрузили его заранее, но вы можете указать Autoupgrade он загрузил патч автоматически. Для этого необходимо указать правильные учетные данные My Oracle Support.patchуказывает AutoUpgrade патч следует применить.RECOMMENDEDозначает OPatch обновление OPatch и последней версии, а также патчей пакетов OJVM и Data Pump.downloadВы указываете учетные данные, по которым Oracle должен загрузить патч. В нашем случае это не применимо, так как патч был загружен ранее.
2 – Проанализируйте базу данных перед установкой патча.
Запускаем следующую команду с опцией analyze
java -jar autoupgrade.jar -config scripts/01-simple.patching.cfg -mode analyze
3 – Мониторинг процесса
lsj -a 10
- lsj выводит список активных заданий, то есть наш «analyze» патча, и обновляется каждые 10 секунд.

Дождитесь завершения процесса. Если все в порядке, результат будет похож на следующий, с «jobs falied 0».
4 – Проверяем файлы журналов
Перед окончательным применением патча рекомендуется проверить файлы html/log, сгенерированные AutoUpgrade. Эти файлы содержат сводный отчет об анализе и указывают, была ли предварительная проверка выполнена правильно.

В журнале отчета указано:
- База данных, которую необходимо исправить, будет нашей базой данных TEST.
- Мы устанавливаем патч с версии 19.27 на 19.28 (патч, который мы скачали).
- В вашей собственной среде, когда AutoUpgrade исправления, он всегда будет брать последнюю доступную версию обновления из MOS, если вы укажетеpatch=recommended.
В данном случае мы не подключены к Oracle Support, поэтому исправления не будут загружены, даже если указать patch=recommended. В среде, подключенной к Oracle, будут загружены исправления для применения последнего обновления, доступного в MOS. - Указано, что все PRECHECKS являются правильными и никаких ручных действий не требуется.
- Таким образом, эта база данных готова к патчеванию.
5 – Мы исправляем базу данных.
java -jar autoupgrade.jar -configscripts/01-simple.patching.cfg -mode deploy
Проверяем состояние нашего патча:
lsj -a 10

lsj выводит список активных заданий, то есть наш «analyze» патча, и обновляется каждые 10 секунд.
Если нам нужна дополнительная информация о процессе, мы можем сделать следующее.
Нажмите ENTER на предыдущем экране, чтобы перейти к главному экрану autoupgrade, где мы выполним следующее
статус -задание 102 -a 10
Примечание: число 102 обозначает задание нашего процесса, которое можно определить в выводе команды lsj.

6- Проверяем файлы журнала.
В выводе команды можно увидеть путь к файлам журнала. Рекомендуется проверять эти файлы во время применения патча, чтобы убедиться, что все выполняется правильно.
По завершении процесса мы увидим следующее.

Как мы можем видеть, AutoUpgrade «точку восстановления», с помощью которой мы сможем отменить процесс в случае обнаружения ошибки при применении патча. Пока что мы не удаляем его, пока не убедимся, что весь процесс прошел правильно.
Мы еще раз тщательно проверили файлы журнала, чтобы убедиться, что при установке патча не произошло никаких ошибок.
Мы проверяем, что пластырь наклеен правильно.
export ORACLE_HOME=/u01/app/oracle/product/19_28/
opatch lspatches

После того, как мы убедились, что все в порядке, мы можем удалить точку восстановления.

Как мы видим, с помощью AutoPatch можно автоматически выполнять следующие действия:
- Исправить базу данных.
- Создан новый Oracle
- Обновление Opah и обновления версий необходимых патчей.
- Предварительная проверка и последующие действия после установки патча.
- Копирование файлов конфигурации старой базы данных.
Наконец, мы обновим наш скрипт профиля среды, чтобы он соответствовал нашему новому Oracle Home.

Пример profile19_28.env

