Обновление Oracle до версии 9.2.0.6 в Gentoo Linux


Mark Silinio <silinio(at)mail.ru>
последнее обновление 21/07/05



Данная заметка является переводом Apply Oracle Upgrade 9.2.0.6 с дополнениями относительно установки на Gentoo Linux. Основная часть этого материала также применима и к другим ОС (Windows в том числе).

Что имеем:

А имеем мы дистрибутив Gentoo Linux с установленным Oracle 9.2.0.1. В качестве инструкции по установке Oracle использовался следующий документ,- http://conrad2001.narod.ru/terek/oracle9204linux4.htm. Ещё у нас есть свежий патч p3948480_9206_LINUX.zip с ftp://updates.oracle.com.
И начинаем как пользователь root...

Тут:



Приготовления

Временно меняем компилятор на более старый:
# gcc-config i686-pc-linux-gnu-2.95.3

Убеждаемся что в /etc/X11/xdm/Xservers отсутсвует такая строка:
:0 local /usr/X11R6/bin/X -nolisten tcp

Ежели оно там есть, то убираем -nolisten tcp и перезапускаем X-сервер.


Разрешаем локальное соединение к X-серверу:
# xhost +127.0.0.1

Будучи пользователем root становимся пользователем oracle:
# /bin/su - oracle

Распаковываем патч в домашнюю директорию пользователя oracle:
oracle@localhost ~ $ unzip p3948480_9206_LINUX.zip -d ~/

Хитрим для возможности установки патча под любой дистрибутив Linux'а,- для этого меняем в файле /home/oracle/Disk1/install/oraparam.ini строку:
Linux=SuSE-7,redhat-2.1AS,redhat-2.1,UnitedLinux-1.0,redhat-3,SuSE-8

на:
Linux=

Указываем локальный X-сервер для соединения:
oracle@localhost ~ $ export DISPLAY=127.0.0.1:0.0

Останавливаем listener процесс:
oracle@localhost ~ $ lsnrctl stop



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

Запускаем установщик:
oracle@localhost ~ $ ./Disk1/runInstaller

Тут жмём Next, в следующем окне правильно выбираем Destination Name и Destination Path.
И Next. Выбирайте для установки Oracle Universal Installer 10.1.0.3.0.
Опять Next. End of Installation, Exit... Всё должно пройти нормально.

Заново запускаем установщик:
oracle@localhost ~ $ ./Disk1/runInstaller

Всё как в тот раз, только выбираем для установки Oracle 9iR2 Patch Set 9.2.0.6.0.
Это займёт некоторое время, и в конце вас попросят запустить скрипт root.sh.

Запускаем скрипт root'ом:
# $ORACLE_HOME/root.sh



Подготовка к обновлению Баз Данных

Залогиньтесь как пользователь конкретной БД, и запустите её:
SQL> startup

Введите следующую команду для определения нахождения файла параметров инициализации(initsid.ora) или файла параметров сервера(spfiledbname.ora):
SQL> show parameter pfile;

Если используется файл параметров сервера, то выполните следующие шаги:
Определим текущее значение параметра SHARED_POOL_SIZE:
SQL> show parameter shared_pool_size;

Если оно меньше 150Мб, то изменим его:
SQL> alter system set shared_pool_size='150M' scope=spfile;

Определим текущее значение параметра JAVA_POOL_SIZE:
SQL> show parameter java_pool_size;;

Если оно меньше 150Мб, то тоже изменим его:
SQL> alter system set java_pool_size='150M' scope=spfile;

Остановим БД:
SQL> shutdown immediate;



Обновление Баз Данных

Соединяемся с БД:
sqlplus /nolog
SQL> connect / as sysdba

Выполняем следующие команды:
SQL> startup migrate
SQL> spool patch.log
SQL> @?/rdbms/admin/catpatch.sql
SQL> spool off

не забудте посмотреть patch.log на предмет ошибок.
Перезапускаем БД:
SQL> shutdown immediate
SQL> startup

Рекомендуется выполнить следующий скрипт для перекомпиляции всех ошибочных PL/SQL пакетов:
SQL> @?/rdbms/admin/utlrp.sql

Как пользователь oracle запустите listener процесс:
oracle@localhost ~ $ lsnrctl start


помните, вы должны выполнить все пункты "Обновление Баз Данных" для каждой из ваших БД.


<- Назад
Valid HTML 4.01! Valid CSS!