Для работы нам понадобится
1. VMWare Server http://www.vmware.com/products/server/. Нужно скачать сам сервер и зарегистрироваться для получения серийного номер. Продукт абсолютно бесплатный. Инсталляция его проблем не приносит.
2. Oracle Enterprise Linux – можно использовать также другие версии Linux, но эту версия обладает рядом преимущест (помимо того, что она выпускается корпорацией Oracle :)
- Для тестирования бесплатная
- Легко скачать с интернет
- Полная совместимость с Red Hat.
- Включен ряд пакетов специально для СУБД Oracle
Качаем отсюда http://www.oracle.com/technologies/linux/index.html. Для себя я выбрал версию Oracle Enterprise Linux 4 Update 7. Достаточно пропатчена плюс достаточно консервативна с минимумом всяких рюшечек.
3. Oracle Database 11.1.0.6 for Linux берем отсюда http://www.oracle.com/technology/software/products/database/index.html
4. Желательно, но не обязательно иметь патч 11.1.0.7. Берем как обычно с metalink.oracle.com. Патч имеет номер 6890831.
5. Far 1.7. Нужен будет для удобства передачи данных на виртуальную машину. http://www.rarlab.com/download.htm
6. WinSCP Far Plugin http://winscp.net/eng/download.php. Позволяет работать с виртуальной машиной через протокол SSH, как через обычный FTP.
7. PuTTY http://www.chiark.greenend.org.uk/~sgtatham/putty/. Также не обязателей, но очень удобен в работе.
Когда все это у нас есть – приступаем к инсталляции.
1. Создание виртуальной машины Oracle Enteprise Linux
- Создаем виртуальную машину
- Указываем, что виртуальная машина Red Hat Enterprise Linux 4
- Выделим 1 Гб для виртуальной машины – это минимальный рекомендованный объем памяти для Oracle Database 11.1.0.6
- Создаем новый виртуальный диск размером 100 Гб (объем, занимаемый на диске будет зависеть от реального использованного пространства)
- Сетевой адаптер укажем Bridged. В этом случае виртуальная машина будет доступна в сети и к ней можно будет подключаться с любого компьютера в Вашей локальной сетке.
- Указываем, что хоти использовать физический DVD диск
- Мапим этот диск на любой из физических DVD-ROMов.
- Floppy диск говорим не добавлять вообще
- Добавляем USB – в будущем будет полезно, если захотим цеплять USB диск или флешку снаружи.
- Соглашаемся с конфигурацией на последнем экране
Мы создали виртуальную машину. Теперь она стоит и мигает нам разными огоньками. Давайте запустим ее. Для этого вверху нажмем такую зелененькую кнопочку.
Виртуалка запустится. Я использовал в качестве браузера Chrome и при переходе на закладку Console увидел замечательное сообщение
Как не жалко, но пришлось уходить в Internet Explorer. В Internet Explorer кликнем на Install Plug-in и чудесным образом увидим выскочит окошко, предлагающее инсталляцию специальной Vmware Console.
В ней надо будет кликнуть на ссылку Open the console in a new window и получаем специальное окошечко с виртуальной машиной Linux.
Пока что там пусто, операционки нет и ее нужно проинсталлировать, чем мы и займемся.
2. Инсталляция Oracle Enteprise Linux
Для инсталляция нам понадобятся образы CD дисков Oracle Enterprise Linux 4 Update 7, ранее скачанные с сайта Oracle.
- Перейдем обратно в окно с настройками виртуальной машины и выберем в этом окне DVD-ROM
- Настроим его так, чтобы он смотрел на наши виртуальные образы
- Перезагрузим виртуальную машину
- Жмем Enter и ожидаем появления окна с началом инсталляции.
- Пропускаем (Skip) проверку
- Попадаем в графический экран, где на нас укоризненно взирает пингвин в бронежилете
- Говорим, что Language у нас English. Клавиатура U.S. English
- Разбивку диска поручаем Automatically Partition, соглашаемся все затирать
- Соглашаемся с разбивкой. На следующей странице также соглашаемся с инсталляцией GRUB.
- На странице с сетевыми настройками настраиваем имя компьютера и настраиваем IP адрес. У меня адреса в ести выдает DHCP, поэтому я оставил настройки по умолчанию. Обычно приходится настроить IP адрес.
- Отключаем firewall и selinux
- На странице с выбором дополнительных поддерживаемых языком соглашаемся с настройками по-умолчанию
- Указываем нашу временную зону
- Задаем пароль пользователя Oracle
- Говорим, что хотим кустомизировать настройки пакетов для инсталляции. Делаем это для того, чтобы в будущем легче было инсталлировать Oracle Database
- В настройках я убрал Web Server, Windows File Server, Printing Support. Добавил Development Tools, Legacy Software
- Говорим два раза Next. Соглашаемся с тем, что у нас есть все диски для инсталляции.
- Откинувшись на спинку кресла и периодически меняя диски, наблюдаем хвалебные оды, которые поет о себе наш пингвин в бронежилете ;)
- После перезагрузки получаем
- Жмем Next, Next, Next… до самого конца
- Войдем и на рабочем столе щелкнем правой кнопкой. Запустим Terminal. Наберем в нем ifconfig и увидим там ip адрес нашего сервера. Дальше будем цеплять снаружи за этот ip адрес с помощью PuTTY. Но сначала нужно проделать один шаг – проинсталлировать VMWare Tools.
- Идем на домашнюю страницу виртуальной машины и говорим, что хотим инсталлировать VMware Tools:
- Инсталлируем VMware tool внутри виртуальной машины командой
rpm –Uvh /media/cdrom/VMwareTools-2.0.0-122956.i386.rpm
- Запускаем /usr/bin/vmware-config-tools.pl.
- Везде соглашаемся с настройками по-умолчанию. В настройках разрешения экрана выбираем 1024x768.
- Oracle Enterprise Linux проинсталлирован и готов к работе
3. Настраиваем подключение к виртуальной машине.
- Запускаем PuTTY
- Вводим IP адрес нашего виртуального компьютера (мы его запоминали раньше)
- Вводим имя и пароль.
- Теперь проинсталлируем Far и WinSCP.
- После инсталляции зайдем в FAR. Нажмем Alt-F2 и увидим новый пункт WinSCP
- Выберем его и с помощью Shift-F4
- Зайдем в эту сессию и увидим диск виртуальной машины
- Выполненные подключения будут помогать в будущем.
4. Инсталлируем базу данных Oracle Database 11.1.0.6.
Инструкцию по инсталляции можно найти в дистрибутиве Oracle. Здесь я приведу более краткие выдержки из Quick Installation Guide.
- Распаковываем дистрибутив Oracle Database и получившуюся папку с помощью Far копируем на виртуальный сервер через WinSCP
- Пока копируется – будем проверять настройки для инсталляции Oracle. Войдем через PuTTY.
- Проверим объем оперативной памяти. Должно быть минимум 1 Гб. Кроме того объем Swap должен быть не менее 1,5 объема оперативной памяти. Проверить это можно следующими командами
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo
- Проверим наличие необходимых нам RPM пакетов.
Для Oracle Enterprise Linux 4.0 и 5.0 можно запустить следующую команду
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat
При это для разных версий должен быть разный вывод
Oracle Enterprise Linux 4.0 Oracle Enterprise Linux 5.0 binutils-2.15.92.0.2-18
compat-libstdc++-33.2.3-47.3
elfutils-libelf-0.97-5
elfutils-libelf-devel-0.97-5
glibc-2.3.9.4-2.19
glibc-common-2.3.9.4-2.19
glibc-devel-2.3.9.4-2.19
gcc-3.4.5-2
gcc-c++-3.4.5-2
libaio-devel-0.3.105-2
libaio-0.3.105-2
libgcc-3.4.5
libstdc++-3.4.5-2
libstdc++-devel-3.4.5-2
make-3.80-5
sysstat-5.0.5
unixODBC-2.2.11
unixODBC-devel-2.2.11binutils-2.17.50.0.6-2.el5
compat-libstdc++-33-3.2.3-61
elfutils-libelf-0.125-3.el5
elfutils-libelf-devel-0.125
glibc-2.5-12
glibc-common-2.5-12
glibc-devel-2.5-12
gcc-4.1.1-52
gcc-c++-4.1.1-52
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.1-52
libstdc++-4.1.1
libstdc++-devel-4.1.1-52.e15
make-3.81-1.1
sysstat-7.0.0
unixODBC-2.2.11
unixODBC-devel-2.2.11
В нашем случае вывод будет следующим
[root@oel ~]# rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel glibc-headers gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC-devel
binutils-2.15.92.0.2-25
compat-libstdc++-33-3.2.3-47.3
elfutils-libelf-0.97.1-5
package elfutils-libelf-devel is not installed
glibc-2.3.4-2.41
glibc-common-2.3.4-2.41
glibc-devel-2.3.4-2.41
glibc-headers-2.3.4-2.41
gcc-3.4.6-10.0.1
gcc-c++-3.4.6-10.0.1
package libaio-devel is not installed
libaio-0.3.105-2
libgcc-3.4.6-10.0.1
libstdc++-3.4.6-10.0.1
libstdc++-devel-3.4.6-10.0.1
make-3.80-7.EL4
package sysstat is not installed
package unixODBC-devel
libaio-devel и unixODBC-devel можно найти на 3-ем диске. elfutils-libelf-devel и sysstat 4-ом.
Монтируем третий диск и запускаем команду
rpm -Uvh /media/cdrom/Enterprise/RPMS/libaio-devel-0.3.105-2.i386.rpm /media/cdrom/Enterprise/RPMS/unixODBC-devel-2.2.11-1.0.1.RHEL4.1.i386.rpm
[root@oel ~]# rpm -Uvh /media/cdrom/Enterprise/RPMS/libaio-devel-0.3.105-2.i386.rpm /media/cdrom/Enterprise/RPMS/unixODBC-devel-2.2.11-1.0.1.RHEL4.1.i386.rpm
warning: /media/cdrom/Enterprise/RPMS/libaio-devel-0.3.105-2.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
1:unixODBC-devel ########################################### [ 50%]
2:libaio-devel ########################################### [100%]
Монтируем четвертый диск и запускаем команду
rpm -Uvh /media/cdrom/Enterprise/RPMS/sysstat-5.0.5-19.el4.i386.rpm /media/cdrom/Enterprise/RPMS/elfutils-libelf-devel-0.97.1-5.i386.rpm
[root@oel /]# rpm -Uvh /media/cdrom/Enterprise/RPMS/sysstat-5.0.5-19.el4.i386.rpm /media/cdrom/Enterprise/RPMS/elfutils-libelf-devel-0.97.1-5.i386.rpm
warning: /media/cdrom/Enterprise/RPMS/sysstat-5.0.5-19.el4.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
1:elfutils-libelf-devel ########################################### [ 50%]
2:sysstat ########################################### [100%]
Создаем пользователя oracle и необходимые группы. В конце вводим пароль пользователя oracle
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
[root@oel /]# groupadd oinstall
[root@oel /]# groupadd dba
[root@oel /]# useradd -g oinstall -G dba oracle
[root@oel /]# passwd oracle
Changing password for user oracle.
New UNIX password:
BAD PASSWORD: it is based on a dictionary word
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
Для корректной работы тестовой базы нужно изменить настройки ядра. Для этого в файл /etc/sysctl.conf в конец добавим следующие строки:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
Можно это проделать командами
echo 'kernel.shmall = 2097152' >> /etc/sysctl.conf
echo 'kernel.shmmax = 2147483648' >> /etc/sysctl.conf
echo 'kernel.shmmni = 4096' >> /etc/sysctl.conf
echo 'kernel.sem = 250 32000 100 128' >> /etc/sysctl.conf
echo 'fs.file-max = 65536' >> /etc/sysctl.conf
echo 'net.ipv4.ip_local_port_range = 1024 65000' >> /etc/sysctl.conf
echo 'net.core.rmem_default = 4194304' >> /etc/sysctl.conf
echo 'net.core.rmem_max = 4194304' >> /etc/sysctl.conf
echo 'net.core.wmem_default = 262144' >> /etc/sysctl.conf
echo 'net.core.wmem_max = 262144' >> /etc/sysctl.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
echo 'oracle soft nproc 2047' >>/etc/security/limits.conf
echo 'oracle hard nproc 16384'>>/etc/security/limits.conf
echo 'oracle soft nofile 1024' >>/etc/security/limits.conf
echo 'oracle hard nofile 65536' >>/etc/security/limits.conf
В файл /etc/pam.d/login следующие строки
echo 'session required pam_limits.so' >>
/etc/pam.d/login
В файл /etc/profile
then if [ $SHELL = "/bin/ksh" ];
then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
echo 'if [ $USER = "oracle" ];' >>/etc/profile
echo ' then if [ $SHELL = "/bin/ksh" ];' >>/etc/profile
echo ' then '>>/etc/profile
echo ' ulimit -p 16384' >>/etc/profile
echo ' ulimit -n 65536' >>/etc/profile
echo ' else' >>/etc/profile
echo ' ulimit -u 16384 -n 65536' >>/etc/profile
echo ' fi' >>/etc/profile
echo 'fi '>>/etc/profile
Создадим необходимые для инсталляции каталоги:
chown -R oracle:oinstall /u01/app/
chmod -R 775 /u01/app/
chmod -R 777 /stage
Теперь перейдем непосредственно к инсталляции СУБД Oracle. Для этого давайте войдем под только что созданным пользователем oracle в Gnome. Щелкнем правой кнопкой на рабочем столе и запустим терминал Open Terminal
Мы будем инсталлировать базу данных с настройками по-умолчанию, но я все же для большей надежности применяю Advance Installation (не надо нам этого упрощенства)
Соглашаемся инсталлировать Inventory в папку /u01/app/oraInventory
Выбираем Enterprise Edition (отличие Enterprise и Standard можно посмотреть здесь TBD)
Далее идет проверка системы на соответствие требованияем Oracle. Кстати очень полезная штука. Раньше ее не было и очень часто в середине инсталляции Oracle Universal Installer вываливался с малопонятными и редко информативными сообщениями. Как можно видеть моя система не прошла по всем требованиям. Точнее одно требование просто проверено не было. Связано это с тем, что у меня виртуальная машина получает ip по DHCP. Если настроить статику, то такой проблемы не будет.
Жмем Next и соглашаемся продолжать даже в таких ужасных условиях. Говорим, что хотим создать базу данных.
База данных у нас будет общего назначения, поэтому выбираем General Purpose/Transaction Processing
Указываем, что база данных будет оба имени (Global Database Name и SID) иметь одинаковыми, т.е. “orcl”. Сделано это для простоты и если Вы в первый раз устанавливаете базу, то крайне рекомендуется эти имена сделать одинаковыми.
На следующей странице настроек нужно будет сделать несколько изменений. Во первых сделаем, чтобы память управлялась НЕавтоматически и увеличим ее объем до 600 Мб
На закладке Character Set выберем либо Use Unicode (если Вы хотите чтобы ваша база поддерживала любые символы вплоть до иероглифов), либо Cyrillic CL8MSWIN1251 (если Вы просто хотите включить поддержку кириллицы).
На закладке Security – отключим более жесткие настройки безопасности, введенные с 11-ой версии. В настоящее время не весь софт умеет с ними работать. Включение этих настроек приводит к тому, что пароль становится чувствительным к регистру (в 10-ке это было не так).
На закладке включим инсталляцию схем с примерами (это HR, OE и т.д.)
На следующих трех страницах принимаем настройки по-умолчанию
Вводим пароли для 4-х стандартных пользователей. Можно указать сразу для всех пользователей один и тот же пароль. Как мы и сделаем
На следующих двух страницах принимаем настройки по-умолчанию
Наблюдаем как все это инсталлируется.
Необходимо будет запустить два указанных скрипта под пользователем root и все настройки приниматься по-умолчанию
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.1.0/db_1/root.sh
Вот и все. База данных работает.
1 комментарий:
Спасибо большое!!!
Отправить комментарий