(simple) Инсталляция oracle database 11g r2 x86 64 bit в операционной...

70
www.oracle-dba.ru Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit В документе описывается один из способов инсталляции базы данных Oracle в операционной системе Oracle Linux. Использовать его следует, если вы только приступаете к изучению основ администрирования баз данных Oracle в операционной системе Linux. В случае необходимости использования в промышленной среде, необходимо обеспечить резервное копирование, избыточность критичных для работы файлов и правильно настроить системные параметры базы данных. В случае обнаружения ошибок, неточностей, опечаток или Вам известны лучшие способы, пишите мне адрес эл. почты Самые последние версии (на момент написания): Oracle Linux - 5.8 Oracle DataBase - 11.2.0.3 Инсталляция происходит на удаленный сервер без GUI. Управление процессом установки и настройки происходит с рабочей станции под управлением Windows, на которой устанавлены putty и xming. При помощью консоли putty на сервере выполняются команды. Xming нужен для получения графических изображений. 1

Upload: -

Post on 09-Aug-2015

234 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit В документе описывается один из способов инсталляции базы данных Oracle в операционной системе Oracle Linux. Использовать его следует, если вы только приступаете к изучению основ администрирования баз данных Oracle в операционной системе Linux. В случае необходимости использования в промышленной среде, необходимо обеспечить резервное копирование, избыточность критичных для работы файлов и правильно настроить системные параметры базы данных. В случае обнаружения ошибок, неточностей, опечаток или Вам известны лучшие способы, пишите мне адрес эл. почты

Самые последние версии (на момент написания):

● Oracle Linux - 5.8 ● Oracle DataBase - 11.2.0.3

Инсталляция происходит на удаленный сервер без GUI. Управление процессом установки и настройки происходит с рабочей станции под управлением Windows, на которой устанавлены putty и xming. При помощью консоли putty на сервере выполняются команды. Xming нужен для получения графических изображений.

1

Page 2: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Минимальные и рекомендованные характеристики сервера: Процессор:

○ Минимум 1 сертифицированный процессор○ Рекомендуется 2 и более сертифицированных процессоров

Оперативная память:

○ Минимум 1.5GB оперативной памяти○ Рекомендуется 2GB на каждый процессор

Пространство под Swap:

○ Минимум 1 - 1.5 от оперативной памяти○ Рекомендуется >= 2 от оперативной памяти

Место на жестком диске:

○ Минимум: 4GB○ Рекомендуется : 10GB

Пространство для временных файлов:

○ Минимум: 1GB○ Рекомендуется: 1GB

Сеть:

○ Минимум: 100Mb○ Рекомендуется: 1Gb и более

Дистрибутивы и дополнительное ПО:

2

Page 3: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ruПоследние версии БД Oracle и пакеты критических исправлений доступны коммерческим подписчикам с активным контрактом на техническую поддержку. Если у вас есть контракт на техподдержку, вы можете скачать дистрибутивы базы данных непосредственно с сайта metalink.oracle.com. Если контракта у вас нет, простой регистрации на сайте Oracle будет недостаточно, чтобы скачать последние версии даже для изучения. Тем не менее, ссылки на дистрибутивы последних версий приведены чуть ниже. Каких-либо ключей для активации нет. Для разработки (development) дистрибутивы можно использовать бесплатно, но для использования по основному их назначению (production), требуется приобрести лицензию. Существует версия с существенными ограничениями - XE 10 и 11. Их можно использовать и в коммерческих целях совершенно бесплатно. Инсталляция бесплатных версий существенно отличается от данной инструкции. Например:http://odba.ru/showthread.php?t=400 Дистрибутивы операционной системы Oracle Linux 5.8:http://rutracker.org/forum/viewtopic.php?t=3971967 Дистрибутивы базы данных Oracle (Linux x86-64):http://rutracker.org/forum/viewtopic.php?t=3749965 Putty:http://www.putty.org/ XMing:http://sourceforge.net/projects/xming/ VirtualBox:http://www.virtualbox.org/wiki/Downloads

winscp

http://winscp.net/eng/download.php

Подготовка компьютера с которого производится инсталляция На машине с которой идет управление процессом установки (обычно это не сам сервер базы данных), запустить xserver.

3

Page 4: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru Под windows его можно скачать с сайта:http://sourceforge.net/projects/xming/files/ Необходимо скачать сам сервер и шрифты к нему, после, лучше сделать reboot системы. Далее, необходимо настроить правила доступа.В самом простом варианте, правой кнопкой мыши по ярлыку xming. Зайти в свойства и в target, дописать -ac (т.е. без контроля доступа)

Создание виртуальной машины для инсталляции базы данных Oracle

https://docs.google.com/document/d/1ZU6Hk5DYitFYwlRFqN2qmJr6maPpvgsVc6ZTiZ1kYVA/edit

4

Page 5: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Подготовка операционной системы к инсталляции базы данных: Необходимо выбрать подходящее имя для сервера, которое бы отражало его роль и назначение в сети. Для этого, с помощью редактора (например, vi) отредактируйте файл /etc/sysconfig/networkЗадайте параметры, согласно характеристикам Вашей сети. Команды редактора vihttp://odba.ru/showthread.php?t=331

Настройка сетевых интерфейсов Не рекомендуется в hostname использовать знак нижнего подчеркивания (_). (Enterprise Manager и другие web приложения не сможет подключиться к базе по http/https) # vi /etc/sysconfig/network

NETWORKING=yesNETWORKING_IPV6=noHOSTNAME=oracle112.localdomain

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"ONBOOT="yes"BOOTPROTO=staticIPADDR=192.168.1.10NETMASK=255.255.255.0GATEWAY=192.168.1.1

# vi /etc/resolv.conf

nameserver 192.168.1.1nameserver 127.0.0.1search localdomain

5

Page 6: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

options attempts: 2options timeout: 1

# vi /etc/hosts

## Localdomain and Localhost (hosts file, DNS)127.0.0.1 localhost.localdomain localhost::1 localhost6.localdomain6 localhost6 ## IPs Public Network (hosts file, DNS)192.168.1.10 oracle112.localdomain oracle112

Перестартовать сетевые интерфейсы, можно с помощью следующей команды:# service network restart Некоторые комментарии к следующей команде. Создаем резервную копию файла /etc/selinux/config, и меняем значение парамета SELINUX с enforcing на disabled # sed -i.bkp -e "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config А здесь, мы делаем резервную копию и меняем значение timeout с 5 на 0# sed -i.bkp -e "s/timeout=5/timeout=0/g" /boot/grub/grub.conf Выключаю firewall# service iptables stop Запрещаю firewall запускаться при старте операционной системы# chkconfig iptables off

Инсталляция обязательных пакетов: База данных Oracle, требует, чтобы в системе были обязательно установлены некоторые компоненты. Пакеты можно скачать с публичного репозитория (из интернет) или взять с диска, на котором и располагается дистрибутив операционной системы. 1) Инсталляция пакетов с DVD диска Oracle Linux:

6

Page 7: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru# mkdir /mnt/cdrom# mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom # vi /etc/yum.repos.d/oracleLinuxRepoDVD.repo

[OEL58_DVD]name=Oracle Enterprise Linux DVDbaseurl=file:///mnt/cdrom/Server/gpgcheck=0enabled=1

2) Инсталляция пакетов из репозитория Oracle Linux в интернете: # vi /etc/yum.repos.d/oracleLinuxRepoINTERNET.repo

[OEL_INTERNET]name=Oracle Enterprise Linux $releasever - $basearch baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL5/latest/x86_64/gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-el5gpgcheck=1enabled=1

# yum repolist Следующие пакеты, необходимо установить обязательно. Просто скопируйте код и вставьте в консоль putty # yum install -y \binutils \compat-libstdc++*33* \elfutils-libelf \elfutils-libelf-devel \elfutils-libelf-devel-static \gcc \gcc-c++ \glibc \glibc-common \glibc-devel \glibc-headers \kernel-headers \libaio \libaio-devel \libgcc \

7

Page 8: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.rulibgomp \libstdc++ \libstdc++-devel \make \numactl-devel \sysstat Дополнительные пакеты: # yum install -y \mc \nano \vim \emacs \make \openssh-clients \wget \xinetd \screen \vsftpd \gamin \unzip \ntp \net-snmp \ntsysv \libXext.x86_64 \compat-libstdc++* \readline-devel.x86_64 rlwrap - пакет, который позволяет хранить историю команд в SQL*PLUS и RMAN в Linux (его необходимо прописывать отдельной строкой в bash профиле). Установив данный пакет, вы сможете использовать кнопки вверх, вниз для просмотра истории введенных команд, правильную работу команды backspace и др. # cd /tmp# wget http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-0.37.tar.gz # tar zxvf rlwrap-0.37.tar.gz# cd rlwrap-0.37# ./configure# make # make check# make install

8

Page 9: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

9

Page 10: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Дополнительные настройки: Настраиваем планировщик заданий Сервера ru.pool.ntp.org выбраны в качестве примера # crontab -e

# Set the date and time via NTP*/15 * * * * /usr/sbin/ntpdate 0.ru.pool.ntp.org 1.ru.pool.ntp.org 2.ru.pool.ntp.org 3.ru.pool.ntp.org > /var/log/time.log

Внесите изменения в файл параметров ntpd # vi /etc/sysconfig/ntpd замените

# Drop root to id 'ntp:ntp' by default.OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid"

на

# Drop root to id 'ntp:ntp' by default.# OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid"OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"

// Перестартуйте сетевые интерфейсы# service ntpd restart

10

Page 11: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Подготовка дисков к инсталляции базы данных В каталоге /u01 будет храниться программное обеспечение для работы с базами данных (Database Software) а в каталоге /u02 файлы базы данных. # ls /dev/sd*/dev/sda /dev/sda2 /dev/sdc /dev/sde /dev/sdg/dev/sda1 /dev/sdb /dev/sdd /dev/sdf /dev/sdh # fdisk /dev/sdb# fdisk /dev/sdc# fdisk /dev/sdd

The number of cylinders for this disk is set to 5221.There is nothing wrong with that, but this is larger than 1024,and could in certain setups cause problems with:1) software that runs at boot time (e.g., old versions of LILO)2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): nCommand action e extended p primary partition (1-4)[p]Partition number (1-4): [1]First cylinder (1-5221, default 1): [Enter]Using default value 1Last cylinder or +size or +sizeM or +sizeK (1-5221, default 5221): [Enter]Using default value 5221 Command (m for help): [w]The partition table has been altered! Calling ioctl() to re-read partition table.Syncing disks.

11

Page 12: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru # mkfs.ext4 /dev/sdb1# mkfs.ext4 /dev/sdc1# mkfs.ext4 /dev/sdd1 # mkdir /u01# mkdir /u02# mkdir /u03 # cp /etc/fstab /etc/fstab.bkp# echo "/dev/sdb1 /u01 ext4 defaults 1 2" >> /etc/fstab# echo "/dev/sdc1 /u02 ext4 defaults 1 2" >> /etc/fstab# echo "/dev/sdd1 /u03 ext4 defaults 1 2" >> /etc/fstab # mount /u01# mount /u02# mount /u03 # mount | grep sdb1/dev/sdb1 on /u01 type ext4 (rw) # mount | grep sdc1/dev/sdc1 on /u02 type ext4 (rw) # mount | grep sdd1/dev/sdd1 on /u03 type ext4 (rw)

12

Page 13: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Конфигурурование системных пользователей, настройка параметров системы: Перед тем как вносить изменения в конфигурационные файлы, рекомедуется сделать их резервные копии: # {cp /etc/sysctl.conf /etc/sysctl.conf.bkpcp /etc/security/limits.conf /etc/security/limits.conf.bkpcp /etc/pam.d/login /etc/pam.d/login.bkpcp /etc/profile /etc/profile.bkp}

Создание пользователей и групп Создаем группы: # groupadd -g 1000 oinstall# groupadd -g 1001 dba# groupadd -g 1002 oper Создаем пользователя oracle11, сообщаем, что он будет находиться в группах dba и oinstall и домашним каталогом у него будет /home/oracle11 # useradd \-g oinstall \-G dba \-d /home/oracle11 \-m oracle11 Устанавливаем пароль для пользователе oracle11# passwd oracle11

13

Page 14: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Изменение параметров ядра и параметров учетной записи с правами администратора базы данных 1) Отредактируйте файл /etc/sysctl.conf Рекомендуется закомментировать (поставить перед ними знак #) имеющиеся параметры kernel.shmmax и kernel.shmall. Далее они будут добавлены в качестве параметров вместе с остальными параметрами Oracle. # sed -i.gres "s/kernel.shmmax/#kernel.shmmax/g" /etc/sysctl.conf# sed -i.gres "s/kernel.shmall/#kernel.shmall/g" /etc/sysctl.conf # vi /etc/sysctl.conf kernel.shmmax = RAM (in bytes) / 22100154368 / 2 = 1050077184 Количество байт отперативной памяти, можно узнать введя команду # free -b Добавьте в конец документа следующие параметры ядра.

################################################ Oracle Kernel Parameters

kernel.sem = 250 32000 100 128

kernel.shmall = 2097152 # kernel.shmmax = 1050077184

kernel.shmmax = 1054117888kernel.shmmni = 4096fs.file-max = 6815744fs.aio-max-nr = 1048576net.ipv4.ip_local_port_range = 20000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048586vm.min_free_kbytes = 23168

############################################

14

Page 15: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

2) Отредактируйте файл /etc/security/limits.conf # vi /etc/security/limits.conf Добавьте следующие строки

################################################ Settings required for Oracle 11

oracle11 soft nproc 2047oracle11 hard nproc 16384oracle11 soft nofile 1024oracle11 hard nofile 65536oracle11 soft stack 10240oracle11 hard stack 32768

############################################

3) Отредактируйте файл /etc/pam.d/login # vi /etc/pam.d/login Добавьте следующие строки

################################################ Settings required for Oracle

session required pam_limits.so############################################

4) Отредактируйте файл /etc/profile # vi /etc/profile Перед unset iunset pathmunge Добавьте

15

Page 16: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

################################################ Shell limits for Oracle 11 user accounts

if [ $USER = "oracle11" ]; thenulimit -u 16384 -n 65536fi

############################################

5) Отредактируйте файл /home/oracle11/.bash_profile # vi /home/oracle11/.bash_profile После; # User specific environment and startup programs

Добавьте

################################################ Oracle Parameters

umask 022

export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/11.2export ORACLE_SID=ora112export ORACLE_UNQNAME=ora112

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 export NLS_DATE_FORMAT="DD.MM.YYYY HH24:MI:SS"

export PATH=$PATH:$ORACLE_HOME/binexport LD_LIBRARY_PATH=$ORACLE_HOME/lib

alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman'

############################################

Применить параметры ядра без перезагрузки можно следующей командой:# sysctl -p Применить переменные, определенные в файле .bash_profile к текущей сессии bash можно следующей командой: # source ~/.bash_profile

16

Page 17: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

17

Page 18: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Автозапуск только выбранных программ Получить список программ, которые будут автоматически стартовать, можно с помощью команды # chkconfig --list Самый быстрый способ - отключить все и после выбрать только те пакеты, которые должны быть стартовать автоматически при запуске операционной системы. // Создаем резервную копию выходного потока от программы chkconfig --list# chkconfig --list > /tmp/chkconfig.backup // Посмотреть какие программы сейча автостартуют при запуске операционной системы.# chkconfig --list | grep '3:on\|4:on\|5:on' |awk '{print $1}' | sort // Следующая команда отключает автозапуск сразу всех пакетов. # for i in $(chkconfig --list | grep '3:on\|4:on\|5:on' | awk {'print $1'}); do chkconfig --level 345 $i off; done После этого, включаем в автозапуск следующие программы: {chkconfig --level 345 acpid onchkconfig --level 345 atd on

chkconfig --level 345 auditd onchkconfig --level 345 autofs onchkconfig --level 345 crond onchkconfig --level 345 haldaemon onchkconfig --level 345 irqbalance onchkconfig --level 345 messagebus onchkconfig --level 345 netfs onchkconfig --level 345 network onchkconfig --level 345 nfs onchkconfig --level 345 nfslock onchkconfig --level 345 ntpd onchkconfig --level 345 portmap on

chkconfig --level 345 rpcgssd on

18

Page 19: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ruchkconfig --level 345 rpcidmapd onchkconfig --level 345 sendmail on

chkconfig --level 345 sshd onchkconfig --level 345 syslog onchkconfig --level 345 sysstat onchkconfig --level 345 xinetd on

chkconfig --level 345 readahead_early onchkconfig --level 345 readahead_later on

chkconfig --level 345 snmpd on

} // Обязательно убедиться, что ssh будет запущен при автозапуске!.# chkconfig --list | grep ssh Далее, следует перезагрузить сервер, чтобы просто убедиться, что все нормально поднимается после перезагрузки. # reboot

Создание структуры каталогов и назначение необходимых прав # mkdir -p /u01/app/oracle/product/11.2# chown -R oracle11:dba /u01/app/oracle# chmod -R 775 /u01/app/oracle/product/11.2 # mkdir -p /u01/app/oraInventory# chown -R oracle11:oinstall /u01/app/oraInventory# chmod -R 775 /u01/app/oraInventory # mkdir -p /u02/oradata# chown -R oracle11:oinstall /u02/oradata# chmod -R 775 /u02/oradata

19

Page 20: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru # mkdir -p /u03/orabackups# chown -R oracle11:oinstall /u03/orabackups# chmod -R 775 /u03/orabackups

Копирование дистрибутивов базы данных на сервер (в каталог /tmp): Необходимо скопировать следующие архивы на сервер в каталог /tmp: p10404530_112030_Linux-x86-64_1of7.zipp10404530_112030_Linux-x86-64_2of7.zip Для инсталляции базы данных достаточно первых 2-х архивов из 7. Если архивы, лежат на сервере с операционной системой linux, можно воспользоваться утилитой scp. Например, следующей командой можно забрать дистрибутивы базы данных с другого сервера linux и положить их в каталог /tmp:# scp [email protected]:/oracle/p10404530_112030_Linux-x86-64_{1..2}of7.zip /tmp/ Если Вы работаете под Windows, самый простой спомоб - воспользоваться winscp. Назначить владельцем скачанных архивов пользователя oracle11 # chown -R oracle11:oinstall /tmp/p10404530_112030_Linux-x86-64_*

20

Page 21: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Инсталляция ПО Oracle (DataBase SoftWare) Войдите в систему пользователем, от имени которого будет будет происходить инсталляция базы данных. # su - oracle11$ cd /tmp $ unzip p10404530_112030_Linux-x86-64_1of7.zip; \unzip p10404530_112030_Linux-x86-64_2of7.zip $ cd /tmp/database

Если вы инсталлируете Oracle на сервер с GUI. И при инсталляции будут возникать задержки при работе с XMING, возможно, вам поможет VNC - клиент.http://odba.ru/showthread.php?goto=newpost&t=738

Определите системную переменную DISPLAY следующим образом. $ export DISPLAY=192.168.1.50:0.0 В данном случае 192.168.1.50 - ip адрес компьютера, с которого происходит процесс управления установкой. На этом компьютере должен быть стартован xserver, например XMing. Запустите утилиту для установки базы данных. $ ./runInstaller В некоторых случаях приходится запускать инсталляцию с игнорированием системных сообщений $ ./runInstaller -ignoreSysPrereqs Если все нормально, появится картинка:

21

Page 22: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

22

Page 23: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

23

Page 24: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

24

Page 25: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

25

Page 26: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

26

Page 27: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

27

Page 28: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

28

Page 29: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

29

Page 30: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

30

Page 31: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

31

Page 32: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

32

Page 33: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

После появления следующего окна, необходимо выполнить под учетной записью root следующие скрипты. Рекомендуется подключиться к серверу баз данных еще одной сессией putty.

33

Page 34: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

# /u01/app/oraInventory/orainstRoot.sh# /u01/app/oracle/product/11.2/root.sh Enter the full pathname of the local bin directory: [/usr/local/bin]: [Enter]

34

Page 35: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

35

Page 36: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Настройка службы, отвечающей за удаленное подключение к серверу (Listener) Предполагается, что системная переменная DISPLAY определена. $ netca

36

Page 37: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

37

Page 38: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

38

Page 39: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

39

Page 40: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

40

Page 41: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

41

Page 42: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Создание экземпляря (instance) базы данных Предполагается, что системная переменная DISPLAY определена. $ dbca

42

Page 43: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Step2: Database Templates Ниже Вам предлагают выбрать, один из вариантов инсталляции базы данных. Тот или иной выбор определяет то, каким образом будут оптимизированы параметры работы базы данных. Упрощенно:Вариант 1 OLTP - когда необходимо оптимизировать ввод данных в базу данных.Вариант 2 - вам предлагается самостоятельно выбрать системные параметры базы данных.Вариант 3 Data Warehouse - когда необходимо оптимизировать работу с данными в базе данных (построения всевозможных отчетов).

43

Page 44: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

44

Page 45: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

45

Page 46: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

46

Page 47: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Step 6: Database File Locations Далее необходимо указать место, где база данных будет хранить файлы базы данных - т.е. те файлы в которых собственно и будут храниться данные. /u02/oradata

47

Page 48: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Step 7: Recovery Configuration

48

Page 49: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Нужно определить каталог для резевных копий. По умолчанию там же хранятся и архивные журналов (если включить Enable Archiving). Посмотреть размер свободного пространства на диске (в мегабайта) # df -m | grep /dev/sdd1/dev/sdd1 40313 176 38089 1% /u03 Available 38089 MПусть будет 30 G = 30MНе весь, для того, чтобы при необходимости можно было бы добавить из имеющихся ресурсов.

49

Page 50: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru Step 8: Database Content

Oracle Text - обеспечивает индексирование слов и поиск http://docs.oracle.com/cd/B10501_01/text.920/a96517/cdefault.htm Oracle OLAP - многомерный анализ данных, для аналитических приложений.http://www.oracle.com/technetwork/documentation/olap-101824.html Oracle Spatial - для Geographic Information System (GIS)http://docs.oracle.com/html/A88805_01/sdo_intr.htm Oracle Multimedia - нужна в случае, если предполагается хранить в базе картинки, аудио, видео.http://docs.oracle.com/cd/E11882_01/appdev.112/e10777/ch_intr.htm#i610845

50

Page 51: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru Oracle JVM - если нужна java внутри базы данных. Application Express - имеет смысл оставить, только если предполагается с ним работать.

Step 9: Initialization Parameters Если не планируется на сервере создавать еще один экземпляр базы данных, имеет смысл выделить для сервера побольше памяти. (90%). (на картинке изображена установка с большим количеством оперативной памяти, чем прилагается в документе по созданию виртуальной машины)

51

Page 52: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Если в базе будут использоваться русские буквы, рекомендуется выбрать кодировку, которая поддерживает данную возможность. Unicode, где каждый символ кодируется 2 байтами, вполне подходит для этой задачи.

52

Page 53: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

53

Page 54: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

54

Page 55: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

55

Page 56: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

56

Page 57: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

57

Page 58: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

При желании, можно подключиться к Enterprise Manager (EM).

58

Page 59: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

59

Page 60: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Проверка правильности выбора кодировки если планируется использовать кириллицу в базе данных $ sqlplus / as sysdba SQL> select 'пиво' from dual; 'пиво'----пиво

60

Page 61: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Создание резервной копии созданной базы данных: На шаге 7 был выбран режим работы базы данных archivelog. Данный режим работы базы данных позволяет создавать резервные копии базы данных не останавливая базу данных. $ rman target / RMAN> BACKUP FULL DATABASE TAG "FULL_DATABASE" PLUS ARCHIVELOG TAG "FULL_DATABASE_ARCHIVELOGS"; RMAN> quit // При необходимости, можно посмотреть когда делались бекапы, и завершились ли они успешно или нет. $ sqlplus / as sysdbaSQL> set pagesize 200;SQL> SELECT start_time, end_time, statusFROM v$rman_backup_job_details order by 1 desc;

START_TIME END_TIME STATUS------------------- ------------------- -----------------------05.05.2012 16:04:40 05.05.2012 16:06:41 COMPLETED

Замечание: При инсталляции, было определено это пространство для резервных копий базы данных и файлов архивных журналов (Fast Recovery Area (FRA). Необходимо следить за тем, чтобы у базы данных оставалось место для записи в него своих данных. При необходимости, его нужно освобождать от устаревших данных. Чистить можно только средствами RMAN. Посмотреть свободное место, можно командой: $ sqlplus / as sysdba SQL>

61

Page 62: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

SELECT TO_CHAR(SPACE_USED, '999,999,999,999') AS "Used", TO_CHAR(SPACE_LIMIT - SPACE_USED + SPACE_RECLAIMABLE, '999,999,999,999') AS "Free", ROUND((SPACE_USED - SPACE_RECLAIMABLE)/SPACE_LIMIT * 100, 1) AS "Used %" FROM V$RECOVERY_FILE_DEST;

Used Free Used %---------------- ---------------- ---------- 1,130,799,104 3,201,327,104 25.9 // Изменить размер выделенный для бекапов и архивных журналов, можно командойalter system set db_recovery_file_dest_size = 80G;

Дополнительные настройки (необязательные):

Автоматизация автозапуска Oracle после перезагрузки: Необходимо отредактировать файл /etc/oratab $ vi /etc/oratab Замените строку:

ora112:/u01/app/oracle/product/11.2:N

на

# ora112:/u01/app/oracle/product/11.2:Nora112:/u01/app/oracle/product/11.2:Y

62

Page 63: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Создание скрипта, стартующего и останавливающего базу данных при старте и перезапуске операционной системы: Создайте скрипт для запуска базы данных следующего содержания. # vi /etc/rc.d/init.d/startupOracleDatabase11GR2

#!/bin/bash## chkconfig: 35 98 03# description: Oracle 11gR2 startup and shutdown script # source function library. /etc/rc.d/init.d/functions ORA_SCRIPTS=/u01/app/oracle/product/11.2/binORA_OWNER=oracle11 echo "-------------------------------------------------" >> /var/log/ora112.logdate >> /var/log/ora112.log start() { if [ -x $ORA_SCRIPTS/dbstart ]; then echo -n "Starting Oracle 11gR2 databases: " su - $ORA_OWNER -c "$ORA_SCRIPTS/dbstart" >> /var/log/ora112.log echo_success echo echo -n "Starting Oracle 11gR2 TNS listener: " su - $ORA_OWNER -c "$ORA_SCRIPTS/lsnrctl start" >> /var/log/ora112.log touch /var/lock/subsys/ora112.log echo_success echo exit 0 else echo -n "Starting Oracle 11gR2 databases: " echo_failed echo exit 1; fi} stop() {

63

Page 64: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

if [ -x $ORA_SCRIPTS/dbshut ]; then echo -n "Stoping Oracle 11gR2 TNS listener: " su - $ORA_OWNER -c "$ORA_SCRIPTS/lsnrctl stop" >> /var/log/ora112.log echo_success echo echo -n "Stoping Oracle 11gR2 databases: " su - $ORA_OWNER -c $ORA_SCRIPTS/dbshut >> /var/log/ora112.log echo_success echo rm -f /var/lock/subsys/ora112.log exit 0 else echo -n "Stoping Oracle 11gR2 databases: " echo_failed echo exit 1; fi} case "$1" in start) start ;; stop) stop ;; *) echo $"Usage: $0 {start|stop}" exit 1esac exit 0

# chmod +x /etc/rc.d/init.d/startupOracleDatabase11GR2# chkconfig --add startupOracleDatabase11GR2

64

Page 65: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Запретить удаленное подключение к сереверу баз данных пользователем root Создаем группу:# groupadd sysadmins Создаем пользователя:# useradd \-g sysadmins \-d /home/sysadm \-m sysadm Устанавливаем пароль для пользователе sysadm# passwd sysadm Пожалуй предоставим пользователю sysadm возможность работать с полномочиями root# vi /etc/sudoers

## Allow root to run any commands anywhereroot ALL=(ALL) ALLsysadm ALL=(ALL) ALL

Запрет входа root по SSH vi /etc/ssh/sshd_config

#PermitRootLogin yes

меняем на

PermitRootLogin no

# service sshd restart

65

Page 66: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Обеспечение дополнительной отказоустойчивости системы: В целях повышения надежности работы данных, необходимо обеспечить мультиплексирование: control file, redo-log журналов.

Мультиплексирование controlfiles Под рутом создаю каталог: # mkdir -p /u03/oradata# chown -R oracle11:dba /u03/oradata# chmod -R 775 /u03/oradata $ su - oracle11 $ sqlplus / as sysdba SQL> select name from v$CONTROLFILE;

NAME--------------------------------------------------------------------------------/u02/oradata/ora112/control01.ctl/u03/orabackups/ora112/control02.ctl

SQL> shutdown immediate; SQL> quit $ mkdir -p /u03/oradata/${ORACLE_SID}$ cp /u02/oradata/ora112/control01.ctl /u03/oradata/ora112/control01.ctl$ rm -rf /u03/orabackups/ora112 $ sqlplus / as sysdba SQL> startup nomount;

66

Page 67: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ruSQL> ALTER SYSTEM SET control_files = '/u02/oradata/ora112/control01.ctl', '/u03/oradata/ora112/control01.ctl' scope=spfile; SQL> shutdown immediate;SQL> startup; SQL> SELECT name FROM v$CONTROLFILE;

NAME--------------------------------------------------------------------------------/u02/oradata/ora112/control01.ctl/u03/oradata/ora112/control01.ctl

Мультиплексирование redologs $ sqlplus / as sysdba Блок команд, чтобы удобнее представить на экране результаты выполнения запросов. SQL> set linesize 200;SQL> set pagesize 0;SQL> col GROUP# format 99;SQL> col MEMBER format a40;SQL> col STATUS format a30;SQL> col MB format 999; SQL>

select a.group#, member, a.status, bytes/1024/1024 as "MB"from v$log a, v$logfile bwhere a.group# = b.group#order by 1;

1 /u02/oradata/ora112/redo01.log CURRENT 50 2 /u02/oradata/ora112/redo02.log INACTIVE 50 3 /u02/oradata/ora112/redo03.log INACTIVE 50 Удаляем файлы группы в состоянии INACTIVE

67

Page 68: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ruУдаляем файлы группы 2SQL> alter database drop logfile group 2; SQL> quit $ rm /u02/oradata/ora112/redo02.log $ sqlplus / as sysdba Добавляем новую группу, перечисляем файлы новой группы и определяем их размер.SQL> alter database add logfile group 2 ('/u02/oradata/ora112/redo02.log' , '/u03/oradata/ora112/redo02.log') size 100M; Удаляем файлы группы 3 SQL> alter database drop logfile group 3; SQL> quit $ rm /u02/oradata/ora112/redo03.log $ sqlplus / as sysdba SQL> alter database add logfile group 3 ('/u02/oradata/ora112/redo03.log' , '/u03/oradata/ora112/redo03.log ') size 100M; Удаляем файлы группы 1 Нужно пересоздать группу 1 и файлы данной группы. Но так как группа активна, необходимо переключиться на следующую группу файлов, сделав группу 1 INACTIVE. Для переключения, достаточно выполнить команды. SQL> alter system checkpoint;SQL> alter system switch logfile; // Теперь можно удалить группу 1SQL> alter database drop logfile group 1; SQL> quit $ rm /u02/oradata/ora112/redo01.log $ sqlplus / as sysdba SQL> alter database add logfile group 1 ('/u02/oradata/ora112/redo01.log' , '/u03/oradata/ora112/redo01.log ') size 100M;

68

Page 69: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru SQL> set linesize 200;SQL> set pagesize 0;SQL> col GROUP# format 99;SQL> col MEMBER format a50;SQL> col STATUS format a30;SQL> col MB format 999; SQL> set linesize 640 SQL> select a.group#, member, a.status, bytes/1024/1024 as "MB"from v$log a, v$logfile bwhere a.group# = b.group#order by 1,2;

1 /u02/oradata/ora112/redo01.log UNUSED 100 1 /u03/oradata/ora112/redo01.log UNUSED 100 2 /u02/oradata/ora112/redo02.log CURRENT 100 2 /u03/oradata/ora112/redo02.log CURRENT 100 3 /u02/oradata/ora112/redo03.log UNUSED 100 3 /u02/oradata/ora112/redo03.log UNUSED 100

Мультиплексирование archivelog. $ mkdir -p /u02/oradata/${ORACLE_SID}/archivelogs$ mkdir -p /u03/oradata/${ORACLE_SID}/archivelogs Задать разделы для архивных журналовSQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_1='location=/u02/oradata/ora112/archivelogs mandatory' scope=both; SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='location=/u03/oradata/ora112/archivelogs mandatory' scope=both; Посмотреть текущие значения параметра LOG_ARCHIVE_DESTSQL> show parameter LOG_ARCHIVE_DEST ; Задать формат для файлов arhivelogsSQL> ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%R.arc' scope=spfile;

69

Page 70: (Simple) Инсталляция Oracle DataBase 11G R2 x86 64 bit в операционной системе Oracle Linux 5.8 x86 64 bit

www.oracle-dba.ru

Контрольный backup$ cd /u03/orabackups$ vi rmanscript.rman

RUN {CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET;BACKUP FULL DATABASE TAG "FULL_DATABASE" PLUS ARCHIVELOG TAG "FULL_DATABASE_ARCHIVELOGS";}

Проверка синтаксиса созданного файла сценария$ rman CHECKSYNTAX @rmanscript.rman Выполнение скрипта резервного копирования$ rman target / @rmanscript.rman Удалить предыдущий бекап: Следующая команда сообщает, что нужно хранить только 1 бекап. RMAN> CONFIGURE RETENTION POLICY TO REDUNDANCY 1; Теперь прошу RMAN удалить устаревшие бекап RMAN> delete noprompt obsolete;

70