Você está na página 1de 82

INSTALAÇÃO ORACLE DATABASE

11.2.0.4

Oracle Linux 7.5


x86_64 (64 Bits)
Kernel 4.1.12-112.16.4.el7uek.x86_64

Este manual contempla a instalação do Oracle Database 11.2.0.4

Rafael Trajano de Anderade


____________________________________________

Data: 09/ 2018

Versão: 1.1
SUMÁRIO

Objetivo ................................................................................................................... 3
Introdução ............................................................................................................... 3
Motivadores .............................................................................................................. 3
Principais mudançaos no Oracle 11gR2 ........................................................................ 5
OFA (Optimal Flexible Architecture)............................................................................................................ 5
Parâmetros Depreciados ........................................................................................................................... 5
Ambiente ................................................................................................................. 6
Configurando o Sistema Operacional ............................................................................ 6
1 – Descrição de Servidores x Banco de Dados ......................................................................................... 20
1.1 – Definindo Estruturas de Rede (bond) ............................................................................................... 20
2 – Pré-Requisitos .................................................................................................................................. 26
2.1 – Criar os grupos no S.O ................................................................................................................... 28
2.2 – Criar os usuários para o GRID e DATABASE ...................................................................................... 28
2.3 – Definir senhas para os novos usuários ................................................. Error! Bookmark not defined.
2.4 – Configuração de Serviços do S.O ......................................................... Error! Bookmark not defined.
2.6 – Configuração de Parâmetros do Kernel............................................................................................. 29
2.7 – Atualização de limits do Shell para user “oracle” ............................................................................... 30
2.7.1 – Editar limits.conf ............................................................................. Error! Bookmark not defined.
2.7.2 – Editar login ..................................................................................... Error! Bookmark not defined.
2.7.3 – Editar profile ................................................................................... Error! Bookmark not defined.
2.8 – Desabilitar SELINIX ........................................................................................................................ 33
2.11 – Criar o Diretório do Oracle Base ..................................................................................................... 34
2.12 – Criar o Diretório do Oracle RDBMS ................................................................................................. 34
2.13 – Criar os Pacotes de instalação ........................................................... Error! Bookmark not defined.
2.15 – Verificar todos os pacotes necessários do SO (64 Bits) ......................... Error! Bookmark not defined.
2.16 – Criar o arquivo .bash_profile do user oracle e grid ........................................................................... 35
2.17 – Configurar o /etc/hosts ..................................................................... Error! Bookmark not defined.
3 – Descrição ............................................................................................. Error! Bookmark not defined.
3.1 – Verificando o Kernel ........................................................................... Error! Bookmark not defined.
3.2 – Instação dos Pacotes RPM .................................................................. Error! Bookmark not defined.
4 – Validando a Instalação .......................................................................... Error! Bookmark not defined.
4.1 – Checando os serviços do Grid StandAlone ............................................ Error! Bookmark not defined.
Instalando o RDBMS – Software Only Install ............................................................... 35
5 – Pós-Instalação ...................................................................................... Error! Bookmark not defined.
5.1 – Execução do root.sh ........................................................................... Error! Bookmark not defined.
Criação do Database ................................................................................................ 53
Validações Finais do Ambiente .................................................................................. 81
7 – Validação ............................................................................................. Error! Bookmark not defined.
7.1 – Validação da instalação ...................................................................... Error! Bookmark not defined.
Conclusão................................................................................................................. x
Referências .............................................................................................................. x
Objetivo
O objetivo deste documento é descrever passo a passo a instalação de um ambiente Oracle
11gR2 no Linux 7.5 x64.

Introdução Oracle
Devido as altas demandas da área de banco de dados se faz necessário ter um padrão que
atenda aos nossos clientes, diminuindo o tempo de implantação e aumentando a eficiência na
gestão do ambiente, tendo isso em mente, este manual segue criteriosamente as
recomendações da Oracle para a instalação e configuração de um ambiente de banco de
dados.

Motivadores
“Nós não somos daqueles que retrocedem para a destruição, mas da fé que avançam para a
conservação da alma”.
Deus, meu grande ajudador e mentor. A minha família e amigos que tanto amo. Não teria
chego até aqui sem eles.

Visão Geral do Oracle Database


O Oracle Database é composto por 3 estruturas:

● Estrutura de memória;
● Estrutura de processos;
● Estrutura de armazenamento;

Todas essas estruturas garantem desempenho e segurança ao banco de dados.

Estrutura de Memória: É composta pela SGA que é uma área na memória do servidor
reservada para cache e processamento de transações, dentro da SGA há outros componentes
cada qual com um propósito específico.
Estrutura da SGA:

Estrutura de processos: São os processos de segundo plano que fazem o intermediário


entre a instância (SGA) e o banco de dados. Os processos background que realizam o
“trabalho duro” no banco de dados e garantem que os dados sejam despejados para os
arquivos do banco de dados ou carregados para a memória (SGA).

Estrutura de processos:
Estrutura de armazenamento: Os dados são armazenados em arquivos. Internamente
existem estruturas dentro do banco de dados que fornecem um mapeamento lógico dos dados
nos arquivos de dados.
Tablespace é uma divisão lógica que permite gerenciar melhor a maneira como os dados são
armazenados, podendo separar os dados de cada aplicação por tablespace no banco de dados.
Arquivos de dados: É onde está a persistência dos dados, ou seja, onde os dados em si são
armazenados. Ao criar um tablespace é criado também um arquivo de dados, como foi dito
anteriormente o tablespace é uma divisão lógica enquanto o arquivo de dados é uma divisão
física de armazenamento.

Principais processos do Oracle


SMON – System Monitor: Esse processo é responsável por monitorar a instância do banco de
dados e recuperá-la em caso de falhas, no momento da reinicialização do banco.
PMON – Process Monitor: Esse processo é responsável por monitorar os processos que estão
sendo realizados pelos usuários no banco de dados, de tempos em tempos ele acorda e checa
se há alguma sessão inativa ou presa e caso sim encerra essa sessão liberando memória e
recursos na SGA.
DBWn – database Writer: Este processo é responsável por escrever os dados inseridos no
banco de dados nos arquivos de dados (datafiles), a cada 3 segundos ele checa a SGA e faz uma
varredura no Buffer de cache do banco de dados (Database Buffer Cache) procurando por blocos
sujos, caso encontre ele os despeja para os arquivos de dados (datafile), todavia, esse processo
também é invocado quando um usuário emite um comando commit ou quando o Buffer de cache
do banco de dados (Database buffer cache) está 1/3 cheio.
CKPT - Checkpoint: Este processo é responsável por sincronizar as informações sobre as
transações no banco de dados, ou seja, toda vez que ocorre um commit, esse processo marca
com um número que chamamos de SCN o cabeçalho do arquivo de dados e também o arquivo
de controle, para garantir não somente que a transação foi realizada com sucesso.
LGWR – Log Writer: O Log Writer é responsável por garantir que nenhum dado será perdido
no caso de uma falha da instância, ele faz a varredura do Buffer de Redo Log (Redo Log Buffer)
e escreve os vetores de transação nos arquivos de redo log online do banco de dados, garantindo
assim, caso necessário a recuperação do banco de dados.
ARCn – Archiver: Este processo é fundamental para ambientes produtivos, ele faz a cópia dos
arquivos de redo log online e mantém uma cópia. Essa cópia é fundamental, pois, com todos os
archive em caso de falha podemos recuperar o banco de dados até o momento anterior imediato
a falha. Porém, para que este processo seja ativado é necessário que o banco de dados esteja
em modo ARCHIVELOG.

Principais mudanças no Oracle 11gR2


Em relação a versões anteriores do Oracle Database existem algumas diferenças, como:

OFA (Optimal Flexible Architecture)


Os novos diretórios no 11g, em $ORACLE_BASE/diag/rdbms/<INSTANCIA>
_ alert – Diretório do alert log em xml e txt.
_ incident – Diretório para todos os incidentes do software.
_ incpkg – Diretório para quando a criado um pacote des incidentes.
_ trace – Diretório para armazenar os antigos traces gerados nos caminhos background dump (bdump)
e user dump (udump).
_ cdump – Diretório para armazenar os traces de Core Dump, antigo core_dump_dest.
_ Metadata – Metadata sobre os incidentes, problemas e pacotes.

Parâmetros Depreciados
Os parâmetros background_dump_dest, core_dump_dest, user_dump_dest foram depreciados.
Agora, todos os traces podem ser encontrados em DIAGNOSTIC_DEST.

ADR – Automatic Diagnostic Repository


Ferramenta para auxiliar na prevenção, detecção e diagnóstico de problemas com BUG’s em banco de dados.
O ADR centraliza todos os traces e logs de todos os componentes, tais como ASM, CRS, LISTENER.

Senhas
As senhas agora por padrão são SENSITIVE CASE, portanto, muita atenção com usuários de aplicação, isso
poderá ser um problema em uma migração. O recurso pode ser desligado alterando o parâmetro
sec_case_sentitive_logon = FALSE.
Ambiente
O ambiente está configurado da seguinte forma:
 OraDb11g

Abaixo segue a descrição do ambiente

Nome do server
O ambiente nome do server é composto de 1 (um) servidor Linux, descrito abaixo:

Oradb11g
Versão de SO Oracle Linux 7.5 x86_64
Modelo de Hardware Servidor virtualizado.
Memória 4096M
Qtd de CPU´s 2
IP Principal 192.168.56.200

Configurando o Sistema Operacional


Neste passo, basta instalar o Sistema Operacional com configurações padrão. Não existe nenhuma
especificação neste momento, o mais importante é a versao. Mais adiante serão instalados os pacotes
necessaries e configurações específicas.

No momento da instalação do SO, é importante lembrar os tamanhos para memória física, virtual (SWAP), e
espaço em disco, que devem seguir a tabela abaixo:
(Vide note: 880989.1)

- Mínimo de 4.0GB (4096MB) de memoria RAM – Física;


- Memória virtual (SWAP) segundo os requisites abaixo:
- 1.0 GB de espaço livre no /tmp;
- Aproximadamente 4.4 GB para instalação do Software de Database;
Iniciando a instalação do S.O. Selecione a opção Install Oracle Linux 7.5.

Passe para a próxima janela. Next:


Nesta tela altere a localização do servidor “Date & Time” para São Paulo – Brasil. Clique em Done. No
canto superior esquerdo.

Vá em “Software Selection” e altere para o padrão necessário para o banco de dados:

Em “Minimal Install” selecione os seguintes pacotes:


Em “Infraestructure Server” selecione os pacotes exibidos abaixo:
Em “File and Print Server” certifique-se de que esses pacotes já estjão sinalizados.

Em “Basic Web Server” certifique-se de que as opções abaixo estão habilitadas:


Virtualization Host:

Server with GUI:


Clique no botão done!

Clique em “Installation Destination”:


Clique no primeiro disco “SDA”, depois selecione a opção “I will configure partitioning” e clique em
“done”:

Selecione Standard Partition:


Clique no sinal de “+” para adicionar uma nova partição do disco SDA:

No checkbox selecione “/boot” e em seguida insira o tamanho da partição, neste caso 500Mb, clique em
“Add mount point”:

Onde está File System, mude de xfs para ext4 e clique em Update Seting:
Adicione uma nova partição:

Adicione uma nova partição, altere o file system para ext4 e clique em Done:

Clique em Accept Changes:


Desabilite o Kdump:

Inicie a instalação do S.O:

Defina a senha de root do servidor: dkp#2018


Faça o reboot da máquina:

Aceite os termos de licença do sistema operacional e clique em finish configuration.

Next.
Na tela privacy clique em next.
Na tela de localização, selecione São Paulo, Brasil e clique em next.
Na tela Connect your online accounts, clique em next.

Crie um usuário com o nome oracle e clique em next.

Senha: oracle:
Instalação do sistema operacional realizada com sucesso:
1 – Descrição de Servidores x Banco de Dados

1.1 – Definindo Estruturas de Rede


Antes de prosseguir, é importante definir todas as estruturas de rede que estarão configuradas em cada
NODE. A Oracle recomenda a utilização de Redundância nos endereços IPs que ficarão disponíveis tanto
para Rede Pública (Acesso a dados, SSH, etc) quanto para rede Privada (Interconnect).

1.2 – Configurando interface de rede

Configuração da placa de rede:

# cd /etc/sysconfig/network-scripts
# vi ifcfg-bond0

Parametros de configuração da interface ifcfg-bond0


DEVICE=bond0
NAME=
IPADDR=192.168.56.200
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
BROADCAST=192.168.56.255
USERCTL=no
BOOTPROTO=static
ONBOOT=yes
# vi ifcfg-enp0s3

Parametros de configuração da interface ifcfg-enp0s3


DEVICE=ifcfg-enp0s3
ONBOOT=yes
MASTER=bond0
SLAVE=yes
ONBOOT=yes

# vi ifcfg-enp0s8

Parametros de configuração da interface ifcfg-enp0s8


DEVICE=ifcfg-enp0s8
ONBOOT=yes
MASTER=bond0
SLAVE=yes
ONBOOT=yes

Criar arquivo de configuração do bonding:

# vi /etc/modprobe.d/bonding.conf

Parametros do arquivo bonding.conf

Alias bond0 bonding


Options bond0 mode=active-backup miimon=100 downdelay=200 updelay=200 fail_over_mac=1
Definindo hostname do servidor:
# vi /etc/hosts

Adicione a linha abaixo no final do arquivo:

192.168.56.200 oradb11g.dkp.com.br oradb11g

Desabilite o NetworkManager
# systemctl stop NetworkManager
# systemctl disable NetworkManager

Reinicie as placas de rede:


# Service network restart

Reinicie a maquina para subir o novo hostname setado


# reboot

A partir desse momento todas as etapas serão realizadas através do terminal de linha de comando putty.
1.3 – Montar discos para o banco de dados

O banco de dados nunca deve ficar no mesmo disco do sistema operacional, ou seja,
devemos ter discos exclusivos para o banco de dados. Nesta instalação a máquina
conta com 3 discos exclusivos para o Oracle Database, nos quais serão montadas as
seguintes unidades:

DISCO Unidade
SDB /u01
SDC /u02
SDD /u03

Antes de montarmos as unidades nos discos devemos criar uma partição primária em cada disco.

Obs.: Ao inserir este comando o prompt irá solicitar algumas informações, insira essas informações
respectivamente conforme abaixo:

# fdisk /dev/sdb
Command (m for help): n
Select (default p): p
Partition number (1-4, default 1): (Apenas de enter)
First sector (2048-41943039, default 2048): (Apenas de enter)
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): (Apenas de enter)
Command (m for help): w

Repita esse processo para os outros dois discos que serão utilizados pelo Oracle Database.
Formate o disco no tipo de file system padrão EXT4:

# mkfs.ext4 /dev/sdb1

Repita esse processo para os outros dois discos que serão utilizados pelo Oracle Database.

Precisamos atualizar a tabela de partições do sistema operacional, ou seja, incluir no arquivo fstab
os novos discos e seus respectivos pontos de montagem para que no carregamento do sistema
operacional o mesmo não perca a referencia dos discos e pontos de montagem.

# vi /etc/fstab
Por fim iremos agora criar as pastas e monta-las como partição.

# mkdir /u01
# mkdir /u02
# mkdir /u03

# mount /u01
# mount /u02
# mount /u03

Listando todas as partições:

# df -h
2 – Pré-Requisitos
Nesta etapa da instalação iremos realizar a parametrização do sistema operacional, ou
seja, adequa-lo para o banco de dados. Cada uma das etapas é fundamental, pois, no
momento da instalação dos binários o instalador irá realizar um chekup para verificar se
todos os parâmetros estão de acordo a documentação.

2.1 – Instalação de Pacotes RPM

Lista de pacotes a serem instalados:

binutils-2.17.50.0.6 (32 bit)


compat-libstdc++-33-3.2.3 (32 bit)
compat-libstdc++-33-3.2.3 (32 bit)
compat
coreutils-8
gcc-4.1.2 (32 bit)
gcc-c++-4.4.4 (32 bit)
glibc-2.5-58
glibc-2.5-58 (32 bit)
glibc-devel-2.5-58
glibc-devel-2.5-58 (32 bit)
compat-libcap1-1
ksh
compat-libcap1-1.10
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-3.el5 (s390x)
unixODBC-2.2.11 (32 bit) or later
unixODBC-devel-2.2.11 (64 bit) or later
unixODBC-2.2.11 (64 bit) or later
unixODBC-libs-2.2.11-10. or later

Para instalar os pacotes acima é necessário montar no servidor a .iso de instalação do


sistema operacional, pois, nela temos acesso a esses pacotes, se o servidor tiver com
acesso a internet, pode-se utilizar o comando yum install <nome_pacote.rpm> que
instalará do mesmo modo.
Montando .iso do sistema operacional:

Após iserir a .iso no sistema, monte a mesma com o comando abaixo:


# mount /dev/sr0 /media/

navegue até a pasta abaixo:


# cd /media/Packages/

Use este comando para checar quais pacotes da lista informada acima ainda não foram
instalados:

# rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils compat-


libstdc++-33 coreutils-8 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-
common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc++-
devel libXext libXtst libX11 libXau libXi make numactl pdksh sysstat unixODBC
unixODBC-devel
Todos os pacotes com a informação “Is not installed” devem ser instalados.
Para instalar os pacotes no Linux é simples, deve seguir a seguinte lógica:
# rpm -ivh <nome_pacote.x86_64.rpm>

Exemplo:

2.2 – Criar os grupos no S.O


Criando os grupos de sistema para o usuário de instalação do banco de dados.
# /usr/sbin/groupadd -g 54321 oinstall
# /usr/sbin/groupadd -g 54322 dba

2.3 – Criar os usuário para o DATABASE


Comando para criar o usuário para o banco de dados:
# /usr/sbin/useradd -u 54321 -g oinstall -G dba oracle

Definindo senha para o usuário oracle:


Senha padrão: oracle
# passwd oracle
2.6 – Configuração de Parâmetros do Kernel

Editar sysctl.conf
# vi /etc/sysctl.conf

#Parametros de instalação do Oracle 12c


fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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

Após setarmos o arquivo, é necessário forçar o kernel reler o mesmo e assim fazê-lo
entrar em vigor neste momento.
# sysctl -p

2.7 – Atualização de limits do Shell para user “oracle”

Editar limits.conf
# vi /etc/security/limits.conf

#PARAMETROS DE INSTALAÇÃO ORACLE 11g


oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
2.8 – Alteração no login

# vi /etc/pam.d/login
#PARAMETROS ORACLE 11g
session required pam_limits.so
2.9 – Alteração no profile

# vi /etc/profile

Ao final do arquivo adicione:

#ORACLE DATABASE 11g


if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
2.8 – Verificando o SELINIX
Desabilite o selinux

# cat /etc/sysconfig/selinux

É necessário alterar o arquivo e desabilitar o SELINUX:

# vi /etc/sysconfig/selinux

2.9 – Criar o Diretório do Oracle Inventory


O diretório de inventário do Oracle será criado automaticamente na instalação do
software do banco de dados. Este diretório ficará alocado dentro do diretório /app.
Como podemos verificar abaixo, o mesmo ainda não existe.

Quando você instala o software Oracle no sistema pela primeira vez, Oracle Universal
Installer (OUI) cria o arquivo oraInst.loc. Este arquivo identifica o nome do grupo de
inventário Oracle, e o caminho do diretório de inventário Oracle.
Para determinar se o grupo de inventário do Oracle existe, digite o seguinte comando:
more /etc/oraInst.loc
Como estamos parametrizando, ou seja, preparando o ambiente, o resultado do
comando está ilustrado abaixo.
Após a instalação do software do banco de dados, o oraInst.loc irá existir, então a
saída deste comando será:
inventory_loc = / u01/app/oraInventory
inst_group = oinstall
Na saída do exemplo anterior:
● O inventory_loc grupo mostra a localização do inventário do Oracle
● O inst_group parâmetro indica o nome do grupo de inventário Oracle (neste exemplo,
oinstall).

2.11 – Criar o Diretório do Oracle Base

No Linux seguindo as diretrizes da arquitetura flexível ideal (OFA) é recomendado a


criação do ponto de montagem em /u01/app/oracle.
Abaixo foi utilizado o comando mkdir –p
/u01/app/oracle/product/11.2.0.4/dbhome_1 que cria uma hierarquia nos
diretórios, ou seja, o diretório /db_1 está abaixo do diretório /11.2.0 e assim
sucessivamente até o diretório princiapal /u01.

# mkdir -p /u01/app/oracle

2.12 – Criar o Diretório do Oracle RDBMS

# mkdir -p /u01/app/oracle/product/11.2.0.4/dbhome_1

Setando as permissões para escrita e leitura nos diretórios:

# chown -R oracle:oinstall /u01


# chmod -R 775 /u01/app/
2.15 – Alterar o arquivo .bash_profile do user oracle

# su – oracle
# vi .bash_profile

#CONFIGURAÇÃO PARA A INSTALAÇÃO DO ORACLE 11gR2


export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export ORACLE_TERM=xterm
export
PATH=$PATH:$ORACLE_HOME/bin:$PATH:$GRID_HOME/bin:/usr/bin:/sbin:/u
sr/sbin:$ORACLE_HOME/OPatch
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jl
ib
export PS1="[${LOGNAME}@`hostname`:"'${PWD}]$ '
export EPC_DISABLED=TRUE
export PERL_HOME=/usr/local/perl
export PERL5LIB=$PERL_HOME/lib
export THREADS_FLAG=nativE
export ORACLE_HOSTNAME=oradb11g.dkp.com.br

3.Instalando o RDBMS – Software Only Install


Após copiar os binários e descompact-a-los, execute o comando abaixo para executar o
instalador do banco de dados.

# $ /u01/app/binarios/database/runInstaller
A primeira tela de instalação solicita o cadastro junto ao My Oracle Support, porém, não é
obrigatório.
Desabilite a verificação de updates via My Oracle Support e clique em next.

O instalador irá pergutar se temos certeza de que não queremos verificar os updates via My
Oracle Support, clique em YES.
Caso você tenha um software pré-update para ser instalado junto aos binários, você pode
colocar neste momento. Como não temos e não iremos atualizar o banco de dados, pois, se
trata de uma nova instalação e não de um upgrade de uma versão existente já instalada,
clique em Skip Software Update e depois em next.

Neste momento podemos escolher entre 3 tipos de instalação, que são:


● Create and Configure Database – Esta opção além de instalar o banco de dados já realiza a
criação de um banco de dados. As etapas daqui em diante para cada tipo de instalação
mudam.
● Install database software only – Esta opção apenas instala o RDBMS, ou seja, realiza
somente a instalação do software do banco de dados, sendo necessário executar
posteriormente os assistentes para a criação do banco de dados e do listener.
● Upgrade an existing database – Essa opção é apenas para casos de upgrade de versão, por
exemplo, imagine que em um servidorhá um banco de dados Oracle cuja a versão é a
11.2.0.3, caso queiramos atualizar para a versão 11.2.0.4 podemos utilizar essa opção para
realizar esse upgrade de versão. Conforme já dito, as etapas de instalação até aqui são iguais,
porém, daqui pra frente de acordo com a opção escolhida as etapas de instalação serão
diferentes.
Selecione a opção Install database software only install e clique em next.
Para alta disponibilidade e também performance a Oracle disponibiliza para o clientes da
versão Enterprise Edition o Real Application Cluster conhecido como Oracle RAC. O Oracle RAC
permite você executar um único banco de dados em múltiplas máquina, ou seja, várias
instâncias que acessam somente um banco de dados.

● Single instance database installation – Esta opção é para banco de dados que não trabalham
em cluster, ou seja, uma instância que acessa um único banco de dados.
● Oracle Real Application Clusters database installation – Para criar uma instalação de Oracle
RAC.
● Oracle RAC One Node Database installation – Para adicionar um nó (servidor) a um cluster
Oracle RAC já existente.

Selecione a opção Single instance database installation e clique em next.


Nesta tela escolhemos o idioma do software de banco de dados, por questão de padrão, deixe
no idioma inglês e clique em next.
O banco de dados Oracle é comercializado em diferentes edições, isso significa que os recursos
para versões abaixo da versão Enterprise são limitados.
● Enterprise Edition –
● Standad Edtion –
● Standard Edition One –

Há ainda as options que mesmo na versão Enterprise Edition precisam ser adquiridas a parte.

Clique em Select Option para habilitarmos outras fetuares.


Selecione a opção Enterprise Edition e clique em next.
Nesta tela é onde definimos o diretório Base do Oracle e também a localização dos executáveis
do banco de dados.
Repare que o instalador reconhecer automaticamente o diretório ORACLE_BASE e também o
diretório ORACLE_HOME, isso porque você setou no .bash_profile as variáveis de ambiente
para o ORACLE_BASE e ORACLE_HOME. Clique em next.
Na etapa de parametrização do sistema operacional nós não criamos o diretório para o
OraInventory, pois, o mesmo criará sozinho esse diretório e fará o controle dele. Como dito
anteriormente, o Oracle Universal Installer (OUI) cria esse diretório para manter um registro
de cada produto Oracle instalado no servidor, isso significa que podemos ter outras
ferramentas Oracle instaladas no servidor, até outros banco de dados, porém, teremos apenas
um único Oracle Inventory para catalogar essas instalação. Clique em next e será criado o
arquivo /etc/oraInst.loc e também o diretório /u01/app/oraInventory.
Repare também que o instalador reconheceu automaticamente o grupo de instalação, isso
porque na etapa em que criamos o user Oracle definimos que o o grupo oinstall era o seu
grupo principal.
Nesta tela vemos os outros grupos ao qual o user oracle faz parte também. Cada grupo tem
um papel específico no banco de dados. Clique em next.
Essa etapa da instalação o OUI checa se todos os pré-requisitos para a instalação do banco de
dados foram realizados.
Note que qualquer uma das etapadas de pré-instalação que realizamos se não foram
realizadas o OUI vai alertar, neste caso, o alerta é sobre o pacote RPM pdksh que não foi
instalado, este pacote não é necessário para o banco de dados, clique em ignore all e depois
em next.

Clique em yes.
Nessa etapa nos é apresentado um sumário da instalação que será realizada, repare em todas
as informações contidas na tela, espaço em disco, versão do banco de dados, diretório Oracle
Base, diretório Oracle Home onde será instalado o software e os grupos envolvidos.
Repare também que é mostrado a pasta onde o oraInventory será criado e o seu grupo.
Clique em next para iniciar a instalação.
Erros conhecidos:
Este erro acontece quando é instalado o Oracle Database 11.2.0.4 na versão 7 do Oracle Linux
ou Red Hat.

Para solucionar execute as seguintes etapas:

Edite o arquivo ins_emagent.mk


Entre no diretório /u01/app/oracle/product/11.2.0.4/dbhome_1/sysman/lib
$ cd $ORACLE_HOME/sysman/lib
$ vi ins_emagent.mk

Localize a seguinte parte no arquivo:

$(SYSMANBIN)emdctl:
$(MK_EMAGENT_NMECTL)

Nesse trecho altere para:

$(SYSMANBIN)emdctl:
$(MK_EMAGENT_NMECTL) -lnnz11

Ou seja, adicione -lnnz11 ao final.

Após isso clique em Retry para dar continuidade a instalação.


Para concluir a instalação é necessário executar esses dois scripts com o usuário root.

# /u01/app/oraInventory/orainstRoot.sh

# /u01/app/oracle/product/11.2.0.4/dbhome_1/root.sh
Após executar de enter e ele terminará de realizar a cópia dos arquivos necessários.
Instalação realizada com sucesso. Clique em close.
4.Criação do Database
Antes de sairmos criando um banco de dados, como normalmente é feito, vamos
primeiro entender o porquê iremos fazer o que vamos fazer, e para isso é necessário
que entendamos como funciona a arquitetura Oracle.
Um banco de dados nada mais é do que um conjunto de dados armazenados em um
local. Esses dados são armazenados em tabelas no formato relacional, ou seja, tabelas
que se relacionam entre si ou não.
A estrutura de tabela é simples de entender, temos colunas e linhas, as colunas
descrevem os dados e as linhas são onde de fato os dados são armazenados.
Além de suportar o formato relacional (tabelas) de armazenar dados, o Oracle também
suporta estruturas orientadas a objetos (OO) para armazenamento de dados.
Os dados em um banco de dados Oracle são armazenados em arquivos,
independentemente se você utiliza o formato relacional ou orientado a objetos,
internamento existem divisões lógicas que fornecem um mapeamento lógico dos dados
nos arquivos, essas divisões lógicas são chamadas de Tablespaces. Os tablespaces
permitem que armazenemos os dados separadamente, ou seja, diferentes tipos de
dados, serão armazenados separadamente.
Isso significa que podemos ter um tablespaces para a aplicação de RH, outro tablespace
para o setor Comercial, e assim por diante.

Essa imagem descreve o que é escrito no inicio do documento no tópico Visão Geral do
Oracle Database. Neste momento entenderemos o porque separamos 3 discos
exclusivos para o Banco de dados.

Estruturas de memória:

SGA – System Global Area: A SGA é uma área na memória compartilhada por todos
os usuários que acessam o banco de dados. A sua usabilidade é fundamental para se
ter um banco de dados mais performático. Pense na SGA como uma area de memória
rápida para consulta de dados, isso porque, todos os dados consultados no banco de
dados são carregados para a SGA o que força o banco de dados ler num primeiro
momento diretamente dos arquivos de dados (datafile) físicamente no disco (I/O), uma
vez feito a leitura esses dados consultados permanecem na SGA caso os dados sejam
consultados novamente eles já estão na memória não sendo necessário fazer I/O para
buscar os dados nos arquivos de dados (datafile).
A SGA é composta por sub-areas cada qual tem um papel específico

Estrutura de processos:
Os processos background (Segundo plano) que realizam todo o controle do banco de
dados, logo, os processos são serviços que garantem a integridade do banco de dados e
se um desses processos falharem provavelmente você notará que o banco de dados
ficará indisponível.
No inicio do documento há uma descrição desses 6 principais processos.

Estrutura física:
Os seguintes arquivos compõem a estrutura física do banco de dados:
● Arquivo de dados (datafile) – Este arquivo como o próprio nome diz contem
dados, é onde o banco de dados armazena seus dados.
● Arquivo de controle (controlfile) – Este arquivo é fundamental, pois, ele faz o
controle interno do banco de dados. O arquivo de controle mantem a consistência dos
arquivos do banco de dados, e orientam sobre as operações de recuperação. A Oracle
recomenda que esses arquivos sejam multiplexados.
● Arquivos de redo log online (redo log files) – Esses arquivos mantém uma cópia
das transações que estão sendo realizadas no banco de dados, ou seja, cada operação
de insert, update ou delete ficam armazenadas nesse arquivos para uma eventual
recuperação de dados caso seja necessária. A Oracle recomenda que esses
arquivos sejam multiplexados.
● Archive log – Esses arquivos só são criados quando o banco de dados é colocado em
modo ARCHIVELOG, esses arquivos são cópias exatas dos arquivos de redo log online,
todavia, ficam armazenadas. Um exemplo da sua importância ao Oracle é que ele
permite que recuperemos o banco de dados totalmente, pense no seguinte cenário:
Em um ambiente de banco de dados é realizado o backup todos os dias as 02h, porém,
acontece uma falha as 16h30 minutos, isso significa que se tivermos apenas o backup
das 02h perderemos 14 horas de dados, porém, se estiverem sendo gerados archives
que nada mais são do que cópias de todas as transações submetidas ao banco de dados
nós poderemos restaurar o backup e vir aplicando todos os archives gerados até as
16h30 minutos.
● Log de alerta (alert log) – O alert log é indispensável para a administração de um
banco de dados, com ele nós vemos em tempo real todas as operações que são
submetidas ao banco de dados, vemos as operações que realmente tem impacto sobre
o banco de dados, por exemplo, a exclusão de tablespaces, a falha de algum dos
processos de background. O alert log são os olhos do DBA Oracle.
● Arquivo de inicialização (init.ora) – Este arquivo contém todos os parametros de
inicialização do banco de dados, isso inclui os valores da SGA, localização dos arquivos
de dados, localização do(s) arquivos de controle e também a localização dos arquivos
de redo log online, entre outras informações. A Oracle recomenda que nós DBA
utilizemos spfile, ou seja, o spfile é um arquivo binário que contém todas as
informações que tem no init.ora, porém, por ser um arquivo binário não é possível ler o
mesmo, onde somente o banco de dados entende o que nele está. Isso garante
segurança ao banco de dados.
● Arquivo de senhas (password file) – Esse arquivo contém as senhas dos usuários
do banco de dados.
● Arquivos de rastreamento (trace files) – Cada processo background gera um
arquivo de log caso apresente alguma falha. Esses arquivos devem ser utilizados para
rastrear falhas inesperadas tentando localizar sua causa raíz.

Com todo esse entendimento iremos iniciar a criação de um banco de dados que atenda
as recomendações da Oracle.
Antes de iniciarmos a criação do banco de dados devemos primeiramente criar e
configurar o listener.
O Listener é o serviço de rede do Oracle Database, sem o listener nenhum usuário (ou
aplicação) conseguirá se conectar ao banco de dados através da rede comente
localmente no servidor.

Utilize o NETCA (Net Configuration Assistent) para realizar essa configuração.

Execute o comando abaixo:

# netca

Esta é a primeira tela do asistente de configuração de Rede Oracle.


Note que existem 4 opções para serem selecionadas, para realizar a configuração que
desejamos utilizaremos a primeira opção Listener configuration, clique em next.
Por ser a primeira configuração somente a opção para adicionar um novo serviço do
listener está disponível. Clique em next.

Nesta tela você pode dar um nome ao Listener, por padrão deixaremos Listener. Clique
em next.
Aqui Podemos selectionar quais protocolos devem ser suportados pelo Listener, por
padrão as conexões realizadas hoje em dia são via TCP/IP. Deste modo clique em next.

A porta 1521 é a porta padrão utilizada pelo Listener, todavia, caso seja uma
necessidade de rede configurar outra porta basta selecionar a opção Use another port
number e inserir a porta de conexão. Neste caso utilizaremos a porta padrão 1521.
Clique em next.
Nesta tela o assistente da a opção de configurar um novo listener, deixe a opção no
habilitada e clique em next.

Configuração concluída com sucesso. Clique em next.


Clique em Finish.

Para criar o banco de dados utilizaremos o DBCA (Database Configuration Assistant).


Na linha de comando, execute o comando:
# dbca
Tela inicial, clique em next.
Passo 1: Nesta tela temos as seguintes opções:
● Create a Database – Cria um novo banco de dados.
● Configure Database Option – Configura as options existentes no banco de dados
(options que habilitamos no momento da instalação dos binários).
● Delete a Database – Deleta um banco de dados.
● Manage Templates – Gerencia modelos de banco de dados.

Vamos criar um novo banco de dados, selecione a opção Create a Database e clique em
next.
Passo 2: Nesta tela iremos escolher qual o modelo de banco de dados que iremos
utilizar, note que existem 3 modelos:

● General Purpose – Uma variedade de tarefas de banco de dados podem ser


executadas, desde tarefas mais simples como consultas mais complexas.
● Online Transaction Processing (OLTP) – Opção valida para banco de dados
transacionais, ou seja, bancos de dados que sofrem muitas transações como leitura
(select), gravação (insert ou update) ou exclusão de dados (delete), como
características desse modelo de banco de dados as operações são relativamente
simples e processam uma quantidade pequena de informações, todavia, podem haver
muitos usuários que executam um número grande de transações concorrentes.
● Data Warehouse – Este modelo é feito para ambientes que processam inumeras
consultas complexas e pesadas devido a grande quantidade de dados. Esses bancos de
dados precisam ter excelente resposta e também grande precisão. As consultas nesse
banco de dados variam de consultas simples que retornam um número pequeno de
registro como também um grande número de registro podendo chegar na casa dos
milhões em diversas tabelas.
● Custom Database – Esta opção permite que você crie um banco de dados
customizado de acordo com o ambiente dos seus usuários.

Selecione a primeira opção Gereral Porpouse or Transaction Processing e clique em


next.
Passo 3: Nesta janela você define o nome do banco de dados. SID é o nome que seu
banco de dados terá, insira um nome para o seu banco de dados e clique em next.

Passo 4: Neste passo Podemos habilitar ou desabilitar o Enterprise Manager e também


a Flash Recovery Area que iremos configurar mais adianta.
A segunda aba Automatic Maintenance Tasks, habilita o recurso de coleta de
estatísticas automáticas do Oracle Database. Clique em next.
Passo 5: Neste passo nós setamos as senhas para cada usuário que será criado no
banco de dados. Esses usuários são:
● SYS – Este usuário é o super usuário do Oracle Database, tem todas as permissões.
Realiza tarefas administrativas no banco de dados e é o proprietário do dicionário de
dados. Somente o DBA pode ter esse acesso.
● SYSTEM – Assim como usuário SYS esse usuário realiza tarefas administrativas no
banco de dados. Atua como se fosse um gerente. Somente o DBA pode ter esse acesso.
● DBSNMP - Usuário utilizado pelo Agent Management do Oracle Enterprise Manager e
gerenciar o banco de dados.
● SYSMAN – Este usuário é utilizado pelo Enterprise Manager para realiza tarefas
administrativas.

Selecione a opção Use the Same Administrative Passwaord for all Accounts, defina uma
única senha para todos esses usuários e clique em next.
Senha: oracle.

Clique em Yes.
Passo 6: Nesta tela Podemos configurar onde serão armazenados os arquivos de do
banco de dados. Note que há duas opções em Storage Type, a primeira é File System e
a segunda ASM. Escolha File System.
Repare também em outra informação importante, em Database Files Location, é
colocado lá ORACLE_BASE/oradata, esse é o diretório onde ficarão os arquivos de
dados (datafile), arquivos de controle (controlfile) e arquivos de redo log online (redo
log files). Clique em next.
Passo 7: Nesta tela é onde realizamos a configuração da Fast Recovery Area (Um
espaço na qual teremos todos os arquivos necessário para recuperar um banco de
dados) e também Podemos habilitar o modo archivelog no banco de dados, porém,
faremos isso manualmente após o banco criado. Clique em next.

Passo 8: Nesta tela Podemos habilitar ou não os schemas de teste da Oracle, para fins
de estudo habilite os schema e clique em next.
Passo 9: Começamos a criação deste tópico falando sobre a arquitetura do banco de
dados, onde agora sabemos que o Oracle é composto de 3 estruturas, umas dessas
estruturas é a estrutura de memória e é neste passo que configuramos o tamanho da
SGA e como ela será gerenciada. A Oracle recomenda que seja alocado para a SGA no
entre 40% a 60% da memória total do servidor. Deste modo iremos definir 60% da
memória do servidor somente para o banco de dados. Desabilite O AMM – Automatic
Memory Management.

Clique em Show Memory Distribution.


Note que dos 2374MB reservados para o banco de dados, 1780MB é exclusivo para a
SGA e 593MB exclusivo para a PGA. Clique em close e para para a aba Sizing.
Nesta aba Podemos definir o tamanho do bloco de dados que será configurado para o
banco de dados e também o número de processos simultaneos que podem ser aberto
no banco de dados no Sistema operacional. Quanto mais forem os processos mais
memória será e recursos da máquina o Oracle irá consumir, por isso é vital entender a
necessidade da aplicação que consumirá o banco de dados. Va para a aba Character
Sets.
Altere a cadeia de caracteres para UTF8 conforme abaixo. Clique em all Initialization
Parameters para visualizar os parametros de inicialização.

Esses são alguns dos parametros de inicilização do banco de dados, há ainda muitos
outros parametros que ao clicar em Show Advanced Parameters são possíveis de serem
vistos e alterados. A criação de um banco de dados deve ser pensada e dimensionada
para a aplicação, se criarmos corretamente um banco de dados reduziremos em pelo
menos 50% a 80% a necessidade de ajustes e manutenções. Clique em close e vá para
a aba Connection Mode.
Há dois tipos de conexão a ser configurada em um banco de dados
● Dedicated Server mode – Use esta opção se o seu banco de dados terá um número
pequeno de usuários que se conectaram e se manterão conectados por longos períodos.
● Shared Server Mode – Ideal para bancos de dados que terão um grande volume de
clients. Essa opção faz com que os usuários compartilhem de um pool de conexão.
Selecione Dedicated Server Mode e clique em next.

Passo 10: Nesta tela é onde executamos a multiplexação dos arquivos de controle
(controlfiles) e também dos arquivos de redo log online (redo log files).
Selecione controlfile no lado esquerdo, em File Directory altere o diretório do arquivo
control02.ctl para /u02/app/oracle/oradata… Como está na imagem abaixo.
Em Datafiles Podemos ver onde serão criados os arquivos de dados iniciais do banco de
dados. Lembre-se que ORACLE_BASE é uma variável que setamos no arquivo
bash_profile cujo valor é /u01/app/oracle.
Em Redo Log Groups, clique em “1”. Como a Oracle recomenda iremos multiplexar os
arquivos de redo log online.
Inicialmente, File Size (Tamanho do arquivo) altere a escala para Mbytes e sete um
tamanho de 50 MB. Ou seja, ao fazer isso, estamos criando arquivos de redo log com o
tamanho de 50Mb cada um. Na coluna File Name clique na linha vazia logo abaixo do
redo01.log e adicione um novo arquivo de redo log, porém, apontando para outro
disco. Repare nas nomenclaturas. Redo01a.log terá a mesma informação de
redo01b.log, pois os mesmos fazem parte do mesmo grupo (Group 1) e estão
multiplexados em discos diferentes.
Vá para o Segundo grupo de redo log, clique em 2.

Realize o mesmo passo feito anteriormente, porém, se atente para as nomenclaturas.


Por ultimo vá para o grupo 3 e repita o mesmo processo feito anteriormente. Clique em
next para darmos continuidade a criação do banco de dados.

Passo 11: Nesta tela Podemos gerar um script de todos os commandos que o DBCA irá
executar para criar o banco de dados. Clique em Finish para iniciar a criação do banco
de dados.
Clique em Ok.
Neste momento todos os arquivos do banco de dados estão sendo criados.
O banco de dados orcl foi criado com sucesso.
Repare que nesta tela aparece também o endereço do Enterprise Manager Database
Control: https://192.168.56.200:1158/em.
Clique em exit.

Neste momento o estamos a somente mais um passo de concluir a instalação e criação


de um banco de dados Oracle, bastando apenas criar no listener um serviço para o
banco de dados recém criado.

Utilizaremos Net Manager, execute o comando abaixo:


# netmgr
Nesta tela Podemos criar um novo serviço para estabelecer conexão com o banco de
dados. Neste caso, faremos apenas um teste de conexão ao banco de dados.

Clique no ícone mostrado abaixo, para realizar um teste de conexão.


Clique em Change login.
Ao clicar em test o resultado mostra que o banco de dados foi criado e está acessível.
Clique em Close.
5.Validações Finais do Ambiente
A validação do ambiente inclui realizar uma consulta para saber o status de instância e
também a versão do banco de dados instalado.

Acesse o sqlplus e execute a seguinte consulta ao banco de dados:

$ sqlplus / as sysdba

select instance_name, status from v$instance;

select banner version from v$version;


6.Conclusão
Compreender as etapdas de instalação e criação de um banco de dados é fundamental
para ter um ambiente seguro e estável.
Concluímos então que a instalação é um fator determinando e que deve ser planejada e
arquitetada antes de ser realizada.

7.Referências
● Oracle 9i O Manual do DBA;
● https://www.oracle.com/technetwork/pt/articles/database-performance/introducao-
conceito-de-tablespaces-495850-ptb.html

Você também pode gostar