Oracle/СПТ
Версии
Проверялись следующие версии программного обеспечения:
- Альт Линукс СПТ 6.0 от 31.05.2012 (64-битная версия)
- Oracle 11g R2 (64-битная версия для Linux)
Подготовка системы
Требования к условиям установки
- Размер оперативной памяти должен быть больше 1 ГБ (1049 МБ)
- Размер подкачки должен быть больше 1 ГБ (1049 МБ)
- На /tmp должно быть более 1 ГБ свободного места (для этого можете добавить параметр size=1400M для tmpfs)
- Установка осуществляется под правами обычного пользователя
- Временный каталог должен иметь более 120 МБ свободного места
- Установка осуществляется в графическом режиме с количеством цветов > 256
- Программа установки не умещается в 800x600, поэтому лучше устанавливать в разрешении 1024x768
- Должен быть правильно настроен домен. Если установка осуществляется на localhost, уберите localhost.localdomain в файле /etc/hosts
Место во временном каталоге
Несмотря на невысокие требования программы установки, в $TMPDIR потребуется больше места при установке. Рекомендуется создать временный каталог tmp в домашнем каталоге пользователя.
под обычным пользователем:
mkdir ~/tmp
под пользователем root:
control pam_mktemp disabled
Место установки и конфигурация
Cначала определимся с конфигурацией Oracle:
- ORACLE_BASE (/opt/oracle) — место установки Oracle
- ORACLE_HOME (/opt/oracle/product/11.2.0) — место установки РСУБД
- SID (orcl) — имя экземпляра базы данных
Создадим файл /etc/sysconfig/oracle с необходимыми переменными среды окружения для Oracle:
ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/product/11.2.0
Активизируем конфигурацию:
. /etc/sysconfig/oracle
export ORACLE_BASE
Создадим пользователя и каталог для установки (под пользователем root):
mkdir -m 0775 $ORACLE_BASE /opt/oraInventory
chgrp oracle $ORACLE_BASE /opt/oraInventory
useradd oracle -d $ORACLE_BASE
passwd oracle
Последняя команда устанавливает пароль для пользователя oracle.
Установка параметров ядра
В файл /etc/sysctl.conf добавьте строки:
kernel.shmmax = 1073741824
kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
Установка пакетов для сборки
Вставьте диск и выполните:
apt-get update apt-get install make gcc4.5 gcc-c++ findutils gawk pdksh glibc-devel libaio-devel libunixODBC-devel expat
Для сборки Oracle потребуется пакет libstdc++3.3, отсутствующий на диске с дистрибутивом. Подключите онлайновый репозиторий c6 и установите пакет:
apt-repo add branch c6 apt-get update apt-get install libstdc++3.3
Если установка должна осуществляться удалённо, то установите также
apt-get install xorg-libs xorg-locales xauth fonts-type1-xorg
И настройте SSH. Доступ по SSH осуществляйте с параметром -Y.
После всех операций выполните sysctl -p и начните сеанс пользователя oracle или просто перезагрузите операционную систему.
Установка
Запуск программы установка
1. Распакуйте установочные файлы Oracle
2. Под обычным пользователем (установка под правами суперпользователя не работает) перейдите в каталог распакованных установочных файлов Oracle и запустите
. /etc/sysconfig/oracle
export ORACLE_BASE ORACLE_HOME ORACLE_UNQNAME
./runInstaller
Примечание: каждый запуск программы установки объедает место на tmpfs. Рекомендуется перед запуском почистить временный каталог и каталоги для установки:
rm -rf $TMPDIR/OraInstall* $ORACLE_BASE/* /opt/oraInventory/*
Установка
На первом экране будет предложено ввести зарегистрированный в My Oracle Support адрес электронной почты. Вы можете оставить поле пустым и снять флажок получения обновлений (в появившемся окне при переходе на следующий этап выберите Yes).
Нажмите кнопку Следующий.
2. 3. 4. 5.
Исправление проблем сборки
В процессе установки у вас обязательно возникнет ошибка линковки. Не пугайтесь, к сожалению это нормально. Данная ошибка связана с тем, что Oracle не обеспечивает правильный порядок линковки, что по умолчанию запрещено в дистрибутивах ALT начиная с v4.0.
Мы не будем исправлять ошибки Oracle а просто обойдём их, разрешив сборку в неправильной последовательности. Для этого нам необходимо передать линковщику параметр --no-as-needed. Очевидно было бы использовать для этого переменную $LDFLAGS. Однако тут проявляется ещё одна особенность Oracle. Во всех make-файлах переменная $LDFLAGS переопределяется без учёта предыдущего значения. Таким образом, этой переменной воспользоваться не получится.
Когда появится сообщение об ошибке сборки, выполните под пользователем, под которым была запущена программа установки:
. /etc/sysconfig/oracle
export ORACLE_HOME
subst 's/^LD=gcc/LD=gcc -Wl,--no-as-needed/' $ORACLE_HOME/bin/genorasdksh
subst 's/^LDFLAGS=-o/LDFLAGS=-Wl,--no-as-needed -o/g' $(find $ORACLE_HOME -name env_\*.mk)
Затем вернитесь в окно программы установки и нажмите кнопку Retry.
Послеустановочные действия
После установки и создания базы данных вам потребуется открыть выполнить два скрипта под правами пользователя root.
Откройте терминал, войдите под root и выполните:
. /etc/sysconfig/oracle
export ORACLE_HOME
/opt/oraInventory/orainstRoot.sh
$ORACLE_HOME/root.sh
Окончательный экран с результатом установки:
После всех манипуляций и установок, у вас может не запускаться DBConsole. Это связано с тем, что не совпадают часовые пояса. Для того, чтобы это исправить необходимо проделать следующие манипуляции:
- Установить последний "Timezone Updater Tool" на используемую в Oracle Java;
- Установить патч 12949905 на сервер Oracle.
Запуск СУБД
Для того, чтобы запустить СУБД, выполните:
. /etc/sysconfig/oracle
export ORACLE_HOME
$ORACLE_HOME/bin/dbstart $ORACLE_HOME
Управление ссервером
Откройте веб-браузер и введите адрес (указание протокола https обязательно!):
https://адрес_сервера:1158/em
примите самоподписанный сертификат, укажите имя (по умолчанию SYSTEM и пароль администратора, указанный при установке). Нажмите кнопку Login.