Карта сайта
Обслуживание компьютеров, ремонт компьютеров, 1С предприятие, обслуживание серверов,создание сайтов, продвижение сайтов, доработка 1С предприятие
О компании | Статьи | | Установка БД Oracle 9 на RED HAT Enterprise Linux

« Назад « На главную

Установка БД Oracle 9 на RED HAT Enterprise Linux

Оригинал: http://conrad2001.narod.ru/terek/oracle9204linux.htm

Установка БД Oracle 9.2.0.4.0 на RED HAT Enterprise Linux AS 3 (x86)
(Пошаговая инструкция)


Данный документ основан на фирменных документациях по инсталляции баз
данных Oracle9.2.0.4 и Oracle10g, а также на документации от Werner
Puschitz, расположенной по адресу http://www.puschitz.com/InstallingOracle9i.shtml

Шаг 1.
------

Минимальные требования к оборудованию согласно официальной документации:

Физическая память - 512 MB

Swap space (раздел подкачки) - 1 GB (дисковый раздел, создается при
инсталляции Linux)
Disk Space in /tmp - 400 MB (раздел для временных файлов)

Disk space for software files - 2,5 GB (минимальный объем дискового пространства
для программных файлов)
Disk space for database files - 1,2 GB (минимальный объем дискового пространства
для файлов баз данных)


При инсталляции Linux на сервере с тремя SCSI-дисками по 70 Gb я
создал следующие разделы:

1-й диск /sda:
/dev/sda1 /boot 102 Mb
/dev/sda2 / 36993 Mb
/dev/sda3 /swap 1992 Mb
/dev/sda5 /u01 30004 Mb
/dev/sda6 /tmp 910 Mb

2-й диск /sdb:
/dev/sdb1 /u02 70000 Mb

3-й диск /sdc:
/dev/sdc1 /u03 70000 Mb

Выбираем тип инсталляции - Сервер, соглашаемся с предложенными
пакетами по умолчанию и жмем кнопку Next.


Шаг 2.
------

После инсталляции требуется установить следующие программные пакеты:

binutils-2.11
compat-db-4.0.14.5
compat-gcc-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
gcc-3.2.3-2
gcc-c++-3.2.3-20
gnome-libs-1.4.1.2.90-34.1
libpng10-1.0.13-8
make-3.79
openmotif-2.2.2-16
openmotif21-2.1.30-8
setarch-1.3-1

Проверка наличия установленных пакетов:

$ rpm -q package_name
Например: rpm -q binutils-2.11

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

$ rpm -Uvh package_name
Например: rpm -Uvh binutils-2.11.i386.rpm

Шаг 3.
------

Создаем группы и пользователей:
- oinstall group (Oracle Inventory group)
- dba group (OSDBA group)
- oracle user (Oracle software owner)

Проверяем существование групп:
# grep oinstall /etc/group
# grep dba /etc/group

и если не существуют, то создаем их:
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba

Проверяем существование пользователя oracle:
# id oracle

И если не существует,то создаем его:
# /usr/sbin/useradd -g oinstall -G dba oracle

Эта команда создает пользователя oracle,входящего в:
- oinstall -> первичная группа
- dba -> вторичная группа

Создание требуемых директорий:
- /u01/app/oracle -> основная директория Oracle
- /u02/oradata -> директория баз данных Oracle(необязательно), в моем
случае базы данных будут расположены на 2-м диске

Для основной директорииOracle должно быть не менее 2,5 GB дискового
пространства или 3,7 GB, если Вы не создали директорию баз данных Oracle.

Проверьте размер дисковой памяти командой
# df -k
/u01 - точка монтирования для основной директории Oracle (1-й диск)
/u02 - точка монтирования для директории баз данных Oracle (2-й диск)

Создаем рабочие директории:
# mkdir -p /u01/app/oracle
# mkdir /u02/oradata

Назначаем права пользователю oracle и группе oinstall на созданные директории:
# chown -R oracle:oinstall /u01/app/oracle /u02/oradata

Назначаем разрешения:
# chmod -R 775 /u01/app/oracle /u02/oradata


Шаг 4.
------

Конфигурирование параметров ядра (см.рекомендованные параметры):

---------------------------------------------------------------
Parameter Value File

semmsl 100 /proc/sys/kernel/sem
semmns 32000
semopm 100
semmni 100

shmall 2097152 /proc/sys/kernel/shmall

shmmax Half the /proc/sys/kernel/shmmax
size of
physical
memory
(2147483648)

shmmni 4096 /proc/sys/kernel/shmmni

file-max 65536 /proc/sys/fs/file-max

ip_local_port_range 1024 65000 /proc/sys/net/ipv4/ip_local_port_range
---------------------------------------------------------------

Выполните следующие команды для проверки параметров ядра:

---------------------------------------------------------------
Parameter Command

semmsl, semmns, /sbin/sysctl -a | grep sem
semopm, and
semmni

shmall, shmmax, /sbin/sysctl -a | grep shm
and shmmni

file-max /sbin/sysctl -a | grep file-max

ip_local_port_range /sbin/sysctl -a | grep ip_local_port_range
---------------------------------------------------------------

Если значения не совпадают с рекомендованными, то используя любой
текстовый редактор создайте или отредактируйте файл /etc/sysctl.conf:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 100
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

Затем перезагрузите систему. Поверьте еще раз параметры ядра командой:
# /sbin/sysctl -p


Шаг 5.
------

Установка Shell Limits для пользователя oracle:

---------------------------------------------------------------
Shell Limit Item in limits.conf Hard Limit

Maximum number of open nofile 65536
file descriptors

Maximum number of processes nproc 16384
available to a single user
---------------------------------------------------------------

1.Добавьте следующие строки в файл etc/security/limits.conf
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536

2.Добавьте строку в файл /etc/pam.d/login
session required /lib/security/pam_limits.so

Для командных оболочек Bourne,Bash или Korn добавьте строки в файл /etc/profile

if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

Шаг 6.
------

Добавьте следующие строки в файл пользовательского окружения
переменных /home/oracle/.bash_profile

umask 022
export LD_ASSUME_KERNEL=2.4.1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/OraHome1
export ORACLE_SID=inventor
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin
TEMP=/tmp
TMPDIR=/tmp
export TEMP TMPDIR

Затем выполните следующие команды:

su - root
mv /usr/bin/gcc /usr/bin/gcc323
ln -s /usr/bin/gcc296 /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++323 -если g++ не существует,то
пакет gcc-c++-3.2.3-20 не установлен
ln -s /usr/bin/g++296 /usr/bin/g++


Шаг 7.
------

Желательно скопировать дистрибутивы Oracle 9.2.0.4.0 на жесткий диск и
производить установку с жесткого диска.
Я скопировал дистрибутивы на 3-й диск в /u03/distr/ora9i:
/u03/distr/ora9i/Disk1
/u03/distr/ora9i/Disk2
/u03/distr/ora9i/Disk3

Шаг 8.
------

Проделайте следующие действия в окне терминала:

$ su - root
$ xhost +127.0.0.1
$ su - oracle
$ DISPLAY=127.0.0.1:0.0
$ export DISPLAY

Проверьте правильность переменных окружения, выполнив команды:

$ env | more
Затем выполним обнуление переменных окружения:
$ unset ORACLE_HOME
$ unset TNS_ADMIN
$ unset JAVA_HOME

Внимание!!! Если сейчас запустить инсталлятор командой
/u03/distr/ora9i/Disk1/runInstaller

то получим следующее сообщение об ошибке:
Error occurred during initialization of VM
Unable to load native library:
/tmp/OraInstall2003-10-25_03-14-57PM/jre/lib/i386/libjava.so:
symbol __libc_wait, version GLIBC_2.0 not defined in file
libc.so.6 with link time reference

Эта ошибка есть баг дистрибутива, и поэтому качаем патч
http://conrad2001.narod.ru/terek/p3006854_9204_LINUX.zip, открываем
другое окно терминала и делаем следующее:

# su - root
# unzip p3006854_9204_LINUX.zip
# cd 3006854
# sh rhel3_pre_install.sh

Программа должна выдать сообщение:
Applying patch...
Patch successfully applied

Закрываем это окно терминала и переключаемся в <<свое>> окно терминала
и выполняем команду:
/u03/distr/ora9i/Disk1/runInstaller

Устанавливаем Oracle.

На завершающем этапе установки, когда Oracle запускает соответствующие
службы, выдается ошибка,связанная с Oracle Intelligent Agent:

Parameter "orahome" = /u01/app/oracle
Parameter "nodeinfo" = NO_VALUE
Agent Service Failed

Завершаем процесс инсталляции (Next -> Exit)
Если запустить Oracle Intelligent Agent вручную командой

$ agentctl start

как рекомендовано в фирменной документации,то программа выдаст ошибку:

DBSNMP for Linux: Version 9.2.0.4.0 - Production on 07-JAN-2004 19:11:14
Copyright (c) 2003 Oracle Corporation. All rights reserved.
Starting Oracle Intelligent
Agent.../opt/oracle/product/9.2.0/bin/dbsnmpwd: line 156: 1855
Segmentation fault nohup $ORACLE_HOME/bin/dbsnmp $*
>>$DBSNMP_WDLOGFILE 2>&1
/opt/oracle/product/9.2.0/bin/dbsnmpwd: line 156: 1868 Segmentation
fault nohup $ORACLE_HOME/bin/dbsnmp $* >>$DBSNMP_WDLOGFILE 2>&1
/opt/oracle/product/9.2.0/bin/dbsnmpwd: line 156: 1880 Segmentation
fault nohup $ORACLE_HOME/bin/dbsnmp $* >>$DBSNMP_WDLOGFILE 2>&1
/opt/oracle/product/9.2.0/bin/dbsnmpwd: line 156: 1892 Segmentation
fault nohup $ORACLE_HOME/bin/dbsnmp $* >>$DBSNMP_WDLOGFILE 2>&1

Поэтому качаем патчи http://conrad2001.narod.ru/terek/p2617419_220_GENERIC.zip
и http://conrad2001.narod.ru/terek/p3238244_9204_LINUX.zip и делаем следующее:

# su - oracle
$ cp p2617419_210_GENERIC.zip /tmp (копируем в /tmp)
$ cd /tmp
$ unzip p2617419_210_GENERIC.zip
$ export PATH=$PATH:/tmp/OPatch
$ export PATH=$PATH:/sbin
$ which opatch
/tmp/OPatch/opatch
$ unzip p3238244_9204_LINUX.zip
$ cd 3238244
$ opatch apply

Затем мы должны перелинковать dbsnmp. Вначале проверяем наличие в
системе файлов ins_oemagent.mk и env_oemagent.mk

$ su - oracle
$ find $ORACLE_HOME -name "*.mk" | xargs grep -l dbsnmp
/opt/oracle/product/9.2.0/network/lib/ins_oemagent.mk
/opt/oracle/product/9.2.0/network/lib/env_oemagent.mk
$

И наконец производим перелинковку:

$ su - oracle
$ cd $ORACLE_HOME/network/lib
$ make -f ins_oemagent.mk install

Выполняем запуск Oracle Intelligent Agent
$ agentctl start

Теперь Oracle Intelligent Agent должен запуститься нормально.
Все! Oracle 9.2.0.4.0 установлен!

Автор: Terek <terek777 at mail.ru>

PS. Копию патчей можно найти по адресу: http://www.opennet.ru/soft/ora_inst/

30 Октябрь 2011 г.



метки:



Вверх

Подписаться на RSS

  • Новости
  • Статьи
  • Разделы статей

    Наши контакты

    +7 922 292-00-34

    +7(343)361-52-00

    Напишите нам через форму!!!

    Быстрая форма связи с нами

     
    Ваше имя?*
    Как с Вами связаться?*
    Опишите вопрос или сообщение*
    Введите код *


    Знаком (*) выделены обязательные поля.
    Каталог интернет ресурсов - ИнфоПитер
    Наверх

    ООО "Бизнес Технологии"© 2010 г.

    Написать автору

    Карта сайта