Обе редакции под Linux скачиваются с сайта ORACLE после регистрации. Какую из них устанавливать - решать нам. Кроме политики лицензирования, главным отличием версий этих является профессиональная сфера деятельности, что, как результат обуславливает содержание самих установочных архивов.
Вкратце -
Если главное - разработка, и по большому счету важнее, что и как делает моя программа, чем что происходит в БД, то выбор - XE. Также XE хорошо подойдет тем, кто хочет изучить SQL и вообще посмотреть что такое ORACLE и с чем его едят.
Enterprise Edition - выбор людей, которые работают или хотят работать с промышленными базами данными, и которым требуется тестовый полигон.
К большому сожалению, Oracle не выпускает версий БД для установки на Ubuntu/Debian, однако это не значит, что нельзя уставить версию, заточенную под RHEL/SUSE
Oracle 10g XE
Спасибо добрым людям, танцев с бубном мы избежим, благодаря появлению .deb-пакета.
Производительность Oracle 10g сильно зависит от оперативной памяти, даже в условиях отсутсвия внешних подключений. Поэтому, если у нас менее 1gb памяти, то нелишним будет убедиться, что раздел swap — не менее RAM * 2
Отредактируем файл репозитариев apt:
Код:
sudo nano /etc/apt/sources.list
Добавим строку
Код:
deb
http://oss.oracle.com/debian unstable main non-free
Сохраняем файл.
Терерь импортируем ключ подписи репозитария
Код:
wget
http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add -
Обновляем apt
Код:
sudo apt-get update
И устанавливаем пакет
Код:
sudo apt-get install oracle-xe
Теперь запускаем конфигуратор
Код:
sudo /etc/init.d/oracle-xe configure
Отвечаем на вопросы и вуаля! ORACLE XE установлен и готов к работе
Web-интерфейс по умолчанию находится по адресу
http://127.0.0.1:8080/apex
Listner работает на порту 1521 (Если не меняли)
Enterprise Edition
Внимательно читаем требования к железу на сайте Oracle и список необходимых пакетов.
Проникаемся серьезностью документа. Суровая правда жизни состоит в том, что наличия некоторых пакетов для Ubuntu не требуется, зато требуются неуказанные, их-то мы и установим (Не забыв раскоментировать ресурсы universe в /etc/apt/sources.list )
Код:
sudo apt-get install build-essential libaio rpm lesstif2-dev alien
Переходим к созданию пользователя oracle и групп, в которых он будет состоять
Код:
sudo groupadd oinstall
sudo groupadd dba
sudo groupadd nobody
sudo useradd -g oinstall -G dba,nobody -d /opt/oracle -s /bin/bash oracle
Назначим пароль пользователю oracle
Код:
sudo passwd oracle
Определимся с базовой директорией oracle, создадим ее и назначим владельцем oracle и группу oinstall
Код:
sudo mkdir /opt/oracle
sudo chown -R oracle:oinstall /opt/oracle
sudo chmod -R 775 /opt/oracle
Отредактирум файл .bashrc в домашней директории пользователя oracle (в этом примере - /opt/oracle )
Код:
sudo nano /opt/oracle/.bashrc
и добавим туда следующие переменные окружения
Код:
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10gR2
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
Пришло время заняться настройками ядра -
Код:
sudo nano /etc/sysctl.conf
добавим следующие строки
Код:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
Применяем параметры без перезагрузки (ну, или ребутимся)
Код:
sudo /sbin/sysctl -p
Правим файл ограничений
Код:
sudo nano /etc/security/limits.conf
Добавляем строки -
Код:
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
Пришла пора притвориться, что у нас rpm-based система типа RHEL
Создадим символические ссылки, что-бы Oracle находил то, что ищет, там, где ищет
Код:
sudo ln -s /usr/bin/awk /bin/awk
sudo ln -s /usr/bin/rpm /bin/rpm
sudo ln -s /lib/libgcc_s.so.1 /lib/libgcc_s.so
sudo ln -s /usr/bin/basename /bin/basename
Это Я пока не понял . Разберусь .
Код:
Перейдем каталог с разархивированной установкой Oracle и запустим инсталятор
Код:
./runInstaller -ignoreSysPrereqs