Ключевые слова:linux, redhat, install, oracle, (найти похожие документы)
From: Дрезюля Дмитрий <dda_at_unicor.ru>
Оригинал: http://freeunix.unicor.ru
Date: Mon, 8 Jun 2003 13:01:37 +0000 (UTC)
Subject: Установка Oracle 9i на Linux RedHat 8.0
Установка Oracle 9i на Linux RedHat 8.0
У меня имелся следующий сервер:
Процессор P4 1.8 ГГц
Винчестер: 40 Гб
Память 512 Мб DDR
Качаю дистрибутив линукса отсюда ftp.uib.no/pub/linux/iso-images/
Скачал следйющие диски:
Redhat80-i386-disc1.iso
Redhat80-i386-disс2.iso
Redhat80-i386-disс3.iso
Для инстолятора оракла нужен Sun JDK 1.3.1 для замены стандартного
jre который идет в поставке с ораклом. Качаю его c сайта www.sun.com
j2sdk-1_3_1_08-linux-i586.bin
Это самораспаковывающийся архив.
Далее с сервера www.oracle.com скачиваю дистрибутив оракла под линукс
для этого нужно зарегестрироваться на сайте:
lnx_920_disc1.cpio.gz
lnx_920_disc2.cpio.gz
lnx_920_disc3.cpio.gz
Создаю диски и iso имиджей Линукса.
Инсталирую Линукс в варианте Server.
При инсталяции создал такие разделы:
Filesystem 1K-blocks Mounted on
/dev/hda1 497829 /
/dev/hda2 3526204 /home
/dev/hda7 27878012 /opt
/dev/hda5 2522048 /usr
/dev/hda3 2522076 /var
Настройка Linux.
1. Открываю файл /etc/profile и вставляю в него записи переменных
окружения это общий profile файл поэтому эти переменные будут
у всех ползователей.
ORACLE_BASE=/opt/vendor/oracle
ORACLE_HOME=/opt/vendor/oracle/9.2.0.1.0
ORACLE_SID=oralinux
PATH=$PATH:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$ORACLE_HOME/network/lib
export PATH ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH
Здесь экспортируются домашния директория оракла, путь к базам данных оракла
и название базы данных которая создастся при установке.
2. Копирую j2sdk-1_3_1_08-linux-i586.bin в каталог /usr/local и запускаю:
#sh j2sdk-1_3_1_08-linux-i586.bin
В итоге получаю такую директорию: jdk1.3.1_08
Делаю символическую ссылку на нее:
#ln -fs ./jdk1.3.1_08 ./jdk
Далее в дистрибудиве оракла надо будет изменить путь к jdk.
3. C третьего диска RedHat инсталлирую следующий пакет необходимы для
запуска инсталятора Оракла: compat-libstdc++-7.3-2.9.6.110.i386.rpm
Если этого действия не выполнить то при запуске инсталятора будет
выдаваться ошибка.
#rpm -I compat-libstdc++-7.3-2.9.6.110.i386.rpm
4. Меняю настройки ядра.
echo 250 32000 100 100 > /proc/sys/kernel/sem
echo 2147483648 > /proc/sys/kernel/shmmax
echo 4096 > /proc/sys/kernel/shmmni
echo 2097152 /proc/sys/kernel/shmall
echo 65536 > /proc/sys/fs/file-max
echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
Для того чтоб эти настройки оставались и после перезагрузки добавляю их в файл
/etc/rc.d/rc.local
Мой файл выглядит таким образом:
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don\'t
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
echo 250 32000 100 100 > /proc/sys/kernel/sem
echo 2147483648 > /proc/sys/kernel/shmmax
echo 4096 > /proc/sys/kernel/shmmni
echo 2097152 /proc/sys/kernel/shmall
echo 65536 > /proc/sys/fs/file-max
echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
5. Создаю пользователя oracle и группу dba.
#groupadd dba
#useradd -g dba oracle
6. Создаю директорию vendor в директории /opt и даю всем пользователям права на
запись в нее.
#chmod 755 /opt/vendor
7. Копирую три файла с дистрибутивом оракла в каталого /home/oracle и
распаковыйваю его.
#su oracle
#gzip -d lnx_920_disk1.cpio.gz
#gzip -d lnx_920_disk2.cpio.gz
#gzip -d lnx_920_disk3.cpio.gz
#cpio -idmv < lnx_920_disk1.cpio
#cpio -idmv < lnx_920_disk2.cpio
#cpio -idmv < lnx_920_disk3.cpio
В итоге получаю три директории Disk1 Disk2 и Disk3.
8. Внесение изменений в дистрибутив оракла.
В файле /home/oracle/Disk1/install/linux/oraparam.ini
Значение JRE_LOCATION изменяем на /usr/local/jdk.
9. Все теперь осталось запустить X сервер и запустить файл
/home/oracle/Disk1/runInstaller.
Я выполнял инсталляцию на удаленной машине поэтому выполнил следующие
действия:
На сервере:
#export DISPLAY=10.0.0.100 #адрес моей рабочей станции с запущеным X сервером
На рабочей станции:
#xhost + # разрешил всем хостам подключатся к моей рабочей станции.
10. Я не буду описывать процес инсталяции, но в процессе у меня возникла ошибка:
Непомню как точно но что то про /ctx/lib/ins_ctx.mk
Это происходит в то время когда оракл делает следующее:
/usr/bin/make -f ins_ctx.mk install
ORACLE_HOME=/opt/oracle/product/9.2.0
Для ее устранения надо внести изменения в файл
/opt/vendor/oracle/9.2.0.1.0/ctx/lib/env_ctx.mk
В строке где встречается \"INSO_LINK =\", добавить \"$(LDLIBFLAG)dl\"
Так выглядит исправленная строка:
INSO_LINK = -L$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)dl $(LDLIBFLAG)sc_ca
$(LDLIBFLAG)sc_fa $(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LDLIBFLAG)sc_ut
$(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_fi $(LLIBCTXHX) $(LDLIBFLAG)c -Wl,-
rpath,$(CTXHOME)lib $(CORELIBS) $(COMPEOBJS)
После этого нажимаю Retry и ошибка исчезает.
Все после этого оракл создает базу данных и заканчивает инсталляцию.
10. Для того чтоб после перезагрузки база созданная ораклом запускалась
необходимо изменить файл /etc/oratab:
oralinux:/opt/vendor/oracle/9.2.0.1.0:N
Изменить N на Y
oralinux:/opt/vendor/oracle/9.2.0.1.0:Y
Затем внетсти изменения в файл инициализации базы данных.
#cd /opt/vendor/oracle/9.2.0.1.0/dbs
#cat initdw.ora |sed s/\"#db_name = oralinux\"/\"db_name = oralinux\"/|sed
s/#control_files/control_files/ > initbeastdb.ora
На этом все после перезагрузки запустить базы данных можно коммандой dbstart. Листнеры
запускаются командой
#lsnrctl
>info
>stop
>start
Для создания и удаления баз данных есть графическая утилита dbca.
Посвящяется Ольге.
c 2003 by Дрезюля Дмитрий mail:dda_at_unicor.ru. http://freeunix.unicor.ru