Краткая инструкция по установке промежуточного патча для Oracle 10g на Windows
By: Date: 04.10.2012 Categories: !RUS,Install,ORACLE

На примере 10.2.0.5 Patch 10

В самом патче есть файл README.html — там всё подробно описано. Лучше его всегда читать, т.к. в каждом патче могут быть свои особенности.

Для установки нужны два архива, сам патч и последняя версия утилиты OPatch (How To Download And Install The Latest OPatch Version [ID 274526.1])

Подготовка к установке патча:

1) Останавливаем все службы Oracle

2) Сохраняем всё что можно:
— Папку куда установлен Oracle
— C:Program FilesOracle
— C:Program Files(x86)Oracle
— Ветки реестра
HKEY_LOCAL_MACHINESOFTWAREORACLE
HKEY_LOCAL_MACHINESOFTWAREWow6432NodeORACLE
— Переменную окружения PATH

3) Резервирование БД. Например, холодная копия БД (просто копия папки где лежат файлы БД, если не знаете где они лежат — лучше посмотреть на работающей БД)

Установка патча:

Читаем (п.3 и п.4) и делаем по ссылке —Установка Oracle Server 10gR2 на ОС семейства Windows (2003, 2008) для чайников на примере установки версии 10.2.0.5 Patch 10

4) п.3. Обновление утилиты OPatch

5) п. 4. Установка промежуточного патча

6) Установить патч на БД
— Запустить сервисы Listener и БД
— Выполнить в CMD

C:> cd %ORACLE_HOME%BUNDLEPatch10
C:> sqlplus /nolog

%ORACLE_HOME% — папка где установлен Oracle

— Далее выполняете в sqlplus

SQL> CONNECT sys/sys@basa1 AS SYSDBA
SQL> STARTUP
SQL> @catcpu.sql
SQL> QUIT

Изучить лог выполнения скрипта catcpu.sql на предмет наличия ошибок. Можно поискать по тексту фразу «ORA-«. В README.html есть описания ошибок не которые можно не обращать внимания (4.1.1 Generic Issues). С такими ошибками ничего делать не нужно.

После установки:

Можно проверить наличие инвалидных объектов в БД, но лучше просто выполнить перекомпиляцию инвалидных объектов utlprp.sql.

C:> cd %ORACLE_HOME%rdbmsadmin
C:> sqlplus /nolog
SQL> CONNECT sys/sys@basa1 AS SYSDBA
SQL> @utlprp.sql 0

Можно проверить какой патч установлен в базе

select * from registry$history;

===========================================================

Если что-то пошло не так — можно вернуть всё обратно из резервной копии.