Oracle/СПТ: различия между версиями
Строка 78: | Строка 78: | ||
apt-get install make gcc4.5 gcc-c++ findutils gawk pdksh glibc-devel libaio-devel libunixODBC-devel expat | apt-get install make gcc4.5 gcc-c++ findutils gawk pdksh glibc-devel libaio-devel libunixODBC-devel expat | ||
{{Attention|Используя только диск с | {{Attention|Используя только диск с текущей версией сертифицированного Альт Линукс СПТ 6.0, невозможно установить Oracle 11g: отсутствует пакет libstdc++3.3}} | ||
Для сборки Oracle потребуется пакет libstdc++3.3, <u>отсутствующий</u> на диске с дистрибутивом. Подключите онлайновый репозиторий c6 и установите пакет: | Для сборки Oracle потребуется пакет libstdc++3.3, <u>отсутствующий</u> на диске с дистрибутивом. Подключите онлайновый репозиторий c6 и установите пакет: |
Версия от 14:09, 12 марта 2013
Версии
Проверялись следующие версии программного обеспечения:
- Альт Линукс СПТ 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
Место установки и конфигурация
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.
Место во временном каталоге
Несмотря на невысокие требования программы установки, в $TMPDIR пользователя потребуется больше места при установке. Рекомендуется создать временный каталог tmp в домашнем каталоге пользователя.
mkdir ~oracle/tmp
chown oracle:oracle ~oracle/tmp
Выбрать политику временного каталога в домашней папке пользователя:
control pam_mktemp disabled
Установка параметров ядра
В файл /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.
3. Перейдите в каталог распакованных установочных файлов Oracle и запустите
. /etc/sysconfig/oracle
export ORACLE_BASE ORACLE_HOME
./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.