Este artigo tem como objetivo demonstrar a preparação do Oracle Linux para a instalação do Banco de Dados Oracle 12c.
Informações do Hardware:
CPU:
– Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz (Quad-Core)
Memórias:
– MemTotal: 3084476 kB
– SwapTotal: 4192924 kB
Informações de Software:
Oracle Linux Server release 5.8 x86_64
Informações de Storage:
Filesystem Size Mounted on
/dev/sda5 5.7G /
/dev/sda3 9.7G /u01
/dev/sda2 9.7G /u02
/dev/sda1 122M /boot
tmpfs 5.0G /dev/shm
## Rawdevices para o ASM (Grid Infrastructure)
/dev/raw/raw1 -> Disco 2GB |
/dev/raw/raw2 -> Disco 2GB | -> DGDATA
/dev/raw/raw3 -> Disco 2GB |
/dev/raw/raw4 -> Disco 512MB -> DGREDOA
/dev/raw/raw5 -> Disco 512MB -> DGREDOB
OBS: Para configurar os rawdevices acesse https://oraclehome.com.br/2011/10/19/configurando-rawdevices-para-oracle-asm-non-rac/
Iniciamos com a instalação de pacotes necessários no linux para o banco de dados Oracle 12c.
Como estou usando a versão 5 do Linux, segue abaixo os pacotes para esta versão:
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
compat-libstdc++-33-3.2.3 (32 bit)
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-58
glibc-2.5-58 (32 bit)
glibc-devel-2.5-58
glibc-devel-2.5-58 (32 bit)
ksh
libaio-0.3.106
libaio-0.3.106 (32 bit)
libaio-devel-0.3.106
libaio-devel-0.3.106 (32 bit)
libgcc-4.1.2
libgcc-4.1.2 (32 bit)
libstdc++-4.1.2
libstdc++-4.1.2 (32 bit)
libstdc++-devel 4.1.2
libXext-1.0.1
libXext-1.0.1 (32 bit)
libXtst-1.0.1
libXtst-1.0.1 (32 bit)
libX11-1.0.3
libX11-1.0.3 (32 bit)
libXau-1.0.1
libXau-1.0.1 (32 bit)
libXi-1.0.1
libXi-1.0.1 (32 bit)
make-3.81
sysstat-7.0.2
unixODBC-libs-2.2.11
unixODBC-devel-2.2.11 (64 bit)
unixODBC-2.2.11 (64 bit)
[root@l12asm64di Server]# rpm -Uvh binutils-* warning: binutils-2.17.50.0.6-20.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package binutils-2.17.50.0.6-20.el5.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh compat-libstdc++-* warning: compat-libstdc++-296-2.96-138.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package compat-libstdc++-33-3.2.3-61.x86_64 is already installed package compat-libstdc++-296-2.96-138.i386 is already installed package compat-libstdc++-33-3.2.3-61.i386 is already installed [root@l12asm64di Server]# rpm -Uvh gcc-* warning: gcc-4.1.2-52.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 error: Failed dependencies: libgnarl-4.1.so()(64bit) is needed by gcc-gnat-4.1.2-52.el5.x86_64 libgnat = 4.1.2-52.el5 is needed by gcc-gnat-4.1.2-52.el5.x86_64 libgnat-4.1.so()(64bit) is needed by gcc-gnat-4.1.2-52.el5.x86_64 libgcj-devel = 4.1.2-52.el5 is needed by gcc-java-4.1.2-52.el5.x86_64 libobjc = 4.1.2-52.el5 is needed by gcc-objc-4.1.2-52.el5.x86_64 libobjc.so.1()(64bit) is needed by gcc-objc-4.1.2-52.el5.x86_64 [root@l12asm64di Server]# rpm -Uvh gcc-c++-* warning: gcc-c++-4.1.2-52.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package gcc-c++-4.1.2-52.el5.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh glibc-* warning: glibc-2.5-81.i686.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 error: Failed dependencies: libgd.so.2()(64bit) is needed by glibc-utils-2.5-81.x86_64 [root@l12asm64di Server]# rpm -Uvh glibc-devel-* warning: glibc-devel-2.5-81.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package glibc-devel-2.5-81.x86_64 is already installed package glibc-devel-2.5-81.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libaio-devel-0.3.106-5.x86_64.rpm warning: libaio-devel-0.3.106-5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:libaio-devel ########################################### [100%] [root@l12asm64di Server]# rpm -Uvh ksh* warning: ksh-20100621-5.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package ksh-20100621-5.el5.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh libaio-*.i386* warning: libaio-0.3.106-5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libaio-0.3.106-5.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libaio-devel-*.i386* warning: libaio-devel-0.3.106-5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:libaio-devel ########################################### [100%] [root@l12asm64di Server]# rpm -Uvh libstdc++-*.i386* warning: libstdc++-4.1.2-52.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libstdc++-4.1.2-52.el5.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libstdc++-devel-4.1.2-52.el5.i386.rpm warning: libstdc++-devel-4.1.2-52.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:libstdc++-devel ########################################### [100%] [root@l12asm64di Server]# 6_64.rpm libstdc++-devel-4.1.2-52.el5.x86_64.rpm -bash: 6_64.rpm: command not found [root@l12asm64di Server]# rpm -Uvh libstdc++44-devel-4.4.6-3.el5.1.i386.rpm warning: libstdc++44-devel-4.4.6-3.el5.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:libstdc++44-devel ########################################### [100%] [root@l12asm64di Server]# rpm -Uvh libstdc++-devel-4.1.2-52.el5.i386.rpm warning: libstdc++-devel-4.1.2-52.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libstdc++-devel-4.1.2-52.el5.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libaio-* warning: libaio-0.3.106-5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libaio-0.3.106-5.x86_64 is already installed package libaio-0.3.106-5.i386 is already installed package libaio-devel-0.3.106-5.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libaio-devel-* warning: libaio-devel-0.3.106-5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libaio-devel-0.3.106-5.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libgcc-* warning: libgcc-4.1.2-52.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libgcc-4.1.2-52.el5.x86_64 is already installed package libgcc-4.1.2-52.el5.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libstdc++-* warning: libstdc++-4.1.2-52.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libstdc++-4.1.2-52.el5.x86_64 is already installed package libstdc++-4.1.2-52.el5.i386 is already installed package libstdc++-devel-4.1.2-52.el5.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh libXext-* warning: libXext-1.0.1-2.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libXext-1.0.1-2.1.x86_64 is already installed package libXext-1.0.1-2.1.i386 is already installed package libXext-devel-1.0.1-2.1.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh libXtst-* warning: libXtst-1.0.1-3.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libXtst-1.0.1-3.1.x86_64 is already installed package libXtst-1.0.1-3.1.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libX11-* warning: libX11-1.0.3-11.el5_7.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libX11-1.0.3-11.el5_7.1.x86_64 is already installed package libX11-1.0.3-11.el5_7.1.i386 is already installed package libX11-devel-1.0.3-11.el5_7.1.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh libXau-* warning: libXau-1.0.1-3.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libXau-1.0.1-3.1.x86_64 is already installed package libXau-1.0.1-3.1.i386 is already installed package libXau-devel-1.0.1-3.1.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh libXi-* warning: libXi-1.0.1-4.el5_4.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libXi-1.0.1-4.el5_4.x86_64 is already installed package libXi-1.0.1-4.el5_4.i386 is already installed package libXi-devel-1.0.1-4.el5_4.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh libXext*.i386* warning: libXext-1.0.1-2.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libXext-1.0.1-2.1.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libXtst-*.i386* warning: libXtst-1.0.1-3.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libXtst-1.0.1-3.1.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libX11-*.i386* warning: libX11-1.0.3-11.el5_7.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libX11-1.0.3-11.el5_7.1.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libXau-*.i386* warning: libXau-1.0.1-3.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libXau-1.0.1-3.1.i386 is already installed [root@l12asm64di Server]# rpm -Uvh libXi-*.i386* warning: libXi-1.0.1-4.el5_4.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package libXi-1.0.1-4.el5_4.i386 is already installed [root@l12asm64di Server]# rpm -Uvh make-* warning: make-3.81-3.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] package make-3.81-3.el5.x86_64 is already installed [root@l12asm64di Server]# rpm -Uvh sysstat-* warning: sysstat-7.0.2-11.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:sysstat ########################################### [100%] [root@l12asm64di Server]# rpm -Uvh unixODBC-libs-* warning: unixODBC-libs-2.2.11-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:unixODBC-libs ########################################### [ 50%] 2:unixODBC-libs ########################################### [100%] [root@l12asm64di Server]# rpm -Uvh unixODBC-2.2.11-10.el5.x86_64.rpm warning: unixODBC-2.2.11-10.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:unixODBC ########################################### [100%] [root@l12asm64di Server]# rpm -Uvh unixODBC-devel-2.2.11-10.el5.x86_64.rpm warning: unixODBC-devel-2.2.11-10.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:unixODBC-devel ########################################### [100%] [root@l12asm64di Server]# rpm -Uvh unixODBC-2.2.11-10.el5.i386.rpm warning: unixODBC-2.2.11-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:unixODBC ########################################### [100%] [root@l12asm64di Server]#
Seguindo com a configuração, iremos ajustar os parâmetros do kernel adicionando os mesmos no final do arquivo /etc/sysctl.conf conforme abaixo:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1579251712
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 = 1048586
[root@l12asm64di Server]# vi /etc/sysctl.conf [root@l12asm64di Server]$ cat /etc/sysctl.conf # Kernel sysctl configuration file for Oracle Enterprise Linux # # For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and # sysctl.conf(5) for more details. # Controls IP packet forwarding net.ipv4.ip_forward = 0 # Controls source route verification # See /usr/share/doc/kernel-doc-*/Documentation/networking/ip-sysctl.txt net.ipv4.conf.default.rp_filter = 2 # Do not accept source routing net.ipv4.conf.default.accept_source_route = 0 # Controls the System Request debugging functionality of the kernel kernel.sysrq = 0 # Controls whether core dumps will append the PID to the core filename # Useful for debugging multi-threaded applications kernel.core_uses_pid = 1 # Controls the use of TCP syncookies net.ipv4.tcp_syncookies = 1 # Controls the maximum size of a message, in bytes kernel.msgmnb = 65536 # Controls the default maxmimum size of a mesage queue kernel.msgmax = 65536 # Controls the maximum shared segment size, in bytes #kernel.shmmax = 68719476736 # Controls the maximum number of shared memory segments, in pages #kernel.shmall = 4294967296 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 1579251712 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 = 1048586 [root@l12asm64di Server]$
Após a configuração execute o comando sysctl -p para carregar os parâmetros conforme abaixo:
[root@l12asm64di Server]# sysctl -p net.ipv4.ip_forward = 0 net.ipv4.conf.default.rp_filter = 2 net.ipv4.conf.default.accept_source_route = 0 kernel.sysrq = 0 kernel.core_uses_pid = 1 net.ipv4.tcp_syncookies = 1 kernel.msgmnb = 65536 kernel.msgmax = 65536 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 1579251712 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 = 1048586 [root@l12asm64di Server]#
Vamos configurar os limites para o usuário oracle no arquivo /etc/security/limits.conf para limitar os recursos.
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
[root@l12asm64di Server]# vi /etc/security/limits.conf [root@l12asm64di Server]# cat /etc/security/limits.conf # /etc/security/limits.conf # #Each line describes a limit for a user in the form: # #<domain> <type> <item> <value> # #Where: #<domain> can be: # - an user name # - a group name, with @group syntax # - the wildcard *, for default entry # - the wildcard %, can be also used with %group syntax, # for maxlogin limit # #<type> can have the two values: # - "soft" for enforcing the soft limits # - "hard" for enforcing hard limits # #<item> can be one of the following: # - core - limits the core file size (KB) # - data - max data size (KB) # - fsize - maximum filesize (KB) # - memlock - max locked-in-memory address space (KB) # - nofile - max number of open files # - rss - max resident set size (KB) # - stack - max stack size (KB) # - cpu - max CPU time (MIN) # - nproc - max number of processes # - as - address space limit # - maxlogins - max number of logins for this user # - maxsyslogins - max number of logins on the system # - priority - the priority to run user process with # - locks - max number of file locks the user can hold # - sigpending - max number of pending signals # - msgqueue - max memory used by POSIX message queues (bytes) # - nice - max nice priority allowed to raise to # - rtprio - max realtime priority # #<domain> <type> <item> <value> # #* soft core 0 #* hard rss 10000 #@student hard nproc 20 #@faculty soft nproc 20 #@faculty hard nproc 50 #ftp hard nproc 0 #@student - maxlogins 4 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768 # End of file [root@l12asm64di Server]#
Vamos criar os grupos de usuários, o usuário oracle e colocar uma senha para o mesmo.
Segue abaixo:
[root@l12asm64di Server]# groupadd dba [root@l12asm64di Server]# groupadd oper [root@l12asm64di Server]# groupadd asmadmin [root@l12asm64di Server]# useradd -g dba -G oper,asmadmin oracle [root@l12asm64di Server]# 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. [root@l12asm64di Server]#
Vamos criar os diretórios para a instalação do produto e do Grid para o banco de dados Oracle 12c e garantir os privilégios para o usuário oracle.
[root@l12asm64di Server]# mkdir -p /u01/app/oracle/product/12.1.0/db_1 [root@l12asm64di Server]# mkdir -p /u02/app/oracle/product/12.1.0/grid_1 [root@l12asm64di Server]# chown -R oracle.dba /u01/ /u02/ [root@l12asm64di Server]# chmod -R 775 /u01/ /u02/
Vamos incluir o profile para o usuário oracle no arquivo /etc/profile conforme abaixo:
if [ $USER = “oracle” ]; then
if [ $SHELL = “/bin/ksh” ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
[root@l12asm64di Server]# vi /etc/profile [root@l12asm64di Server]# cat /etc/profile # /etc/profile # System wide environment and startup programs, for login setup # Functions and aliases go in /etc/bashrc pathmunge () { if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then if [ "$2" = "after" ] ; then PATH=$PATH:$1 else PATH=$1:$PATH fi fi } # ksh workaround if [ -z "$EUID" -a -x /usr/bin/id ]; then EUID=`id -u` UID=`id -ru` fi # Path manipulation if [ "$EUID" = "0" ]; then pathmunge /sbin pathmunge /usr/sbin pathmunge /usr/local/sbin fi # No core files by default ulimit -S -c 0 > /dev/null 2>&1 if [ -x /usr/bin/id ]; then USER="`id -un`" LOGNAME=$USER MAIL="/var/spool/mail/$USER" fi HOSTNAME=`/bin/hostname` HISTSIZE=1000 if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then INPUTRC=/etc/inputrc fi export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC # By default, we want umask to get set. This sets it for login shell # Current threshold for system reserved uid/gids is 200 # You could check uidgid reservation validity in # /usr/share/doc/setup-*/uidgid file if [ $UID -gt 99 ] && [ "`id -gn`" = "`id -un`" ]; then umask 002 else umask 022 fi for i in /etc/profile.d/*.sh ; do if [ -r "$i" ]; then if [ "${-#*i}" != "$-" ]; then . $i else . $i >/dev/null 2>&1 fi fi done if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi unset i unset pathmunge [root@l12asm64di Server]#
Incluindo os modulos para gerenciar as sessões dos usuários no arquivo /etc/pam.d/login conforme abaixo:
session required /lib64/security/pam_limits.so
session required pam_limits.so
[root@l12asm64di Server]# cat /etc/pam.d/login #%PAM-1.0 auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so auth include system-auth account required pam_nologin.so account include system-auth password include system-auth # pam_selinux.so close should be the first session rule session required pam_selinux.so close session optional pam_keyinit.so force revoke session required pam_loginuid.so session include system-auth session optional pam_console.so # pam_selinux.so open should only be followed by sessions to be executed in the user context session required pam_selinux.so open session required /lib64/security/pam_limits.so session required pam_limits.so [root@l12asm64di Server]#
Vamos configurar o host do servidor e o resolv.conf para utilizar o servidor DNS para os domínios.
[root@l12asm64di Server]# vi /etc/hosts [root@l12asm64di Server]# vi /etc/resolv.conf [root@l12asm64di Server]# cat /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 192.168.56.40 l12asm64di.localdomain l12asm64di [root@l12asm64di Server]# cat /etc/resolv.conf nameserver 192.168.56.10 [root@l12asm64di Server]#
Obtendo as informações dos registros do servidor de DNS.
[root@l12asm64di Server]# nslookup l12asm64di.localdomain Server: 192.168.56.10 Address: 192.168.56.10#53 Name: l12asm64di.localdomain Address: 192.168.56.40 [root@l12asm64di Server]# nslookup dns.localdomain Server: 192.168.56.10 Address: 192.168.56.10#53 Name: dns.localdomain Address: 192.168.56.10 [root@l12asm64di Server]#
Vamos agora criar as variáveis de ambiente para o usuário Oracle.
Segue o mesmo abaixo:
[root@l12asm64di Server]# vi /etc/ora_ambiente_db.sh [root@l12asm64di Server]# vi /etc/ora_ambiente_grid.sh [root@l12asm64di Server]# cat /etc/ora_ambiente_db.sh umask 022 export ORACLE_UNQNAME=orcl export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1 export ORACLE_SID=orcl export ORACLE_TERM=xterm export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/jdbc/lib:$ORACLE_HOME/ctx/lib:$ORACLE_HOME/rdbms/lib:/usr/dt/lib:/usr/lib:/usr/openwin/lib:/lib export NLS_LANG="AMERICAN_AMERICA.WE8MSWIN1252" export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/plsql/jlib:$ORACLE_HOME/ord/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/owm/jlib:$ORACLE_HOME/jdbc/lib:$ORACLE_HOME/ord/ts/jlib export ORACLE_HOSTNAME=l12asm64di.localdomain export PS1="oracle=$ORACLE_SID-> " [root@l12asm64di Server]# cat /etc/ora_ambiente_grid.sh #!/bin/ksh umask 022 export ORACLE_UNQNAME=+ASM export ORACLE_BASE=/u02/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/grid_1 export ORACLE_SID=+ASM export ORACLE_TERM=xterm export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/jdbc/lib:$ORACLE_HOME/ctx/lib:$ORACLE_HOME/rdbms/lib:/usr/dt/lib:/usr/lib:/usr/openwin/lib:/lib export NLS_LANG="AMERICAN_AMERICA.WE8MSWIN1252" export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/plsql/jlib:$ORACLE_HOME/ord/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/owm/jlib:$ORACLE_HOME/jdbc/lib:$ORACLE_HOME/ord/ts/jlib export ORACLE_HOSTNAME=l12asm64di.localdomain export PS1="oracle=$ORACLE_SID-> " [root@l12asm64di Server]#
Configurando o bash profile com o usuário oracle. Coloque as variáveis para do banco de dados Oracle para a Instância conforme abaixo:
[oracle@l12asm64di ~]$ vi .bash_profile [oracle@l12asm64di ~]$ cat .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/bin export PATH . /etc/ora_ambiente_db.sh [oracle@l12asm64di ~]$ . .bash_profile oracle=orcl->
Com o usuário oracle, vamos descompactar os arquivos do banco de dados Oracle 12c.
Para transferir os arquivos de windows para o linux, use uma ferramenta apropriada. Usei o WinSCP.
Segue os arquivos a serem descompactados:
linuxamd64_12c_grid_1of2.zip
linuxamd64_12c_grid_2of2.zip
linuxamd64_12c_database_1of2.zip
linuxamd64_12c_database_2of2.zip
[oracle@l12asm64di ~]$ cd /u01/medias/ [oracle@l12asm64di medias]$ unzip linuxamd64_12c_grid_1of2.zip Archive: linuxamd64_12c_grid_1of2.zip creating: grid/ creating: grid/response/ inflating: grid/response/grid_install.rsp inflating: grid/runInstaller creating: grid/stage/ creating: grid/stage/properties/ inflating: grid/stage/properties/sPaths.properties inflating: grid/stage/properties/platformInfo.properties inflating: grid/stage/properties/ignoreMessages.txt inflating: grid/stage/properties/ssPaths_linux_ia64.properties inflating: grid/stage/properties/ssPaths_linuxx64.properties inflating: grid/stage/properties/ssPaths_solx86.properties inflating: grid/stage/properties/system.properties inflating: grid/stage/properties/ssPaths_hpuix.properties inflating: grid/stage/properties/ssPaths_aix.properties inflating: grid/stage/properties/userPaths.properties inflating: grid/stage/properties/oracle.crs_Complete.properties inflating: grid/stage/properties/ssh_system.properties inflating: grid/stage/properties/logging_conf.xml inflating: grid/stage/properties/ssPaths_hpi.properties inflating: grid/stage/properties/ssPaths_sol.properties inflating: grid/stage/properties/Paths.properties inflating: grid/stage/properties/ssPaths_linux_zseries64.properties inflating: grid/stage/properties/sshConnectivity-usage.txt inflating: grid/stage/properties/ssPaths_msplats.properties inflating: grid/stage/properties/ssPaths_linux_ppc64.properties inflating: grid/stage/properties/ssPaths_decunix.properties creating: grid/stage/ext/ .... .... inflating: grid/runcluvfy.sh [oracle@l12asm64di medias]$ unzip linuxamd64_12c_grid_2of2.zip Archive: linuxamd64_12c_grid_2of2.zip creating: grid/stage/Components/oracle.has.crs/ creating: grid/stage/Components/oracle.has.crs/12.1.0.1.0/ creating: grid/stage/Components/oracle.has.crs/12.1.0.1.0/1/ creating: grid/stage/Components/oracle.has.crs/12.1.0.1.0/1/DataFiles/ inflating: grid/stage/Components/oracle.has.crs/12.1.0.1.0/1/DataFiles/filegroup50.jar .... .... inflating: grid/install/.oui [oracle@l12asm64di medias]$ unzip linuxamd64_12c_database_1of2.zip Archive: linuxamd64_12c_database_1of2.zip creating: database/ inflating: database/welcome.html creating: database/response/ inflating: database/response/db_install.rsp inflating: database/response/netca.rsp inflating: database/response/dbca.rsp creating: database/sshsetup/ inflating: database/sshsetup/sshUserSetup.sh creating: database/rpm/ .... .... extracting: database/install/addLangs.sh [oracle@l12asm64di medias]$ unzip linuxamd64_12c_database_2of2.zip Archive: linuxamd64_12c_database_2of2.zip inflating: database/install/.oui creating: database/stage/Components/oracle.rdbms.install.seeddb/ creating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/ creating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/ creating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/ inflating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/filegroup2.jar creating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/Expanded/ creating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/Expanded/filegroup1/ inflating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/Expanded/filegroup1/pdbseed.dfb inflating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/Expanded/filegroup1/Seed_Database.ctl inflating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/Expanded/filegroup1/pdbseed.xml inflating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/Expanded/filegroup1/Seed_Database.dfb inflating: database/stage/Components/oracle.rdbms.install.seeddb/12.1.0.1.0/1/DataFiles/filegroup3.jar creating: database/stage/Components/oracle.rdbms.install.seeddb.sample_schema/ .... .... inflating: database/stage/Components/oracle.rdbms/12.1.0.1.0/1/DataFiles/filegroup19.6.1.jar [oracle@l12asm64di medias]$
Pronto já configuramos o Linux para a Instalação do Banco de Dados Oracle 12c.
Maiores informações acesse Oracle Documentation 12c.

Autor: Maycon Tomiasi
Formado em Tecnologia da Informação na FIPP (Faculdade de Informática de Presidente Prudente), Analista DBA Oracle pela Teiko Soluções em Tecnologia da Informação, residente em Blumenau/ SC, Certificado OCP 10g/11g/12c, OCS 11g Implementation, OCE 11g Performance Tuning, OCE 11g RAC & GRID e OPN Specialist. Conhecimentos em PHP.