Differences

This shows you the differences between two versions of the page.

Link to this comparison view

instalando_e_configurando_o_oracle_database_12c_no_oracle_linux_6_pt_br [2019/08/08 15:23] (current)
Line 1: Line 1:
  
 +====== Instalando e Configurando o Oracle Database 12c no Oracle Linux 6 ======
 +
 +  * Obtenha o oracle DataBase 12c em [[http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html|Download Oracle]]
 +  * Obtenha o Oracle Linux 6 em [[https://edelivery.oracle.com/linux|Oracle Linux 6]]
 +
 +Precisamos dos seguintes arquivos:
 +  * **linuxamd64_12c_database_1of2.zip **
 +  * **linuxamd64_12c_database_2of2.zip ** 
 +
 +**O que vamos utilizar:** 
 +  * **SELinux desabilitado**
 +  * **2 discos para um para o SO com 50 GB e um de 100 GB para o banco de dados que vai ficar em /u01:** 
 +  * **Usuário para o banco:** oracle
 +  * **Grupos para o banco:**
 +    * oinstall
 +    * dba
 +    * oper
 +
 +**Vou levar em consideração que o Oracle Linux 6 está instalado e com o ambiente gráfico.**
 +
 +Informações da máquina:
 +    * IP: 192.168.1.50/24
 +    * Nome: ol6
 +    * Domínio: douglasqsantos.com.br
 +    * RAM: 2048 MB
 +    * SWAP: 4096 MB
 +    * Disco1: 50 GB
 +    * Disco2: 100 GB
 +
 +Vamos ajustar o nome da máquina
 +<sxh bash>
 +vim /etc/hosts
 +127.0.0.1   ol6.douglasqsantos.com.br ol6 localhost.localdomain localhost
 +::1             localhost6.localdomain6 localhost6
 +192.168.1.50 ol6.douglasqsantos.com.br ol6
 +</sxh>
 +
 +Vamos atualizar o sistema
 +<sxh bash>
 +yum update -y
 +</sxh>
 +
 +Vamos desabilitar o Firewall ipv4
 +<sxh bash>
 +/etc/init.d/iptables stop
 +chkconfig --del iptables
 +</sxh>
 +
 +Vamos desabilitar o Firewall ipv6
 +<sxh bash>
 +/etc/init.d/ip6tables stop
 +chkconfig --del ip6tables
 +</sxh>
 +
 +Agora vamos ajustar o selinux
 +<sxh bash>
 +vim /etc/selinux/config
 +[...]
 +SELINUX=permissive
 +</sxh>
 +
 +O Oracle Linux 6 já vem com o repositório public-yum-ol6.repo caso você não tenha pode obter em http://public-yum.oracle.com
 +
 +Vamos instalar as depêndências do Oracle 12c
 +<sxh bash>
 +yum install oracle-rdbms-server-12cR1-preinstall -y
 +</sxh>
 +
 +Agora vamos ajustar o sysctl.conf geralmente com a instalação do oracle-rdbms a variável kernel.shmall vem com valor errado dai temos que ajustar ela para 1073741824, as variáveis que precisamos ajustar estão abaixo.
 +<sxh bash>
 +vim /etc/sysctl.conf
 +[...]
 +# Controls the default maxmimum size of a mesage queue
 +kernel.msgmnb = 65536
 +
 +# Controls the maximum size of a message, in bytes
 +kernel.msgmax = 65536
 +
 +# Controls the maximum shared segment size, in bytes
 +
 +# Controls the maximum number of shared memory segments, in pages
 +kernel.shmall = 1073741824
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for fs.file-max is 6815744
 +fs.file-max = 6815744
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for kernel.sem is '250 32000 100 128'
 +kernel.sem = 250 32000 100 128
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for kernel.shmmni is 4096
 +kernel.shmmni = 4096
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for kernel.shmall is 1073741824 on x86_64
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for kernel.shmmax is 4398046511104 on x86_64
 +kernel.shmmax = 4398046511104
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for net.core.rmem_default is 262144
 +net.core.rmem_default = 262144
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for net.core.rmem_max is 4194304
 +net.core.rmem_max = 4194304
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for net.core.wmem_default is 262144
 +net.core.wmem_default = 262144
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for net.core.wmem_max is 1048576
 +net.core.wmem_max = 1048576
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for fs.aio-max-nr is 1048576
 +fs.aio-max-nr = 1048576
 +
 +# oracle-rdbms-server-12cR1-preinstall setting for net.ipv4.ip_local_port_range is 9000 65500
 +net.ipv4.ip_local_port_range = 9000 65500
 +</sxh>
 +
 +Agora vamos ajustar o limits.conf
 +<sxh bash>
 +vim /etc/security/limits.conf
 +[...]
 +#Inserir no final do arquivo
 +oracle   soft   nofile    1024
 +oracle   hard   nofile    65536
 +oracle   soft   nproc    2047
 +oracle   hard   nproc    16384
 +oracle   soft   stack    10240
 +oracle   hard   stack    32768
 +</sxh>
 +
 +Agora vamos adicionar um ultimo grupo que é um pre-requisito opcional do oracle
 +<sxh bash>
 +groupadd -g 54323 oper
 +</sxh>
 +
 +Agora vamos ajustar o oracle
 +<sxh bash>
 +usermod -u 54321 -g oinstall -G dba,oper oracle
 +</sxh>
 +
 +Agora vamos definir uma senha para o nosso usuário oracle
 +<sxh bash>
 +passwd oracle
 +</sxh>
 +
 +Agora vamos editar mais um arquivo de controle
 +<sxh bash>
 +vim /etc/security/limits.d/90-nproc.conf
 +[...]
 +#*          soft    nproc     1024
 +*            -        nproc     16384
 +root       soft    nproc     unlimited
 +</sxh>
 +
 +Agora vamos criar o diretório base do oracle e vamos ajustar as permissões
 +<sxh bash>
 +mkdir -p /u01/app/oracle/product/12.1.0/db_1
 +chown -R oracle:oinstall /u01
 +chmod -R 775 /u01
 +</sxh>
 +
 +Agora vamos instalar um facilitador de linha de comando o rlwrap
 +<sxh bash>
 +rpm -Uvh http://wiki.douglasqsantos.com.br/Downloads/Oracle/rlwrap-0.37-1.el6.x86_64.rpm
 +</sxh>
 +
 +Agora vamos ajustar o .bash_profile do usuário oracle
 +<sxh bash>
 +vim /home/oracle/.bash_profile
 +# .bash_profile
 +
 +    PS1='\[\033[01;31m\][\[\033[01;37m\]\t\[\033[01;31m\]] \[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$ '
 + 
 +    alias ls='ls --color=auto'
 +    alias dir='dir --color=auto'
 +    alias vdir='vdir --color=auto'
 + 
 +    alias grep='grep --color=auto'
 +    alias fgrep='fgrep --color=auto'
 +    alias egrep='egrep --color=auto'
 +    alias sqlplus='rlwrap sqlplus'
 +    alias rman='rlwrap rman'
 + 
 +# some more ls aliases
 +alias ll='ls -alF'
 +alias la='ls -A'
 +alias l='ls -CF'
 + 
 +export EDITOR=vim
 +export HISTTIMEFORMAT="%h/%d - %H:%M:%S "
 + 
 + 
 +# Source global definitions
 +if [ -f /etc/bashrc ]; then
 +        . /etc/bashrc
 +fi
 + 
 +mesg y
 +
 +# Oracle Settings
 +export TMP=/tmp
 +export TMPDIR=$TMP
 +
 +export ORACLE_HOSTNAME=ol6.douglasqsantos.com.br
 +export ORACLE_UNQNAME=douglas
 +export ORACLE_BASE=/u01/app/oracle
 +export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1
 +export ORACLE_SID=douglas
 +
 +export PATH=/usr/sbin:$PATH
 +export PATH=$ORACLE_HOME/bin:$PATH
 +
 +export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
 +export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
 +</sxh>
 +
 +Agora vamos acertar as permissões do diretório que esta armazenando os arquivos do oracle, eu estou levando em consideração que os arquivos estão em /u01/stage
 +<sxh bash>
 +chown -R oracle:oinstall /u01/stage
 +</sxh>
 +
 +Agora vamos desempacotar os arquivos
 +<sxh bash>
 +unzip linuxamd64_12c_database_1of2.zip
 +unzip linuxamd64_12c_database_2of2.zip
 +</sxh>
 +
 +Agora vamos ajustar as permissões dos arquivos considerando que os arquivos fontes estão em /stage
 +<sxh bash>
 +chown -R oracle:oinstall /u01/stage
 +</sxh>
 +
 +Agora vamos reiniciar o servidor para ele reconher as novas configurações
 +<sxh bash>
 +reboot
 +</sxh>
 +
 +Agora logue novamente no servidor com o usuário oracle.
 +
 +Caso esteja utilizando uma sessão via SSH de outra máquina Linux com ambiente gráfico mande exportar habilitar o XForward da seguinte forma
 +<sxh bash>
 +ssh -X oracle@192.168.1.50
 +</sxh>
 +
 +Agora vamos chamar o instalador do Oracle.
 +<sxh bash>
 +/u01/stage/database/runInstaller
 +</sxh>
 +
 +Aqui na primeira tela da instalação vamos ser questionados se queremos receber notificações sobre atualizações não vamos selecionar nada e vamos selecionar Next
 +
 +{{:ol6i01.png?500|}}
 +
 +
 +Agora vamos ser alertados que não vamos receber as notificações de segurança selecine yes para continuar.
 +
 +{{:ol6i02.png?500|}}
 +
 +Aqui nesta próxima tela vamos deixar marcado skip software updates e vamos selecionar Next
 +
 +{{:ol6i03.png?500|}}
 +
 +Agora precisamos especificar o tipo da nossa instalação vamos selecionar Install database software only pois vamos criar o banco de dados depois e selecione Next
 +
 +{{:ol6i4.png?500|}}
 +
 +Agora vamos ser questionados sobre como que vai ser a nossa instalação, como vamos fazer uma instalação simples sem RAC vamos deixar seleciona a primeira opção e vamos selecionar Next
 +
 +{{:ol6i05.png?500|}}
 +
 +Agora podemos selecionar os idiomas suportados pelo Oracle, eu vou deixar somente o English mais caso tenha clientes que utilizem o padrão português é bom adicionar o idioma português e selecione Next.
 +
 +{{:ol6i06.png?500|}}
 +
 +Agora podemos selecionar qual a versão do banco de dados que queremos instalar note que os tamanhos são bem diferentes da versão 11G que era 4.29GB a Enterprise e 4.22GB a Standard e selecione Next.
 +
 +{{:ol6i07.png?500|}}
 +
 +Como setamos as variáveis de ambiente o oracle já conseguiu mapear a localização do Oracle base e já mapeou a instalação que é o ORACLE_HOME e selecione Next
 +
 +{{:ol6i08.png?500|}}
 +
 +Agora vamos ter a questão da instalação dos metadados do oracle vamos deixar o padrão e vamos selecionar Next.
 +
 +{{:ol6i09.png?500|}}
 +
 +Agora o oracle vai fazer o mapeamento dos grupos necessários para ele trabalhar, como já criamos todos como pré-requisitos agora vamos selecionar Next
 +
 +{{:ol6i10.png?500|}}
 +
 +O oracle vai fazer a checagem dos pré-requisitos se nada der errado vamos ter a tela abaixo, caso tenha algum problema com por exemplo quantidade de swap corrija o problema ou selecione Ignore All para ignorar os pré-requisitos porém isso não é uma boa prática e pode comprometer a estabilidade do sistema.
 +
 +Agora precisamos somente selecionar Install
 +
 +{{:ol6i11.png?500|}}
 +
 +Agora o sistema vai efetar a instalação dos arquivos necessários, isso pode demorar um pouco em uma VM, e mais ainda dependendo da velocidade do disco, em ambientes de produção tente sempre utilizar storage com discos no mínimo de 15K para não ter lentidão no I/O do Banco.
 +
 +{{:ol6i12.png?500|}}
 +
 +Assim que acabar a copia dos dados vamos ter um aviso para executar 2 scripts 
 +
 +{{:ol6i13.png?500|}}
 +
 +Agora abra uma sessão no servidor com o usuário root e vamos mandar executar o primeiro script
 +<sxh bash>
 +/u01/app/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.
 +</sxh>
 +
 +Agora vamos executar o segundo script
 +<sxh bash>
 +/u01/app/oracle/product/12.1.0/db_1/root.sh 
 +Performing root user operation for Oracle 12c 
 +
 +The following environment variables are set as:
 +    ORACLE_OWNER= oracle
 +    ORACLE_HOME=  /u01/app/oracle/product/12.1.0/db_1
 +
 +Enter the full pathname of the local bin directory: [/usr/local/bin]: #ENTER
 +   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.
 +</sxh>
 +
 +Agora podemos selecionar OK na tela de aviso dos scripts
 +
 +Se tudo correu bem agora temos a seguinte tela, aqui precisamos somente selecionar Close
 +
 +{{:ol6i14.png?500|}}
 +
 +Agora vamos criar um banco de dados.
 +
 +Logando com o usuário oracle execute
 +<sxh bash>
 +dbca
 +</sxh>
 +
 +Quando ele carregar vamos ter a seguinte tela aqui vamos deixar selecionado Create database e vamos selecionar Next
 +
 +{{:ol6i15.png?500|}}
 +
 +Agora vamos informar o nome para o nosso banco de dados ex: douglas, precisamos informar a senha para o sys do banco e o pluggable Database Name que é um novo recurso do Oracle para consolidação de multiplos bancos em um único banco e depois selecione Next
 +
 +{{:ol6i16.png?500|}}
 +
 +Se tudo ocorreu bem vamos ter a seguinte tela aqui precisamos somente selecionar Finish para ser efetuada a criação do banco
 +
 +{{:ol6i17.png?500|}}
 +
 +Agora nos vamos ter a criação do banco este processo é meio demorado comparado ao 11G
 +
 +{{:ol6i18.png?500|}}
 +
 +Agora vamos ter uma tela com as informações sobre SID, localização do spfile e o global database name e o endereço do Enterprise Manager, aqui vamos selecionar Exit
 +
 +{{:ol6i19.png?500|}}
 +
 +Agora que acabou a instalação vamos selecionar Close
 +
 +{{:ol6i20.png?500|}}
 +
 +Agora vamos consultar o listener
 +<sxh bash>
 +lsnrctl status
 +
 +LSNRCTL for Linux: Version 12.1.0.1.0 - Production on 07-NOV-2013 21:42:54
 +
 +Copyright (c) 1991, 2013, Oracle.  All rights reserved.
 +
 +Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
 +TNS-12541: TNS:no listener
 + TNS-12560: TNS:protocol adapter error
 +  TNS-00511: No listener
 +   Linux Error: 111: Connection refused
 +</sxh>
 +
 +Como podemos notar ele esta down, vamos inicializar ele
 +<sxh bash>
 +lsnrctl start
 +
 +LSNRCTL for Linux: Version 12.1.0.1.0 - Production on 07-NOV-2013 21:44:01
 +
 +Copyright (c) 1991, 2013, Oracle.  All rights reserved.
 +
 +Starting /u01/app/oracle/product/12.1.0/db_1/bin/tnslsnr: please wait...
 +
 +TNSLSNR for Linux: Version 12.1.0.1.0 - Production
 +Log messages written to /u01/app/oracle/diag/tnslsnr/ol6/listener/alert/log.xml
 +Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol6.douglasqsantos.com.br)(PORT=1521)))
 +
 +Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
 +STATUS of the LISTENER
 +------------------------
 +Alias                     LISTENER
 +Version                   TNSLSNR for Linux: Version 12.1.0.1.0 - Production
 +Start Date                07-NOV-2013 21:44:01
 +Uptime                    0 days 0 hr. 0 min. 0 sec
 +Trace Level               off
 +Security                  ON: Local OS Authentication
 +SNMP                      OFF
 +Listener Log File         /u01/app/oracle/diag/tnslsnr/ol6/listener/alert/log.xml
 +Listening Endpoints Summary...
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol6.douglasqsantos.com.br)(PORT=1521)))
 +The listener supports no services
 +The command completed successfully
 +</sxh>
 +
 +Agora vamos consultar o nosso listener
 +<sxh bash>
 +lsnrctl status
 +
 +LSNRCTL for Linux: Version 12.1.0.1.0 - Production on 07-NOV-2013 21:44:49
 +
 +Copyright (c) 1991, 2013, Oracle.  All rights reserved.
 +
 +Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
 +STATUS of the LISTENER
 +------------------------
 +Alias                     LISTENER
 +Version                   TNSLSNR for Linux: Version 12.1.0.1.0 - Production
 +Start Date                07-NOV-2013 21:44:01
 +Uptime                    0 days 0 hr. 0 min. 47 sec
 +Trace Level               off
 +Security                  ON: Local OS Authentication
 +SNMP                      OFF
 +Listener Log File         /u01/app/oracle/diag/tnslsnr/ol6/listener/alert/log.xml
 +Listening Endpoints Summary...
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol6.douglasqsantos.com.br)(PORT=1521)))
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=ol6.douglasqsantos.com.br)(PORT=5500))(Security=(my_wallet_directory=/u01/app/oracle/admin/douglas/xdb_wallet))(Presentation=HTTP)(Session=RAW))
 +Services Summary...
 +Service "douglas" has 1 instance(s).
 +  Instance "douglas", status READY, has 1 handler(s) for this service...
 +Service "douglasXDB" has 1 instance(s).
 +  Instance "douglas", status READY, has 1 handler(s) for this service...
 +Service "pdouglas" has 1 instance(s).
 +  Instance "douglas", status READY, has 1 handler(s) for this service...
 +The command completed successfully
 +</sxh>
 +
 +Agora o nosso listener está escutando ok
 +
 +Agora vamos subir o nosso banco
 +
 +Agora vamos acessar o Enterprise Manager em https://ol6.douglasqsantos.com.br:5500/em ou pelo endereço ip https://192.168.1.50:5500/em vamos ter algo como abaixo aqui podemos logar com o sys e marcar as sysdba e informar a senha que definimos na criação do banco de dados.
 +
 +{{:ol6i21.png?500|}}
 +
 +Depois de logar vamos ter uma tela como a seguinte.
 +
 +{{:ol6i22.png?700|}}
 +
 +Na parte superior temos Configuration, Storage, Security e Performance do lado superior direito podemos selecionar o tempo do nosso auto refresh.
 +
 +Em Configuration selecione Initialization Parameters vamos ter a seguinte tela, temos todos os parametros de inicialização do banco e podemos editar tudo via EM.
 +
 +{{:ol6i23.png?700|}}
 +
 +Na aba SPFile temos as opções do arquivo SPFile como abaixo.
 +
 +{{:ol6i24.png?700|}}
 +
 +Agora em Configuration selecione Memory e vamos ter a seguinte tela, ficou muito melhor do que a versão 11g
 +
 +{{:ol6i25.png?700|}}
 +
 +Agora se selecionarmos configure memory podemos editar os parametros de memória.
 +
 +{{:ol6i26.png?700|}}
 +
 +Na aba SPFile temos a configuração da memória do SPFile
 +
 +{{:ol6i27.png?700|}}
 +
 +Em Configuration selecione Database Feature usage, como não temos nada ainda no banco essas informações estão vazias.
 +
 +{{:ol6i28.png?700|}}
 +
 +Na guia High Water Marks ainda não temos dados tambem
 +
 +{{:ol6i29.png?700|}}
 +
 +Em configution selecione Current Database Properties aqui vamos ter os valores setados para o nosso banco.
 +
 +{{:ol6i30.png?700|}}
 +
 +Em Storage selecione Undo Management Details, aqui vamos ter informações sobre a Undo
 +
 +{{:ol6i31.png?700|}}
 +
 +Em Storage selecione Redo Log Groups, aqui vamos ter informações sobre o Redo
 +
 +{{:ol6i32.png?700|}}
 +
 +Em Storage selecione Archive logs, como o banco não esta em modo de archive log não temos dados aqui ainda.
 +
 +{{:ol6i33.png?700|}}
 +
 +Em storage selecione Control file, aqui vamos ter informações sobre o nosso control file.
 +
 +{{:ol6i34.png?700|}}
 +
 +Agora em Security selecione Users, aqui vamos ter todos os usuários criados no sistema, porém nem todos estão habilitados.
 +
 +{{:ol6i35.png?700|}}
 +
 +Agora em Security selecione Roles, aqui vamos ter a opção da criação de roles para o controle dos usuários.
 +
 +Agora em Performance selecione Performance Hub vamos ter a seguinte tela com vários tipos de gráficos sobre o sistema
 +
 +{{:ol6i36.png?700|}}
 +
 +Se selecionar a aba atividade vamos ter algo como abaixo.
 +
 +{{:ol6i37.png?700|}}
 +
 +Se selecionar a aba workload vamos ter algo como abaixo.
 +
 +{{:ol6i38.png?700|}}
 +
 +Se selecionar a aba Monitored SQL vamos ter algo como abaixo, no meu caso vazio pois não tenho nada rodando.
 +
 +{{:ol6i39.png?700|}}
 +
 +Se selecionar a aba ADDM vamos ter algo como abaixo, no meu caso sem dados.
 +
 +{{:ol6i40.png?700|}}
 +
 +Se selecionar a aba Current ADDM Findings vamos ter algo como abaixo, no meu caso sem muitos dados.
 +
 +{{:ol6i41.png?700|}}
 +
 +Agora selecione Performance e SQL Tuning Advisor vamos ter algo como abaixo no meu caso sem muitos dados.
 +
 +{{:ol6i42.png?700|}}
 +
 +Se selecionar a aba Manual vamos ter algo como abaixo.
 +
 +{{:ol6i43.png?700|}}
 +
 +Esse é EM galera, agora vamos criar o script para colocar o nosso banco na inicialização do sistema.
 +
 +
 +<sxh bash>
 +vim /etc/init.d/dbora
 +#!/bin/sh
 +# chkconfig: 345 99 10
 +# description: Oracle auto start-stop script.
 +#
 +# Set ORA_HOME to be equivalent to the $ORACLE_HOME
 +# from which you wish to execute dbstart and dbshut;
 +#
 +# Set ORA_OWNER to the user id of the owner of the 
 +# Oracle database in ORA_HOME.
 +
 +ORA_HOME=/u01/app/oracle/product/12.1.0/db_1
 +ORA_OWNER=oracle
 +export ORACLE_UNQNAME=douglas
 +
 +if [ ! -f $ORA_HOME/bin/dbstart ]
 +then
 +    echo "Oracle startup: cannot start"
 +    exit
 +fi
 +
 +case "$1" in
 +    'start')
 +        # Start the Oracle databases:
 +        # The following command assumes that the oracle login 
 +        # will not prompt the user for any values
 +        # Remove "&" if you don't want startup as a background process.
 +        su $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME" &
 +        touch /var/lock/subsys/dbora
 +        ;;
 +    'stop')
 +        # Stop the Oracle databases:
 +        # The following command assumes that the oracle login 
 +        # will not prompt the user for any values
 +        su $ORA_OWNER -c "$ORA_HOME/bin/dbshut $ORA_HOME"
 +        rm -f /var/lock/subsys/dbora
 +        ;;
 +esac
 +</sxh>
 +
 +Agora vamos dar permissão para o nosso script
 +<sxh bash>
 +chmod 750 /etc/init.d/dbora
 +</sxh>
 +
 +Agora vamos inserir ele na inicialização
 +<sxh bash>
 +chkconfig --add dbora
 +</sxh>
 +
 +Agora vamos habilitar o nosso banco, aqui temos que mudar o N no final do caminho do nosso banco para Y como abaixo
 +<sxh bash>
 +vim /etc/oratab 
 +#
 +
 +
 +
 +# This file is used by ORACLE utilities.  It is created by root.sh
 +# and updated by either Database Configuration Assistant while creating
 +# a database or ASM Configuration Assistant while creating ASM instance.
 +
 +# A colon, ':', is used as the field terminator.  A new line terminates
 +# the entry.  Lines beginning with a pound sign, '#', are comments.
 +#
 +# Entries are of the form:
 +#   $ORACLE_SID:$ORACLE_HOME:<N|Y>:
 +#
 +# The first and second fields are the system identifier and home
 +# directory of the database respectively.  The third field indicates
 +# to the dbstart utility that the database should , "Y", or should not,
 +# "N", be brought up at system boot time.
 +#
 +# Multiple entries with the same $ORACLE_SID are not allowed.
 +#
 +#
 +douglas:/u01/app/oracle/product/12.1.0/db_1:Y
 +</sxh>
 +
 +Agora vamos reiniciar o servidor para testar a inicialização junto com o sistema
 +<sxh bash>
 +reboot
 +</sxh>
 +
 +Após logar novamente no sistema vamos consultar o listener
 +<sxh bash>
 +lsnrctl status
 +
 +LSNRCTL for Linux: Version 12.1.0.1.0 - Production on 07-NOV-2013 22:41:00
 +
 +Copyright (c) 1991, 2013, Oracle.  All rights reserved.
 +
 +Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
 +STATUS of the LISTENER
 +------------------------
 +Alias                     LISTENER
 +Version                   TNSLSNR for Linux: Version 12.1.0.1.0 - Production
 +Start Date                07-NOV-2013 22:40:40
 +Uptime                    0 days 0 hr. 0 min. 20 sec
 +Trace Level               off
 +Security                  ON: Local OS Authentication
 +SNMP                      OFF
 +Listener Log File         /u01/app/oracle/diag/tnslsnr/ol6/listener/alert/log.xml
 +Listening Endpoints Summary...
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol6.douglasqsantos.com.br)(PORT=1521)))
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=ol6.douglasqsantos.com.br)(PORT=5500))(Security=(my_wallet_directory=/u01/app/oracle/product/12.1.0/db_1/admin/douglas/xdb_wallet))(Presentation=HTTP)(Session=RAW))
 +Services Summary...
 +Service "douglas" has 1 instance(s).
 +  Instance "douglas", status READY, has 1 handler(s) for this service...
 +Service "douglasXDB" has 1 instance(s).
 +  Instance "douglas", status READY, has 1 handler(s) for this service...
 +Service "pdouglas" has 1 instance(s).
 +  Instance "douglas", status READY, has 1 handler(s) for this service...
 +The command completed successfully
 +</sxh>
 +
 +Que coisa mais linda ta tudo funcionando.
 +
 +====== Referências ======
 +  - http://docs.oracle.com/cd/E11882_01/server.112/e10839/strt_stp.htm#UNXAR148
 +  - http://docs.oracle.com/cd/E16655_01/install.121/e17720/toc.htm