Зайти под пользователем 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.
Комментариев нет:
Отправить комментарий