Страницы

пятница, 3 апреля 2015 г.

ИНСТАЛЯЦИЯ

Зайти под пользователем root.
Проверить объём оперативной памяти (должно быть не меньше 1Гб.):
[root@ora11g ~]# grep MemTotal /proc/meminfo
MemTotal:        1030216 kB
Проверить, поодерживает ли программное обеспечение Oracle архитектуру данного процессора:
[root@ora11g ~]# uname -m
i686
Проверить объём файла подкачки:
[root@ora11g ~]# grep SwapTotal /proc/meminfo
SwapTotal:       2064380 kB
Проверить доступный объём в памяти и области подкачки:
[root@ora11g ~]# free
             total       used       free     shared    buffers     cached
Mem:       1030216     319904     710312          0      20852     148328
-/+ buffers/cache:     150724     879492
Swap:      2064380          0    2064380
Проверить доступный объём разделяемой памяти:
[root@ora11g ~]# df -k /dev/shm/
Файловая система     1K-блоков      Исп  Доступно  Исп% смонтирована на
tmpfs                   515108       100    515008   1% /dev/shm
Проверить доступное дисковое пространство в каталоге tmp (должно быть не менее 1Гб.):
[root@ora11g tmp]# df -h /tmp
Файловая система      Разм  Исп  Дост  Исп% смонтирована на
/dev/mapper/vg_ora11g-lv_root
                      9,4G  2,6G  6,4G  29% /
Проверить дестрибутив и версию Linux:
[root@ora11g tmp]# cat /proc/version
Linux version 2.6.39-200.24.1.el6uek.i686 (mockbuild@ca-
build44.us.oracle.com) (gcc version 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC) ) 
#1 SMP Sat Jun 23 02:39:03 EDT 2012
Проверить версию ядра (должна быть не меньше 2.6.18):
[root@ora11g tmp]# uname -r
2.6.39-200.24.1.el6uek.i686
Проверить установку следующих пакетов:
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
elfutils-libelf-devel-static-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-common-2.5
glibc-devel-2.5
glibc-headers-2.5
kernel-headers-2.6.18
ksh-20060214
libaio-0.3.106
libaio-devel-0.3.106 
libgcc-4.1.2
libgomp-4.1.2
libstdc++-4.1.2 
libstdc++-devel-4.1.2
make-3.81
sysstat-7.0.2
Проверить, установлен ли пакет, можно следующим образом:
rpm -q package_name
Проверить существование группы oinstall:
[root@ora11g ~]#  more /etc/oraInst.loc
/etc/oraInst.loc: Нет такого файла или каталога
Проверить существование группы dba:
[root@ora11g ~]# grep dba /etc/group
Если групп нет то создать их:
[root@ora11g ~]# groupadd oinstall
[root@ora11g ~]# groupadd dba 
[root@ora11g ~]# grep dba /etc/group
dba:x:502:
[root@ora11g ~]# grep oinstall /etc/group
oinstall:x:501:
Проверить существование пользователя oracle:
[root@ora11g ~]# id oracle
id: oracle: Такого пользователя нет 
Если пользователя oracle нет, то создать его, включив в группы oinstall и dba:
[root@ora11g ~]# useradd -g oinstall -G dba oracle
[root@ora11g ~]# id oracle
uid=500(oracle) gid=501(oinstall) группы=501(oinstall),502(dba)
Задать пароль пользователя oracle:
[root@ora11g ~]# passwd oracle
Смена пароля для пользователя oracle.
Новый пароль : 
Повторите ввод нового пароля : 
passwd: все токены проверки подлинности успешно обновлены. ?
Установить необходимые значения параметров ядра в файле /etc/sysctl.conf, не меньше следующих значений:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
Применить значения параметров установленных в файле /etc/sysctl.conf (или можно перезагрузить):
[root@ora11g etc]# sysctl –p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 4294967295
kernel.shmall = 268435456
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
Зайти под пользователем oracle. Проверить ресурсные лимиты:
[oracle@ora11g ~]$ ulimit -Sn
1024
[oracle@ora11g ~]$ ulimit -Hn
65536
[oracle@ora11g ~]$ ulimit -Su
2047
[oracle@ora11g ~]$ ulimit -Hu
16384
[oracle@ora11g ~]$ ulimit -Ss
10240
[oracle@ora11g ~]$ ulimit -Hs
unlimited
Если лимиты не соответствуют, зайти под root и поправить значения в файле /etc/security/limits.conf, после этого перезагрузить систему:
oracle              soft    nofile  1024
oracle              hard    nofile  65536
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    stack   10240
Зайти под root. Создать базовый каталог Oracle:
[root@ora11g ~]# mkdir -p /u01/app/oracle
Сменить владельца и группу базового каталога на oracle и oinstall:
[root@ora11g ~]# chown -R oracle:oinstall /u01/app/oracle
Задать права доступа к базовому каталогу Oracle:
[root@ora11g ~]# chmod -R 775 /u01/app/oracle
Создать каталог файлов базы данных Oracle:
[root@ora11g ~]# mkdir -p /u02/oradata
Сменить владельца и группу каталога файлов базы данных на oracle и oinstall:
[root@ora11g ~]# chown -R oracle:oinstall /u02/oradata
Сменить права доступа к каталогу файлов базы данных:
[root@ora11g ~]# chmod -R 775 /u02/oradata
Создать каталог флэш области восстановления:
[root@ora11g ~]# mkdir -p /u01/app/oracle/flash_recovery_area
Сменить владельца и группу каталога флэш области восстановления на oracle и oinstall:
[root@ora11g ~]# chown -R oracle:oinstall /u01/app/oracle/flash_recovery_area
Сменить права доступа к каталогу флэш области восстановления:
[root@ora11g ~]# chmod -R 775 /u01/app/oracle/flash_recovery_area
Создать каталог инвентаризации Oracle:
[root@ora11g]# mkdir -p /u01/app/oraInventory
Сменить права доступа к каталогу инвентаризации Oracle:
[root@ora11g ~]# chmod -R 775 /u01/app/oraInventory
Сменить владельца и группу каталога файлов базы данных на oracle и oinstall:
[root@ora11g ~]# chown -R oracle:oinstall /u01/app/oraInventory
Зайти под пользователем oracle:
[root@ora11g tmp]# su – oracle
Установить маску по умолчанию для вновь создаваемых файлов:
[oracle@ora11g ~]# umask 022
Разрешить программам выполняемым на этом хосте обращаться к X серверу:
[oracle@ora11g ~]# xhost +
access control disabled, clients can connect from any host
Установить значение переменной окружения DISPLAY:
[oracle@ora11g ~]$ echo $SHELL
/bin/bash
[oracle@ora11g ~]$ export DISPLAY=:0.0
[oracle@ora11g ~]$ echo $DISPLAY
:0.0
Установить значения переменных окружения TEMP и TMP:
[oracle@ora11g tmp]# TMP=/tmp
[oracle@ora11g tmp]# TEMP=/tmp
[oracle@ora11g tmp]# export TMP TEMP
[oracle@ora11g tmp]# echo $TMP
/tmp
[oracle@ora11g tmp]# echo $TEMP
/tmp
Установить значения переменных окружения ORACLE_BASE и ORACLE_SID:
[oracle@ora11g tmp]# ORACLE_BASE=/u01/app/oracle
[oracle@ora11g tmp]# ORACLE_SID=orcl
[oracle@ora11g tmp]# export ORACLE_BASE ORACLE_SID
[oracle@ora11g ~]$ echo $ORACLE_BASE
/u01/app/oracle 
[oracle@ora11g ~]$ echo $ORACLE_SID
orcl
Занести переменные окружения в файл профиля пользователя oracle:
[oracle@ora11g ~]$ pwd
/home/oracle
[oracle@ora11g ~]$ vi .bash_profile
…
TMP=/tmp
TEMP=/tmp
ORACLE_BASE=/u01/app/oracle
ORACLE_SID=orcl
export PATH
export TMP TEMP
export ORACLE_BASE ORACLE_SID
Удалить, если имеются, следующие переменные окружения:
[oracle@ora11g ~]$ unset ORACLE_HOME
[oracle@ora11g ~]$ unset TNS_ADMIN
Посмотреть установленные переменные окружения:
[oracle@ora11g ~]$ env | more
Перейти в каталог на смонтированном DVD с программным обеспечением Oracle (папка смонтирована в VirtualBox, пользователь oracle должен быть включён в группу vboxsf):
[oracle@ora11g /]$ cd /media/sf_dvd/database
Запустить инсталлятор:
[oracle@ora11g database]$ ./runInstaller
[oracle@ora11g database]$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB.   Actual 6537 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 2015 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-12-
17_11-10-51AM. Please wait ...
Инсталляция…
Зайти под пользователем root и запустить следующие скрипты:
[oracle@ora11g ~]$ su
Пароль: 
[root@ora11g oracle]# cd /u01/app/oraInventory
[root@ora11g oraInventory]# ./orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@ora11g oraInventory]# cd /u01/app/oracle/product/11.2.0/dbhome_1
[root@ora11g dbhome_1]# ./root.sh
Performing root user operation for Oracle 11g 
The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/11.2.0/dbhome_1
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 script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
Установить в файле профиля переменные окружения:
[oracle@ora11g bin]$ cd /home/oracle
[oracle@ora11g ~]$ vi .bash_profile
…
ORACLE_BASE=/u01/app/oracle
ORACLE_SID=orcl
ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
export PATH
export TMP TEMP
export ORACLE_BASE ORACLE_SID ORACLE_HOME
export NLS_LANG
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
Перезагрузить. Запустить на выполнение скрипт:
[oracle@ora11g ~]$ sqlplus / as sysdba
SQL> @?/rdbms/admin/utlrp.sql
TIMESTAMP
--------------------------------------------------------------------------------
COMP_TIMESTAMP UTLRP_BGN  2012-12-18 09:37:31
DOC>   The following PL/SQL block invokes UTL_RECOMP to recompile invalid
DOC>   objects in the database. Recompilation time is proportional to the
DOC>   number of invalid objects in the database, so this command may take
DOC>   a long time to execute on a database with a large number of invalid
DOC>   objects.
DOC>
DOC>   Use the following queries to track recompilation progress:
DOC>
DOC>   1. Query returning the number of invalid objects remaining. This
DOC>   number should decrease with time.
DOC>      SELECT COUNT(*) FROM obj$ WHERE status IN (4, 5, 6);
DOC>
DOC>   2. Query returning the number of objects compiled so far. This number
DOC>   should increase with time.
DOC>      SELECT COUNT(*) FROM UTL_RECOMP_COMPILED;
DOC>
DOC>   This script automatically chooses serial or parallel recompilation
DOC>   based on the number of CPUs available (parameter cpu_count) multiplied
DOC>   by the number of threads per CPU (parameter parallel_threads_per_cpu).
DOC>   On RAC, this number is added across all RAC nodes.
DOC>
DOC>   UTL_RECOMP uses DBMS_SCHEDULER to create jobs for parallel
DOC>   recompilation. Jobs are created without instance affinity so that they
DOC>   can migrate across RAC nodes. Use the following queries to verify
DOC>   whether UTL_RECOMP jobs are being created and run correctly:
DOC>
DOC>   1. Query showing jobs created by UTL_RECOMP
DOC>      SELECT job_name FROM dba_scheduler_jobs
DOC>  WHERE job_name like 'UTL_RECOMP_SLAVE_%';
DOC>
DOC>   2. Query showing UTL_RECOMP jobs that are running
DOC>      SELECT job_name FROM dba_scheduler_running_jobs
DOC>  WHERE job_name like 'UTL_RECOMP_SLAVE_%';
DOC>#
PL/SQL procedure successfully completed.
TIMESTAMP
--------------------------------------------------------------------------------
COMP_TIMESTAMP UTLRP_END  2012-12-18 09:37:39
DOC> The following query reports the number of objects that have compiled
DOC> with errors (objects that compile with errors have status set to 3 in
DOC> obj$). If the number is higher than expected, please examine the error
DOC> messages reported with each object (using SHOW ERRORS) to see if they
DOC> point to system misconfiguration or resource constraints that must be
DOC> fixed before attempting to recompile these objects.
DOC>#
OBJECTS WITH ERRORS
-------------------
    0
DOC> The following query reports the number of errors caught during
DOC> recompilation. If this number is non-zero, please query the error
DOC> messages in the table UTL_RECOMP_ERRORS to see if any of these errors
DOC> are due to misconfiguration or resource constraints that must be
DOC> fixed before objects can compile successfully.
DOC>#
ERRORS DURING RECOMPILATION
---------------------------
     0
Function created.
PL/SQL procedure successfully completed.
Function dropped.
PL/SQL procedure successfully completed.

Комментариев нет:

Отправить комментарий