Differences

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

Link to this comparison view

instalando_e_configurando_o_oracle_database_11g_no_centos_5.9_pt_br [2017/09/05 12:18] (current)
Line 1: Line 1:
 +====== Instalando e Configurando o Oracle DataBase 11G no CentOS 5.9 ======
  
 +
 +  * Obtenha o oracle grid e o oracle DataBase em [[http://​www.oracle.com/​technetwork/​database/​enterprise-edition/​downloads/​112010-linx8664soft-100572.html|Download Oracle]]
 +  * Obtenha o CentOS 5.9 em [[http://​mirror.globo.com/​centos/​5.9/​isos/​x86_64/​|CentOS 5.9]]
 +
 +Precisamos dos seguintes arquivos:
 +  * **linux.x64_11gR2_database_1of2.zip**
 +  * **linux.x64_11gR2_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 CentOS 5.9 está instalado e com o ambiente gráfico.**
 +
 +Informações da máquina:
 +    * IP: 192.168.25.35/​24
 +    * Nome: oracle
 +    * Domínio: douglasqsantos.com.br
 +
 +Vamos ajustar o nome da máquina
 +<sxh bash>
 +vim /etc/hosts
 +127.0.0.1 ​      ​oracle.lab.lan oracle localhost.localdomain localhost
 +::1             ​localhost6.localdomain6 localhost6
 +192.168.25.35 ​   oracle.douglasqsantos.com.br oracle
 +</​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>​
 +
 +Vamos instalar as dependências do Oracle
 +<sxh bash>
 +yum install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ \
 +libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh -y
 +</​sxh>​
 +
 +Agora vamos preparar o disco para o /u01
 +<sxh bash>
 +fdisk /dev/sdb
 +Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
 +Building a new DOS disklabel. Changes will remain in memory only,
 +until you decide to write them. After that, of course, the previous
 +content won't be recoverable.
 +
 +
 +The number of cylinders for this disk is set to 13054.
 +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)
 +Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
 +
 +Command (m for help): n
 +Command action
 +   ​e ​  ​extended
 +   ​p ​  ​primary partition (1-4)
 +p
 +Partition number (1-4): 1
 +First cylinder (1-13054, default 1): 
 +Using default value 1
 +Last cylinder or +size or +sizeM or +sizeK (1-13054, default 13054): ​
 +Using default value 13054
 +
 +Command (m for help): w
 +The partition table has been altered!
 +
 +Calling ioctl() to re-read partition table.
 +Syncing disks.
 +</​sxh>​
 +
 +Agora vamos criar um sistema de arquivos para a nossa partição
 +<sxh bash>
 +mkfs.ext3 /dev/sdb1
 +mke2fs 1.39 (29-May-2006)
 +Filesystem label=
 +OS type: Linux
 +Block size=4096 (log=2)
 +Fragment size=4096 (log=2)
 +13107200 inodes, 26214055 blocks
 +1310702 blocks (5.00%) reserved for the super user
 +First data block=0
 +Maximum filesystem blocks=4294967296
 +800 block groups
 +32768 blocks per group, 32768 fragments per group
 +16384 inodes per group
 +Superblock backups stored on blocks: ​
 +  32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, ​
 +  4096000, 7962624, 11239424, 20480000, 23887872
 +
 +Writing inode tables: done                            ​
 +Creating journal (32768 blocks): done
 +Writing superblocks and filesystem accounting information:​ done
 +
 +This filesystem will be automatically checked every 26 mounts or
 +180 days, whichever comes first. ​ Use tune2fs -c or -i to override.
 +</​sxh>​
 +
 +
 +Agora vamos criar o /u01
 +<sxh bash>
 +mkdir /u01
 +</​sxh>​
 +
 +Agora vamos montar essa partição
 +<sxh bash>
 +mount /dev/sdb1 /u01
 +</​sxh>​
 +
 +Agora vamos listar as nossas partições montadas
 +<sxh bash>
 +mount  | egrep sdb1
 +/dev/sdb1 on /u01 type ext3 (rw)
 +</​sxh>​
 +
 +Ela foi montada com sucesso, agora vamos inserir ela na inicialização do nosso sistema
 +<sxh bash>
 +vim /etc/fstab
 +[...]
 +/​dev/​sdb1 ​              /​u01 ​                   ext3    defaults,​noatime 0 0
 +</​sxh>​
 +
 +Agora vamos confirmar se a nossa configuração do fstab está ok
 +<sxh bash>
 +mount -a
 +</​sxh>​
 +Aqui não podemos receber nenhum aviso, caso isso aconteça a configuração está ok, caso tenha algum aviso revise a configuração.
 +
 +Agora vamos criar os grupos para o oracle
 +<sxh bash>
 +groupadd oinstall
 +groupadd dba
 +groupadd oper
 +</​sxh>​
 +
 +Agora vamos criar os diretórios para armazenar o Grid e o DataBase
 +<sxh bash>
 +mkdir -p /​u01/​app/​oracle
 +mkdir -p /​u01/​app/​oracle/​product/​11.2.0/​grid
 +mkdir -p /​u01/​app/​oraInventory
 +</​sxh>​
 +
 +Agora vamos criar o usuário oracle
 +<sxh bash>
 +useradd -g oinstall -G dba,oper -m oracle
 +</​sxh>​
 +
 +Defina uma senha para o usuário oracle
 +<sxh bash>
 +passwd oracle
 +</​sxh>​
 +
 +Agora vamos ajustar as permissões dos diretórios
 +<sxh bash>
 +chown -R oracle:​oinstall /u01
 +chmod -R 775 /u01
 +</​sxh>​
 +
 +Agora vamos criar o diretório que vai conter os fontes do Oracle
 +<sxh bash>
 +mkdir /stage/
 +</​sxh>​
 +
 +Agora vamos mover os fontes para o /stage
 +<sxh bash>
 +mv linux.x64_11gR2_*.zip /stage
 +</​sxh>​
 +
 +Agora vamos ajustar as permissões dos fontes
 +<sxh bash>
 +chown -R oracle:dba /stage
 +chmod -R 775 /stage
 +</​sxh>​
 +
 +
 +Agora vamos ajustar as variáveis do kernel
 +<sxh bash>
 +vim /​etc/​sysctl.conf
 +[...]
 +#Inserir no final do arquivo
 +fs.suid_dumpable = 1
 +fs.aio-max-nr = 1048576
 +fs.file-max = 6815744
 +kernel.shmall = 2097152
 +kernel.shmmax = 536870912
 +kernel.shmmni = 4096
 +# semaphores: semmsl, semmns, semopm, semmni
 +kernel.sem = 250 32000 100 128
 +net.ipv4.ip_local_port_range = 9000 65500
 +net.core.rmem_default=4194304
 +net.core.rmem_max=4194304
 +net.core.wmem_default=262144
 +net.core.wmem_max=1048586
 +</​sxh>​
 +
 +Agora vamos carregar as variáveis para o kernel
 +<sxh bash>
 +sysctl -p
 +</​sxh>​
 +Agora vamos ajustar os limits para o usuário oracle
 +<sxh bash>
 +vim /​etc/​security/​limits.conf
 +[...]
 +#Inserir no final do arquivo
 +oracle ​             soft    nproc   2047
 +oracle ​             hard    nproc   16384
 +oracle ​             soft    nofile ​ 4096
 +oracle ​             hard    nofile ​ 65536
 +oracle ​             soft    stack   10240
 +</​sxh>​
 +
 +Agora vamos inserir no arquivo de login da pam o controle de limits
 +<sxh bash>
 +vim /​etc/​pam.d/​login
 +#No final do arquivo
 +session ​   required ​    ​pam_limits.so
 +</​sxh>​
 +
 +Agora vamos acertar as variáveis de ambiente do oracle
 +<sxh bash>
 +vim /​home/​oracle/​.bash_profile
 +
 +# Inserir no fim do arquivo
 +TMP=/tmp; export TMP
 +TMPDIR=$TMP;​ export TMPDIR
 +
 +ORACLE_HOSTNAME=oracle.douglasqsantos.com.br;​ export ORACLE_HOSTNAME
 +ORACLE_UNQNAME=DB11G;​ export ORACLE_UNQNAME
 +ORACLE_BASE=/​u01/​app/​oracle;​ export ORACLE_BASE
 +ORACLE_HOME=$ORACLE_BASE/​product/​11.2.0/​dbhome_1;​ export ORACLE_HOME
 +ORACLE_SID=DB11G;​ export ORACLE_SID
 +PATH=/​usr/​sbin:​$PATH;​ export PATH
 +PATH=$ORACLE_HOME/​bin:​$PATH;​ export PATH
 +
 +LD_LIBRARY_PATH=$ORACLE_HOME/​lib:/​lib:/​usr/​lib;​ export LD_LIBRARY_PATH
 +CLASSPATH=$ORACLE_HOME/​jlib:​$ORACLE_HOME/​rdbms/​jlib;​ export CLASSPATH
 +</​sxh>​
 +
 +Agora que o sistema já está ok vamos fazer a instalação do Banco de Dados.
 +
 +Vamos acessar o diretório que contém os fontes com o usuário oracle
 +<sxh bash>
 +source ​ /​home/​oracle/​.bash_profile
 +cd /stage
 +</​sxh>​
 +
 +Agora vamos descompactar eles
 +<sxh bash>
 +unzip linux.x64_11gR2_database_1of2.zip
 +unzip linux.x64_11gR2_database_2of2.zip
 +</​sxh>​
 +
 +Agora vamos acessar o diretório database
 +<sxh bash>
 +cd database
 +</​sxh>​
 +
 +
 +Agora vamos chamar o executável para a instalação
 +<sxh bash>
 +./​runInstaller
 +</​sxh>​
 +
 +Agora vamos ter uma tela como abaixo
 +
 +{{:​centos59wg01.png?​700|}}
 +
 +Aqui selecione Próximo vamos ter um aviso como abaixo ,que não vamos receber informações sobre segurança do banco
 +
 +{{:​centos59wg02.png?​700|}}
 +
 +Aqui vamos selecionar Yes
 +
 +Agora vamos selecionar **Install database software only** e vamos selecionar Next
 +
 +{{:​centos59wg03.png?​700|}}
 +
 +Agora precisamos selecionar o tipo de instalação do banco: **Single instance database installation** e vamos selecionar Next
 +
 +{{:​centos59wg04.png?​700|}}
 +
 +Agora precisamos selecionar os idiomas deixe sempre o Inglês primeiro e depois outros idiomas adicionais caso necessário e selecione Next.
 +
 +{{:​centos59wg05.png?​700|}}
 +
 +Agora precisamos selecionar qual edição do banco vamos instalar selecione a que você adquiriu a licença :D e selecione Next
 +
 +{{:​centos59wg06.png?​700|}}
 +
 +Agora podemos selecionar a  Oracle base e a Software location eu vou deixar o padrão e vamos selecionar Next
 +
 +{{:​centos59wg07.png?​700|}}
 +
 +Agora vamos ter a configuração do diretório que vai armazenar os arquivos de instalação vamos deixar o padrão e vamos selecionar Next
 +
 +{{:​centos59wg08.png?​700|}}
 +
 +Agora vamos ter os grupos de operação do banco vamos deixar o padrão e vamos selecionar Next
 +
 +{{:​centos59grid24.png?​700|}}
 +
 +Como pode ser notados todos os pré-requisitos estão ok com isso é só mandar instalar selecionar Finish
 +
 +{{:​centos59wg10.png?​700|}}
 +
 +Agora vamos ter o processo de instalação do banco
 +
 +{{:​centos59wg11.png?​700|}}
 +
 +Quando terminar a copia vamos ter a seguinte mensagem
 +
 +{{:​centos59wg12.png?​700|}}
 +
 +Aqui precisamos rodar os scripts com o usuário root
 +<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 rodar o segundo script
 +<sxh bash>
 + /​u01/​app/​oracle/​product/​11.2.0/​dbhome_1/​root.sh ​
 +Running Oracle 11g root.sh script...
 +
 +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.sh script.
 +Now product-specific root actions will be performed.
 +Finished product-specific root actions.
 +</​sxh>​
 +
 +Depois disso podemos dar um ok na tela de execução do script e vamos ter a seguinte tela
 +
 +{{:​centos59wg13.png?​700|}}
 +
 +Aqui é só selecionar Close 
 +
 +Agora vamos criar um listener com o usuário oracle
 +<sxh bash>
 +netca
 +</​sxh>​
 +
 +Vamos ter uma tela como abaixo aqui vamos selecionar Next
 +
 +{{:​centos59wg14.png?​700|}}
 +
 +Agora como não temos nenhum listener so temos a opção de ADD vamos selecionar Next
 +
 +{{:​centos59wg15.png?​700|}}
 +
 +Agora podemos dar um nome para o nosso listener eu vou deixar o padrão e vou selecionar Next
 +
 +{{:​centos59wg16.png?​700|}}
 +
 +Agora podemos selecionar quais protocolos vão ser utilizados eu vou deixar o default e vou selecionar Next
 +
 +{{:​centos59wg17.png?​700|}}
 +
 +Agora podemos selecionar uma porta para o nosso listener eu vou deixar a default e vou selecionar Next
 +
 +{{:​centos59wg18.png?​700|}}
 +
 +Agora vamos ser questionados se queremos configurar outro listener vamos selecionar no e Next
 +
 +{{:​centos59wg19.png?​700|}}
 +
 +Agora vamos selecionar Next 
 +
 +{{:​centos59wg20.png?​700|}}
 +
 +Agora vamos selecionar Finish para terminar a nossa configuração
 +
 +{{:​centos59wg21.png?​700|}}
 +
 +Agora vamos consultar o nosso listener com o usuário oracle
 +<sxh bash>
 +lsnrctl status
 +
 +LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 22-JUN-2013 12:15:38
 +
 +Copyright (c) 1991, 2009, Oracle. ​ All rights reserved.
 +
 +Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +STATUS of the LISTENER
 +------------------------
 +Alias                     ​LISTENER
 +Version ​                  ​TNSLSNR for Linux: Version 11.2.0.1.0 - Production
 +Start Date                22-JUN-2013 12:13:39
 +Uptime ​                   0 days 0 hr. 1 min. 59 sec
 +Trace Level               off
 +Security ​                 ON: Local OS Authentication
 +SNMP                      OFF
 +Listener Parameter File   /​u01/​app/​oracle/​product/​11.2.0/​dbhome_1/​network/​admin/​listener.ora
 +Listener Log File         /​u01/​app/​oracle/​diag/​tnslsnr/​oracle/​listener/​alert/​log.xml
 +Listening Endpoints Summary...
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +The listener supports no services
 +The command completed successfully
 +</​sxh>​
 +
 +Ele está escutando.
 +
 +
 +Agora precisamos criar o banco de dados ainda com o usuário oracle
 +<sxh bash>
 +dbca
 +</​sxh>​
 +
 +Vamos ter uma tela como abaixo.
 +
 +{{:​centos59wg22.png?​700|}}
 +
 +Aqui vamos selecionar Next para iniciarmos a configuração
 +
 +
 +Agora vamos selecionar a nossa operação neste caso vamos selecionar **Create a Database** e Next
 +
 +{{:​centos59wg23.png?​700|}}
 +
 +Agora vamos selecionar qual a finalidade do modelo de banco vou selecionar a primeira opção **General Purpose or Transaction Processing** e Next
 +
 +{{:​centos59wg24.png?​700|}}
 +
 +Agora vamos informar o nome do banco de dados e o SID como abaixo e selecione Next
 +
 +{{:​centos59wg25.png?​700|}}
 +
 +Aqui vamos deixar as nossas opções default e vamos selecionar Próximo
 +
 +{{:​centos59wg26.png?​700|}}
 +
 +Agora podemos informar a senha para os usuários do banco ou selecionar usar a mesma senha para todas as contas e informe a senha e selecione Próximo
 +
 +{{:​centos59wg27.png?​700|}}
 +
 +Aqui se a senha for simples vamos ter a seguinte mensagem precisamos somente selecionar Yes
 +
 +{{:​centos59wg28.png?​700|}}
 +
 +Agora como o armazenamento é em disco local não em ASM vamos deixar o default e vamos selecionar Next
 +
 +{{:​centos59wg29.png?​700|}}
 +
 +
 +Agora vamos deixar as opções default e vamos selecionar Enable Archiving e Next
 +
 +{{:​centos59wg30.png?​700|}}
 +
 +Aqui vamos selecionar Next pois não quero os schemas de exemplos
 +
 +{{:​centos59wg31.png?​700|}}
 +
 +Aqui temos a configuração de SGA e PGA, quantidade de processos simultaneos,​ Charracter Sets e Connection mode eu vou deixar o padrão mude o que achar necessários e selecione Next
 +
 +{{:​centos59wg32.png?​700|}}
 +
 +Agora temos um Overview da nossa instalação aqui podemos selecionar Next.
 +
 +{{:​centos59wg33.png?​700|}}
 +
 +Agora temos as opções de criação do banco de dados vamos deixar marcado somente o default Create Database e vamos selecionar Finish
 +
 +{{:​centos59wg34.png?​700|}}
 +
 +Agora vamos ter a tela de confirmação da nossa criação aqui podemos selecionar OK
 +
 +{{:​centos59wg35.png?​700|}}
 +
 +Agora vamos ter a criação do banco como abaixo.
 +
 +{{:​centos59wg36.png?​700|}}
 +
 +Depois que terminar a criação vamos ter a seguinte mensagem
 +
 +{{:​centos59wg37.png?​700|}}
 +
 +Aqui temos informações sobre as contas do banco o repositório e o acesso ao Enterprise Manager em https://​oracle.douglasqsantos.com.br:​1158/​em
 +
 +Aqui vamos selecionar Exit
 +
 +Agora vamos testar o nosso banco
 +
 +Vamos carregar as variáveis de ambiente para a nossa instância orcl
 +
 +<sxh bash>
 +. oraenv
 +ORACLE_SID = [DB11G] ? 
 +The Oracle base for ORACLE_HOME=/​u01/​app/​oracle/​product/​11.2.0/​dbhome_1 is /​u01/​app/​oracle
 +</​sxh>​
 +
 +Agora vamos chamar o sqlplus, como a a conexão é local é só informar usuário/​senha
 +<sxh sql>
 +sqlplus system/​oracle
 +
 +SQL*Plus: Release 11.2.0.1.0 Production on Sat Jun 22 12:48:34 2013
 +
 +Copyright (c) 1982, 2009, Oracle. ​ All rights reserved.
 +
 +
 +Connected to:
 +Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
 +With the Partitioning,​ OLAP, Data Mining and Real Application Testing options
 +
 +SQL> quit
 +Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
 +With the Partitioning,​ OLAP, Data Mining and Real Application Testing options
 +</​sxh>​
 +
 +Caso esteja trabalhando com o firewall habilitado precisamos liberar a porta 1158 para que possamos acessar de outras máquinas o Enterprise Manager, e vamos liberar a porta 1521 para podemos acessar o Oracle de outras maquina.
 +
 +Agora com o usuário root
 +<sxh bash>
 +vim /​etc/​sysconfig/​iptables
 +# Firewall configuration written by system-config-securitylevel
 +# Manual customization of this file is not recommended.
 +*filter
 +:INPUT ACCEPT [0:0]
 +:FORWARD ACCEPT [0:0]
 +:OUTPUT ACCEPT [0:0]
 +:​RH-Firewall-1-INPUT - [0:0]
 +-A INPUT -j RH-Firewall-1-INPUT
 +-A FORWARD -j RH-Firewall-1-INPUT
 +-A RH-Firewall-1-INPUT -i lo -j ACCEPT
 +-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
 +-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
 +-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
 +-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
 +-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
 +-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
 +-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 1158 -j ACCEPT
 +-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 1521 -j ACCEPT
 +-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,​RELATED -j ACCEPT
 +-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
 +-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
 +COMMIT
 +</​sxh>​
 +
 +Agora vamos reiniciar o serviço do Firewall
 +<sxh bash>
 +/​etc/​init.d/​iptables restart
 +</​sxh>​
 +
 +Agora vamos testar o Enterprise manager acessando https://​oracle.douglasqsantos.com.br:​1158/​em aqui vamos precisar aceitar o certificado auto-assinado vamos ter algo como abaixo
 +
 +{{:​centos59wg38.png?​700|}}
 +
 +Aqui podemos logar com o usuário system e a senha que foi informada na instalação do banco, depois vamos ter a seguinte tela
 +
 +{{:​centos59wg39.png?​700|}}
 +
 +Aqui podemos efetuar muitas operações em nosso banco de dados :D
 +
 +
 +Operações básicas:
 +
 +Vamos parar o Enterprise manager
 +
 +Vamos carregar as variáveis para a instância que queremos gerenciar
 +<sxh bash>
 +. oraenv
 +ORACLE_SID = [DB11G] ? 
 +The Oracle base for ORACLE_HOME=/​u01/​app/​oracle/​product/​11.2.0/​dbhome_1 is /​u01/​app/​oracle
 +</​sxh>​
 +
 +Agora vamos mandar o Enterprise manager parar
 +<sxh bash>
 +emctl stop dbconsole
 +Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0 ​
 +Copyright (c) 1996, 2009 Oracle Corporation. ​ All rights reserved.
 +https://​oracle.douglasqsantos.com.br:​1158/​em/​console/​aboutApplication
 +Stopping Oracle Enterprise Manager 11g Database Control ... 
 + ​... ​ Stopped.
 +</​sxh>​
 +
 +Agora vamos consultar o nosso Enterprise Manager
 +<sxh bash>
 +emctl status dbconsole
 +Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0 ​
 +Copyright (c) 1996, 2009 Oracle Corporation. ​ All rights reserved.
 +https://​oracle.douglasqsantos.com.br:​1158/​em/​console/​aboutApplication
 +Oracle Enterprise Manager 11g is not running.
 +</​sxh>​
 +
 +Para inicializar ele
 +<sxh bash>
 +emctl start dbconsole
 +Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0 ​
 +Copyright (c) 1996, 2009 Oracle Corporation. ​ All rights reserved.
 +https://​oracle.douglasqsantos.com.br:​1158/​em/​console/​aboutApplication
 +Starting Oracle Enterprise Manager 11g Database Control .......... started. ​
 +------------------------------------------------------------------
 +Logs are generated in directory /​u01/​app/​oracle/​product/​11.2.0/​dbhome_1/​oracle.douglasqsantos.com.br_DB11G/​sysman/​log ​
 +</​sxh>​
 +
 +Agora vamos ver como podemos parar e iniciar uma instância do banco de dados
 +
 +Podemos parar o banco pelo sqlplus da seguinte forma
 +
 +Carregue as variáveis para a instância
 +<sxh bash>
 +. oraenv
 +ORACLE_SID = [DB11G] ? 
 +The Oracle base for ORACLE_HOME=/​u01/​app/​oracle/​product/​11.2.0/​dbhome_1 is /​u01/​app/​oracle
 +</​sxh>​
 +
 +Agora vamos logar com o usuário sys com a permissão de sysdba
 +<sxh sql>
 +sqlplus sys/oracle as sysdba
 +
 +SQL*Plus: Release 11.2.0.1.0 Production on Thu Jun 20 13:36:20 2013
 +
 +Copyright (c) 1982, 2009, Oracle. ​ All rights reserved.
 +
 +
 +Connected to:
 +Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
 +With the Partitioning,​ Automatic Storage Management, OLAP, Data Mining
 +and Real Application Testing options
 +</​sxh>​
 +
 +Agora vamos mandar dar um shutdown no banco
 +<sxh sql>
 +SQL> shutdown immediate;
 +Banco de dados fechado.
 +Banco de dados desmontado.
 +Instancia ORACLE desativada.
 +SQL> ​
 +</​sxh>​
 +
 +Agora vamos mandar subir a instância novamente
 +<sxh sql>
 +SQL> startup;
 +Instancia ORACLE iniciada.
 +
 +Total System Global Area  839282688 bytes
 +Fixed Size        2217992 bytes
 +Variable Size     ​515901432 bytes
 +Database Buffers ​   314572800 bytes
 +Redo Buffers ​       6590464 bytes
 +Banco de dados montado.
 +Banco de dados aberto.
 +SQL> ​
 +</​sxh>​
 +
 +
 +Agora vamos verificar o status do nosso listener
 +<sxh bash>
 + ​lsnrctl status
 +
 +LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 22-JUN-2013 12:56:40
 +
 +Copyright (c) 1991, 2009, Oracle. ​ All rights reserved.
 +
 +Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +STATUS of the LISTENER
 +------------------------
 +Alias                     ​LISTENER
 +Version ​                  ​TNSLSNR for Linux: Version 11.2.0.1.0 - Production
 +Start Date                22-JUN-2013 12:13:39
 +Uptime ​                   0 days 0 hr. 43 min. 0 sec
 +Trace Level               off
 +Security ​                 ON: Local OS Authentication
 +SNMP                      OFF
 +Listener Parameter File   /​u01/​app/​oracle/​product/​11.2.0/​dbhome_1/​network/​admin/​listener.ora
 +Listener Log File         /​u01/​app/​oracle/​diag/​tnslsnr/​oracle/​listener/​alert/​log.xml
 +Listening Endpoints Summary...
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +Services Summary...
 +Service "​DB11G"​ has 1 instance(s).
 +  Instance "​DB11G",​ status READY, has 1 handler(s) for this service...
 +Service "​DB11GXDB"​ has 1 instance(s).
 +  Instance "​DB11G",​ status READY, has 1 handler(s) for this service...
 +The command completed successfully
 +</​sxh>​
 +
 +
 +Agora se eu precisar parar ele
 +<sxh bash>
 +lsnrctl stop
 +
 +LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 22-JUN-2013 12:57:02
 +
 +Copyright (c) 1991, 2009, Oracle. ​ All rights reserved.
 +
 +Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +The command completed successfully
 +</​sxh>​
 +
 +Agora vamos verificar o status dele
 +<sxh bash>
 +lsnrctl status
 +
 +LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 22-JUN-2013 12:57:17
 +
 +Copyright (c) 1991, 2009, Oracle. ​ All rights reserved.
 +
 +Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +TNS-12541: TNS:no listener
 + ​TNS-12560:​ TNS:​protocol adapter error
 +  TNS-00511: No listener
 +   Linux Error: 111: Connection refused
 +</​sxh>​
 +
 +Como pode ser notado ele está down vamos subir ele
 +<sxh bash>
 +lsnrctl start
 +
 +LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 22-JUN-2013 12:57:33
 +
 +Copyright (c) 1991, 2009, Oracle. ​ All rights reserved.
 +
 +Starting /​u01/​app/​oracle/​product/​11.2.0/​dbhome_1/​bin/​tnslsnr:​ please wait...
 +
 +TNSLSNR for Linux: Version 11.2.0.1.0 - Production
 +System parameter file is /​u01/​app/​oracle/​product/​11.2.0/​dbhome_1/​network/​admin/​listener.ora
 +Log messages written to /​u01/​app/​oracle/​diag/​tnslsnr/​oracle/​listener/​alert/​log.xml
 +Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +
 +Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +STATUS of the LISTENER
 +------------------------
 +Alias                     ​LISTENER
 +Version ​                  ​TNSLSNR for Linux: Version 11.2.0.1.0 - Production
 +Start Date                22-JUN-2013 12:57:33
 +Uptime ​                   0 days 0 hr. 0 min. 0 sec
 +Trace Level               off
 +Security ​                 ON: Local OS Authentication
 +SNMP                      OFF
 +Listener Parameter File   /​u01/​app/​oracle/​product/​11.2.0/​dbhome_1/​network/​admin/​listener.ora
 +Listener Log File         /​u01/​app/​oracle/​diag/​tnslsnr/​oracle/​listener/​alert/​log.xml
 +Listening Endpoints Summary...
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +The listener supports no services
 +The command completed successfully
 +</​sxh>​
 +
 +Agora vamos criar o script de inicialização do Oracle
 +<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/​11.2.0/​dbhome_1
 +ORA_OWNER=oracle
 +export ORACLE_UNQNAME=DB11G
 +
 +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
 +        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 acertar as permissões do script
 +<sxh bash>
 +chmod 750 /​etc/​init.d/​dbora
 +</​sxh>​
 +
 +Agora vamos colocar ele na inicialização
 +<sxh bash>
 +chkconfig --add dbora
 +</​sxh>​
 +
 +Agora vamos habilitar o nosso banco subir na inicialização do sistema
 +<sxh bash>
 +vim /etc/oratab
 +[...]
 +#Precisamos mudar o último caracter da linha de N para Y
 +DB11G:/​u01/​app/​oracle/​product/​11.2.0/​dbhome_1:​Y
 +</​sxh>​
 +
 +Agora já podemos reiniciar o servidor pra testar a inicialização
 +<sxh bash>
 +reboot
 +</​sxh>​
 +
 +Agora vamos consultar o listener do Oracle ​
 +
 +Vamos consultar o uptime do servidor
 +<sxh bash>
 +uptime
 + ​13:​37:​44 up 1 min,  1 user,  load average: 0.80, 0.24, 0.08
 +</​sxh>​
 +
 +Agora vamos consultar o tempo do listener
 +<sxh bash>
 +lsnrctl status
 +
 +LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 22-JUN-2013 13:37:29
 +
 +Copyright (c) 1991, 2009, Oracle. ​ All rights reserved.
 +
 +Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +STATUS of the LISTENER
 +------------------------
 +Alias                     ​LISTENER
 +Version ​                  ​TNSLSNR for Linux: Version 11.2.0.1.0 - Production
 +Start Date                22-JUN-2013 13:37:11
 +Uptime ​                   0 days 0 hr. 0 min. 18 sec
 +Trace Level               off
 +Security ​                 ON: Local OS Authentication
 +SNMP                      OFF
 +Listener Parameter File   /​u01/​app/​oracle/​product/​11.2.0/​dbhome_1/​network/​admin/​listener.ora
 +Listener Log File         /​u01/​app/​oracle/​diag/​tnslsnr/​oracle/​listener/​alert/​log.xml
 +Listening Endpoints Summary...
 +  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle.douglasqsantos.com.br)(PORT=1521)))
 +Services Summary...
 +Service "​DB11G"​ has 1 instance(s).
 +  Instance "​DB11G",​ status READY, has 1 handler(s) for this service...
 +Service "​DB11GXDB"​ has 1 instance(s).
 +  Instance "​DB11G",​ status READY, has 1 handler(s) for this service...
 +The command completed successfully
 +</​sxh>​
 +
 +Tudo ok
 +====== Referências ======
 +
 +  - http://​www.oracle.com/​technetwork/​database/​enterprise-edition/​downloads/​112010-linx8664soft-100572.html