Oracle/СПТ: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Строка 2: Строка 2:


== Версии ==
== Версии ==
Проверялись следующие версии программного обеспечения:
Проверялись следующие версии программного обеспечения:


Строка 7: Строка 8:
* Oracle 11g R2 (64-битная версия для Linux)
* Oracle 11g R2 (64-битная версия для Linux)


== Требования к условиям установки ==
== Конфигурация ==
 
=== Требования к условиям установки ===
 
* Размер оперативной памяти должен быть больше 1 ГБ (1049 МБ)
* Размер оперативной памяти должен быть больше 1 ГБ (1049 МБ)
* Размер подкачки  должен быть больше 1 ГБ (1049 МБ)
* Размер подкачки  должен быть больше 1 ГБ (1049 МБ)
* На /tmp должно быть более 1 ГБ свободного места (для этого можете добавить параметр {{cmd|size=1400M}} для tmpfs)
* На /tmp должно быть более 1 ГБ свободного места (для этого можете добавить параметр {{cmd|size=1400M}} для tmpfs)
* Установка осуществляется под правами обычного пользователя
* Установка осуществляется под правами обычного пользователя
* Временный каталог должен иметь более 120 МБ свободного места.
* Временный каталог должен иметь более 120 МБ свободного места
* Установка осуществляется в графическом режиме с количеством цветов > 256.
* Установка осуществляется в графическом режиме с количеством цветов > 256
* Программа установки не умещается в 800x600, поэтому лучше устанавливать в разрешении 1024x768.
* Программа установки не умещается в 800x600, поэтому лучше устанавливать в разрешении 1024x768
* Должен быть правильно настроен домен. Если установка осуществляется на localhost, уберите {{term|localhost.localdomain}} в файле {{path|/etc/hosts}}


=== Место во временном каталоге ===
=== Место во временном каталоге ===
Строка 25: Строка 30:
под пользователем root:
под пользователем root:
  control pam_mktemp disabled
  control pam_mktemp disabled
== Место установки и конфигурация ==


Создадим группу и каталог для установки (под пользователем root):
Создадим группу и каталог для установки (под пользователем root):
group add oracle
<source lang="Bash">group add oracle
gpasswd -a <имя_пользователя> oracle
gpasswd -a <имя_пользователя> oracle
mkdir -m 0775 /opt/oracle /opt/oraInventory
mkdir -m 0775 /opt/oracle /opt/oraInventory
chgrp oracle /opt/oracle /opt/oraInventory
chgrp oracle /opt/oracle /opt/oraInventory</source>
 
Также создадим файл {{path|/etc/sysconfig/oracle}} с необходимыми переменными среды окружения для Oracle:
<source lang="Ini">ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/product/11.2.0
ORACLE_UNQNAME=orcl
</source>
 
{{term|ORACLE_UNQNAME}} содержит имя экземпляра базы данных (SID), создаваемого при установки. По умолчанию это '''orcl'''.


=== Установка параметров ядра ===
=== Установка параметров ядра ===
Строка 53: Строка 68:


  apt-get update
  apt-get update
  apt-get install make gcc4.5 gcc-c++ findutils gawk pdksh \
  apt-get install make gcc4.5 gcc-c++ findutils gawk pdksh glibc-devel libaio-devel libunixODBC-devel expat
glibc-devel libaio-devel libunixODBC-devel expat


Кроме того, для сборки потребуется пакет libstdc++3.3, <u>отсутствующий</u> на диске с дистрибутивом. Подключите онлайновый репозиторий c6 и установите пакет:
{{Attention|Используя только диск с сертифицированным Альт Линукс СПТ 6.0, невозможно установить Oracle 11g: отсутствует пакет libstdc++3.3}}
 
Для сборки Oracle потребуется пакет libstdc++3.3, <u>отсутствующий</u> на диске с дистрибутивом. Подключите онлайновый репозиторий c6 и установите пакет:


  apt-repo add branch c6
  apt-repo add branch c6
Строка 69: Строка 85:


После всех операций выполните {{cmd|sysctl -p}} и перезапустите сеанс пользователя или просто перезагрузите операционную систему.
После всех операций выполните {{cmd|sysctl -p}} и перезапустите сеанс пользователя или просто перезагрузите операционную систему.
== Установка ==


== Запуск программы установка ==
== Запуск программы установка ==
Строка 75: Строка 93:


2. Под обычным пользователем (установка под правами суперпользователя не работает) перейдите в каталог распакованных установочных файлов Oracle и запустите
2. Под обычным пользователем (установка под правами суперпользователя не работает) перейдите в каталог распакованных установочных файлов Oracle и запустите
./runInstaller


''Примечание:'' каждый запуск программы установки объедает место на tmpfs. Рекомендуется перед запуском почистить временный каталог:
<source lang="Bash">. /etc/sysconfig/oracle
rm -rf $TMPDIR/OraInstall*
export ORACLE_BASE ORACLE_HOME ORACLE_UNQNAME
./runInstaller</source>
 
''Примечание:'' каждый запуск программы установки объедает место на tmpfs. Рекомендуется перед запуском почистить временный каталог и каталоги для установки:
<source lang="Bash">rm -rf $TMPDIR/OraInstall* $ORACLE_BASE/* /opt/oraInventory/*</source>


== Установка ==
== Установка ==
Строка 91: Строка 112:
5.
5.


{{Attention|Используя только диск с сертифицированным Альт Линукс СПТ 6.0, невозможно установить Oracle 11g: отсутствует пакет libstdc++3.3}}
=== Исправление проблем сборки ===
 
В процессе установки у вас обязательно возникнет ошибка линковки. Не пугайтесь, к сожалению это нормально. Данная ошибка связана с тем, что Oracle не обеспечивает правильный порядок линковки, что по умолчанию запрещено в дистрибутивах ALT начиная с v4.0.
 
Мы не будем исправлять ошибки Oracle а просто обойдём их, разрешив сборку в неправильной последовательности. Для этого нам необходимо передать линковщику параметр '''--no-as-needed'''. Очевидно было бы использовать для этого переменную '''$LDFLAGS'''. Однако тут проявляется ещё одна особенность Oracle. Во всех make-файлах переменная '''$LDFLAGS''' переопределяется без учёта предыдущего значения. Таким образом, этой переменной воспользоваться не получится.
 
Когда появится сообщение об ошибке сборки, выполните под пользователем, под которым была запущена программа установки:
<source lang="Bash">. /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)</source>
 
Затем вернитесь в окно программы установки и нажмите кнопку {{cmd|Retry}}.
 
=== Послеустановочные действия ===
 
После установки и создания базы данных вам потребуется открыть выполнить два скрипта под правами пользователя root.
 
[[Изображение:OracleInstall-root-cmds.png]]
 
Откройте терминал , [[Su|войдите под root]] и выполните:
 
<source lang="Bash">. /etc/sysconfig/oracle
export ORACLE_HOME
/opt/oraInventory/orainstRoot.sh
$ORACLE_HOME/root.sh</source>
 
Окончательный экран с результатом установки:
 
[[Изображение:OracleInstall-9.png]]
 
== Запуск СУБД ==


Для того, чтобы запустить СУБД, выполните:
<source lang="Bash">. /etc/sysconfig/oracle
export ORACLE_HOME
$ORACLE_HOME/bin/dbstart $ORACLE_HOME</source>


[[Категория:HOWTO]]
[[Категория:HOWTO]]

Версия от 11:48, 12 марта 2013

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


Версии

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

  • Альт Линукс СПТ 6.0 от 31.05.2012 (64-битная версия)
  • Oracle 11g R2 (64-битная версия для Linux)

Конфигурация

Требования к условиям установки

  • Размер оперативной памяти должен быть больше 1 ГБ (1049 МБ)
  • Размер подкачки должен быть больше 1 ГБ (1049 МБ)
  • На /tmp должно быть более 1 ГБ свободного места (для этого можете добавить параметр {{{1}}} для tmpfs)
  • Установка осуществляется под правами обычного пользователя
  • Временный каталог должен иметь более 120 МБ свободного места
  • Установка осуществляется в графическом режиме с количеством цветов > 256
  • Программа установки не умещается в 800x600, поэтому лучше устанавливать в разрешении 1024x768
  • Должен быть правильно настроен домен. Если установка осуществляется на localhost, уберите localhost.localdomain в файле /etc/hosts

Место во временном каталоге

Несмотря на невысокие требования программы установки, в $TMPDIR потребуется больше места при установке. Рекомендуется создать временный каталог tmp в домашнем каталоге пользователя.

под обычным пользователем:

mkdir ~/tmp

под пользователем root:

control pam_mktemp disabled

Место установки и конфигурация

Создадим группу и каталог для установки (под пользователем root):

group add oracle
gpasswd -a <имя_пользователя> oracle
mkdir -m 0775 /opt/oracle /opt/oraInventory
chgrp oracle /opt/oracle /opt/oraInventory

Также создадим файл /etc/sysconfig/oracle с необходимыми переменными среды окружения для Oracle:

ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/product/11.2.0
ORACLE_UNQNAME=orcl

ORACLE_UNQNAME содержит имя экземпляра базы данных (SID), создаваемого при установки. По умолчанию это orcl.

Установка параметров ядра

В файл /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
Внимание! Используя только диск с сертифицированным Альт Линукс СПТ 6.0, невозможно установить Oracle 11g: отсутствует пакет libstdc++3.3


Для сборки 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 и перезапустите сеанс пользователя или просто перезагрузите операционную систему.

Установка

Запуск программы установка

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.

OracleInstall-root-cmds.png

Откройте терминал , войдите под root и выполните:

. /etc/sysconfig/oracle
export ORACLE_HOME
/opt/oraInventory/orainstRoot.sh
$ORACLE_HOME/root.sh

Окончательный экран с результатом установки:

OracleInstall-9.png

Запуск СУБД

Для того, чтобы запустить СУБД, выполните:

. /etc/sysconfig/oracle
export ORACLE_HOME
$ORACLE_HOME/bin/dbstart $ORACLE_HOME