- PVSM.RU - https://www.pvsm.ru -
В данной статье описана процедура установки СУБД ORACLE 11gR2 на stand-alone сервер под управлением ОС ORACLE Linux 6.
Если Вы это читаете, то я рекомендую Вам прекратить это. Обратите внимание на другие православные СУБД, такие как PostgreSQL и др. Так же можно рассмотреть дзеновские СУБД, относящиеся к NoSQL. Единственным оправданием для дальнейщего чтения может являться прижатый к виску пистолет (или что-нибудь в этом духе).
Так же считается, что используемый Вами продукт подкреплен соответствующей лицензией. Организация в которой идёт эта установка является счастливым обладателем Oracle Standard Edition лицензии, посему будет рассматриваться установка этой версии. Но разница при установке будет только на заключительных этапах.
Данная инструкция писалась в процессе установки СУБД для возможности повторить ее сотрудником с любой квалификацией. В связи с чем Я постарался расписать все максимально подробно. Некоторые вещи могут показаться очевидными, что ни в коей мере не ставит по сомнение квалификацию читателей.
Понимать написанное здесь [1]. Желательно быть зарегистрированным в Red Hat [2] для полного доступа к документации, ибо ссылок здесь на нее не будет, так как доступна она тольк для подписчиков. Для примера: здесь [3] для подписчиков доступен pdf с инструкцией по установке ORACLE на RHEL6.
Устанавливаем ОС Linux ORACLE 6 с дистрибутива, скаченного с e-delivery [4] (Можно использовать любой другой клон RHEL5, для других клонов нужно будет ручками доустановить oracle-rdbms-server-11gR2-preinstall.x86_64 oracleasm-support.x86_64, только для клонов RHEL5). При установке обратить внимание на следующее:
После перезагрузки подключиться к серверу через защищенную оболчку
$ ssh root@oracleserver
После установки добавить репозиторий EPEL (опционально, я его использую только из-за bash-completion). Обновить систему (обязательно)!!!
# yum install download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm [8]
# yum -y upgrade
Пакет oracle-rdbms-server-11gR2-preinstall добавляет системных пользователей и настраивает параметры системы для запуска СУБД ORACLE, но НАМ этого не достаточно, поэтому делаем следующее:
Создадим папки:
Продублируем FQDN в файле /etc/hosts
С общими параметрами системами все.
Установка Automatic Storage Management Library (ASM Lib) Driver.
Пакет oracleasm устанавливать не нужно, так как он включени в ядро Oracle Linux. Пакет oracleasm-support мы установили в процессе установки ОС, выбрав пакеты, начинающиеся на oracle*, если вдруг он не установлен мы можем установить его из публичного репозитория [10]. Поэтому нам остается установить только oracleasmlib.
# yum -y install download.oracle.com/otn_software/asmlib/oracleasmlib-2.0.4-1.el6.x86_64.rpm [11]
Настраиваем ASMLib
# /etc/init.d/oracleasm configure
This will configure the on-boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets ('[]'). Hitting without typing an
answer will keep that current value. Ctrl-C will abort.
Default user to own the driver interface []: grid
Default group to own the driver interface []: asmadmin
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLib disks: [ OK ]
Создадим диски для ASM
Создадим диски ASM
# oracleasm createdisk ASMDATA01 /dev/vg_oracleserver/lvasmdata
# oracleasm createdisk ASMFRA02 /dev/vg_oracleserver/lvasmfra
# oracleasm createdisk ASMREDO02 /dev/vg_oracleserver/lvasmredo
Проверим их
# oracleasm listdisks
ASMDATA01
ASMFRA02
ASMREDO02
# ls -ltr /dev/oracleasm/disks
итого 0
brw-rw---- 1 grid asmadmin 252, 7 Ноя 12 06:15 ASMDATA01
brw-rw---- 1 grid asmadmin 252, 8 Ноя 12 06:15 ASMFRA02
brw-rw---- 1 grid asmadmin 252, 6 Ноя 12 06:16 ASMREDO02
# oracleasm-discover ORCL:*
Using ASMLib from /opt/oracle/extapi/64/asm/orcl/1/libasm.so
[ASM Library — Generic Linux, version 2.0.4 (KABI_V2)]
Discovered disk: ORCL:ASMDATA01 [838860800 blocks (429496729600 bytes), maxio 512]
Discovered disk: ORCL:ASMFRA02 [838860800 blocks (429496729600 bytes), maxio 512]
Discovered disk: ORCL:ASMREDO02 [170647552 blocks (87371546624 bytes), maxio 512]
Установим параметры оболочки пользователя grid
# echo 'ORACLE_HOME=/u01/11.2.0/grid' >> /home/grid/.bash_profile
# echo 'ORACLE_SID=+ASM' >> /home/grid/.bash_profile
# echo 'PATH=$ORACLE_HOME/bin:$PATH' >> /home/grid/.bash_profile
# echo 'export ORACLE_HOME' >> /home/grid/.bash_profile
# echo 'export ORACLE_SID' >> /home/grid/.bash_profile
# echo 'export PATH' >> /home/grid/.bash_profile
!!! ВАЖНО!!! Установщик ORACLE GRID вероятнее всего расчитан на SysV систему инициализации, в то время как 6-ая версия Enterprise Linux использует Upstart. В связи с этим установщик при попытке инициализации демона OHASD выдает ошибку и завершает работу некоректно. В связи с этим необходимо до начала установки создать следующий файл (дату и имя соответствено используйте свое):
# touch /etc/init/ohasd.conf
# echo '#start init.ohasd' > /etc/init/ohasd.conf
# echo '# What: oracle high-availability watchdog' >> /etc/init/ohasd.conf
# echo '# When 12_11_2012' >> /etc/init/ohasd.conf
# echo '# Who: Arthur' >> /etc/init/ohasd.conf
# echo 'start on runlevel [35]' >> /etc/init/ohasd.conf
# echo 'stop on runlevel [016]' >> /etc/init/ohasd.conf
# echo 'respawn' >> /etc/init/ohasd.conf
# echo 'exec /etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null' >> /etc/init/ohasd.conf
!!! ВАЖНО!!! в определенный момент неопходимо будет вручную запустить этого демона, поэтому держим открытой вторую консоль с правами root.
Со своей рабочей станции идём на e-delivery [12], авторизуемся, соглашаемся с правилами. Выбираем продукт: “Oracle Database”, платформу: “Linux x86-64”. В появившейся табличке выбираем “Oracle® Database 11g Release 2 (в моем случае 11.2.0.1.0) Media Pack for Linux x86-64” и нажимаем кнопку продолжить. Выбираем загрузить “Oracle Database 11g Release 2 Grid Infrastructure (в моем случае 11.2.0.1.0) for Linux x86-64”.
Копируем скачанный файл на сервер в домашнюю папку пользователя grid
$ scp V17531-01.zip grid@oracleserver:~/
Подключаемся к серверу под учетной записью grid (будем использовать так ныне нелюбимую сетевую прозрачность X-server’а)
$ ssh -Y grid@oracleserver
Разрешим доступ к X-приложениям с других компьютеров
$ xhost +
можете на свое усмотрение ограничить узлы, с которых возможно подключение.
Распакуем архив
$ unzip V17531-01.zip
Перейдем в папку ~/grid и запустим установщик
$ cd ~/grid/
$ ./runInstaller
Starting Oracle Universal Installer…
Checking Temp space: must be greater than 120 MB. Actual 955 MB Passed
Checking swap space: must be greater than 150 MB. Actual 16383 MB Passed
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2012-11-12_06-30-47PM. Please wait…
Далее установка пойдет в графическом режиме
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
# /u01/11.2.0/grid/root.sh
Running Oracle 11g root.sh script…
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /u01/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin…
Copying oraenv to /usr/local/bin…
Copying coraenv to /usr/local/bin…
Creating /etc/oratab file…
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
2012-11-12 21:11:43: Checking for super user privileges
2012-11-12 21:11:43: User has super user privileges
2012-11-12 21:11:43: Parsing the host name
Using configuration parameter file: /u01/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
LOCAL ADD MODE
Creating OCR keys for user 'grid', privgrp 'oinstall'…
Operation successful.
CRS-4664: Node oracleserver successfully pinned.
Adding daemon to inittab
oracleserver 2012/11/12 21:18:34 /u01/11.2.0/grid/cdata/oracleserver/backup_20121112_211834.olr
Successfully configured Oracle Grid Infrastructure for a Standalone Server
Updating inventory properties for clusterware
Starting Oracle Universal Installer…
Checking swap space: must be greater than 500 MB. Actual 16371 MB Passed
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /u01/app/oraInventory
'UpdateNodeList' was successful.
Добавим остальные группы дисков ASM
Установим параметры оболочки пользователя oracle
# echo 'ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1' >> /home/oracle/.bash_profile
# echo 'ORACLE_SID=LOC11' >> /home/oracle/.bash_profile
# echo 'PATH=$ORACLE_HOME/bin:$PATH' >> /home/oracle/.bash_profile
# echo 'export ORACLE_HOME' >> /home/oracle/.bash_profile
# echo 'export ORACLE_SID' >> /home/oracle/.bash_profile
# echo 'export PATH' >> /home/oracle/.bash_profile
Со своей рабочей станции идём на e-delivery [12], авторизуемся, соглашаемся с правилами. Выбираем продукт: “Oracle Database”, платформу: “Linux x86-64”. В появившейся табличке выбираем “Oracle® Database 11g Release 2 (в моем случае 11.2.0.1.0) Media Pack for Linux x86-64” и нажимаем кнопку продолжить. Выбираем загрузить “Oracle Database 11g Release 2 (в моем случае 11.2.0.1.0) for Linux x86-64 (Part 1 of 2)” и “Oracle Database 11g Release 2 (в моем случае 11.2.0.1.0) for Linux x86-64 (Part 2 of 2)”.
Копируем скачанный файл на сервер в домашнюю папку пользователя oracle
$ scp V17530-01_* oracle@oracleserver:~/
Подключаемся к серверу под учетной записью oracle (будем использовать так ныне нелюбимую сетевую прозрачность X-server’а)
$ ssh -Y oracle@oracleserver
Разрешим доступ к X-приложениям с других компьютеров
$ xhost +
можете на свое усмотрение ограничить узлы, с которых возможно подключение.
Распакуем архив
$ unzip V17530-01_1of2.zip
$ unzip V17530-01_2of2.zip
Перейдём в папку ~/database и запустим установщик
$ cd ~/database/
$ ./runInstaller
Starting Oracle Universal Installer…
Checking Temp space: must be greater than 120 MB. Actual 953 MB Passed
Checking swap space: must be greater than 150 MB. Actual 16383 MB Passed
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2012-11-20_06-30-25PM. Please wait…
Далее установка идёт в графическом режиме
# /u01/app/oracle/product/11.2.0/db_1/root.sh
Running Oracle 11g root.sh script…
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file «dbhome» already exists in /usr/local/bin. Overwrite it? (y/n)
[n]:
The file «oraenv» already exists in /usr/local/bin. Overwrite it? (y/n)
[n]:
The file «coraenv» already exists in /usr/local/bin. Overwrite it? (y/n)
[n]:
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
Перед созданием базы необходимо:
# cd /u01/app/oracle/product/11.2.0/db_1/bin
# chmod 6751 oracle
# -l oracle
-rwsr-s--x 1 oracle asmadmin 199650019 Ноя 20 20:24 oracle
Подключаемся к серверу под учетной записью oracle (будем использовать так ныне нелюбимую сетевую прозрачность X-server’а)
$ ssh -Y oracle@oracleserver
На всякий случай опять разрешим доступ к X-приложениям
$ xhost +
можете на свое усмотрение ограничить узлы, с которых возможно подключение.
Запускаем настройку базы данных
$ dbca
Дальше действуем по инструкция, прилагающимся к Вашему программному обеспечению. С этого этапа можно не боятся ошибок, в любой момент можно будет удалить «сломанную» базу и создать новую.
Спасибо за внимание!
Автор: phozzy
Источник [13]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/linux/29246
Ссылки в тексте:
[1] здесь: https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/index.html
[2] Red Hat: http://ru.redhat.com
[3] здесь: https://access.redhat.com/knowledge/articles/216813
[4] e-delivery: https://edelivery.oracle.com/linux
[5] включенным: https://access.redhat.com/knowledge/articles/216353
[6] ссылка: http://docs.oracle.com/cd/E11882_01/install.112/e22489/prelinux.htm#CEGIEHBE
[7] можно больше: http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm#autoId5
[8] download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm: http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
[9] установлены: http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm#BHCGJCEA
[10] публичного репозитория: http://public-yum.oracle.com/
[11] download.oracle.com/otn_software/asmlib/oracleasmlib-2.0.4-1.el6.x86_64.rpm: http://download.oracle.com/otn_software/asmlib/oracleasmlib-2.0.4-1.el6.x86_64.rpm
[12] e-delivery: https://edelivery.oracle.com
[13] Источник: http://habrahabr.ru/post/172513/
Нажмите здесь для печати.