Документ создан: 27.04.2010

Установка Oracle 11gR2 на CentOS 5.4 (x86)

В этой статье описаны шаги установки Oracle 11gR2 на несертифицированную самой Oracle операционную систему, но являющуюся, по сути, обычной Red Hat, которая сертифицирована Oracle.

Я работаю под bash, соответственно, всё будет производится без учёта специфики других шелов.

Создание групп и пользователя

groupadd oinstall
groupadd dba
useradd -m -d /home/oracle -G oinstall,dba -s `which bash` oracle
passwd oracle

Если вы планируете использовать RALUS (Remote Agent for Linux and UNIX Servers) от Veritas Backup Exec (возможно, ещё кому-то понадобится) для резервирования данных, нужно ещё выполнить нижеследующее:

groupadd oper
useradd -a -G oper oracle

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

Устанавливаем пакеты, которые необходимы для установки Oracle. Мне понадобилось доставить:

yum install gcc -y
yum install compat-libstdc++-33 -y
yum install elfutils-libelf-devel -y
yum install sysstat -y
yum install unixODBC unixODBC-devel -y
yum install pdksh -y
yum install libaio-devel -y
yum install libstdc++-devel gcc-c++ -y

Получение дистрибутивов Oracle DB и распаковка их

Этот пункт выполняется от имени пользователя "oracle"
Получить дистрибутив можно отсюда http://www.oracle.com/technology/software/products/database/index.html.
Я положил его в ~/distrib. После получения я создал каталог, в который распаковал архив:

unzip -d ~/oracle/ ~/distrib/linux_11gR2_database_1of2.zip 
unzip -d ~/oracle/ ~/distrib/linux_11gR2_database_2of2.zip 

Переменные ядра

Мне оказалось достаточным добавить нижеприведённое. У вас может быть по другому, сверьтесь с документацией.
/etc/sysctl.conf:

cat >> /etc/sysctl.conf << EOF
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
EOF

После редактирования нужно применить эти значения:

sysctl -p

Ограничения оболочки для пользователя oracle

/etc/security/limits.conf:

cat >> /etc/security/limits.conf << EOF
oracle          soft    nproc           2047
oracle          hard    nproc           16384
oracle          soft    nofile          1024
oracle          hard    nofile          65536
EOF

Создание каталогов

Я планирую поставить ещё и 10g, поэтому каталог назван с указанием версии БД:

mkdir -p /opt/oracle/11g/product
chown -R oracle:oinstall /opt/oracle/11g/product
chmod 755 /opt/oracle/11g/product

mkdir -p /opt/oracle/11g/oradata
chown -R oracle:oinstall /opt/oracle/11g/oradata
chmod 755 /opt/oracle/11g/oradata

chown -R oracle:oinstall /opt/oracle/11g
chmod 755 /opt/oracle/11g

mkdir -p /opt/oracle/11g/flash_recovery_area
chown -R oracle:oinstall /opt/oracle/11g/flash_recovery_area
chmod 755 /opt/oracle/11g/flash_recovery_area

mkdir -p /opt/oracle/oraInventory
chown -R oracle:oinstall /opt/oracle/oraInventory
chmod 755 /opt/oracle/oraInventory

mkdir -p /opt/oracle/tmp
chmod a+wr /opt/oracle/tmp

Настройка окружения пользователя Oracle

Переключаемся в пользователя:

su - oracle

и редактируем файл ~/.bash_profile добавив в него:

umask 022

и применяем для текущей сессии, выполнив в консоли:

umask 022

Объявляем переменные:

export TEMP=/opt/oracle/tmp
export TMPDIR=/opt/oracle/tmp
export ORACLE_BASE=/opt/oracle/11g
export ORACLE_SID=ORA11G

Сбрасываем значения переменных (если присутствуют):

unset ORACLE_HOME
unset TNS_ADMIN

Установка

Так как CentOS не сертифицирован Oracle для использования в качестве ОС для своих БД, запускаем установку без проверки системных требований:

~/oracle/database/runInstaller -ignoreSysPrereqs

далее - по подсказкам установщика и собственным нуждам.
Если Oracle что-то не устроит, он об этом напишет на шаге проверки требований окружения (Product - Specific Prerequisite Checks)
Если ваша машина получает ip-адрес по DHCP, можно просто выставить флажок на пункте проверки сетевого окружения и нажать кнопку Retry. База будет работать.

Постустановочная настройка

Добавим переменные окружения в профиль, для того, чтобы не выставлять их постоянно вручную. Для этого редактируем ~/.bash_profile путём добавления в него:

ORACLE_SID=ORA11G
ORACLE_HOME=/opt/oracle/11g/product/11.2.0/dbhome_1
export ORACLE_HOME ORACLE_SID

LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

и редактирования PATH:

PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin



Вот, собственно, и всё.

Если возникнут вопросы, на Главной есть e-mail. Пишите, попробую ответить.

 
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki Donate