Instalando Oracle Enterprise Linux 7.1 e Oracle Enterprise Edition 12c R2 (12.2.0.1) Parte II (instalação do RDBMS)
Por Rodrigo Mufalani ,
Publicado en Junho 2017
Revisado por Marcelo Pivovar
Introdução:
Ao longo de minha carreira como DBA, tive de fazer centenas de instalações de Oracle em praticamente todos os Sistemas Operacionais suportados, as vezes para testes, até em alguns não suportados pela Oracle. Minha visão, é que instalar o Oracle em ambientes linux melhorou muito com o passar dos anos e diversas facilidades foram incorporadas a cada S.O lançado. Neste artigo irei mostrar a você como é bem simples e rápido instalar o Oracle 12cR2 Enterprise edition, dando continuidade ao artigo onde mostrei a instalação do Oracle Enterprise Linux 7.1 64 bits.
Configuração Host machine:
MacBook Pro 8 Gb de memória Ram Processador Intel Core i5 2,7 GHz MacOs Sierra 10.12
Configuração Máquina Virtual:
Virtual Box 5.1.8 para MacOS (Pode ser para qualquer Sistema Operacional que você está usando) Máquina Virtual com 2Gb de memória Ram Disco para máquina virtual de 12 Gb (vdi) Disco adicional para instalação do Oracle 25Gb (vdi) – Só a instalação do RDBMS ocupa 12Gb
Para iniciarmos nossa instalação iremos fazer alguns passos que configuram o S.O, que são bem simples instalando um pacote através do yum, anteriormente todas essas configurações tinham que ser feitas manualmente. Vale ressaltar que a configuração é genérica, então revisar os valores faz bem se estiver instalando um ambiente de produção e pode ter algumas especifidades que não fique bem configurado pelos valores default. Abaixo segue o que era preciso configurar antes:
- Parametros do kernel;
- Parametros de memória;
- Criação de usuários no S.O e alguns grupos;
- Instalação de diversos pacotes e bibliotecas (esse passo aqui feito com rpm era o terror de qualquer analista de S.O, dava uma trabalheira enorme);
Agora que você já sabe quanto tempo vai economizar, vamos iniciar os trabalhos!!!
Como na instalação eu não configurei o nome da máquina virtual, então ficou localhost e isso não é legal, então vamos configurar o hostname com o comando abaixo:
[root@localhost]# hostnamectl set-hostname
Agora depois que o rename ocorreu com sucesso, depois de fechar e abrir o terminal ele já traz o nome certinho:
Um passo que ela não é feito pelo pacote instalado via yum, é configurar o arquivo /etc/hosts, então abaixo eu fiz a minha configuração culocando ip, nome e nome completamente qualificado (com domínio). Para isso, emiti o comando vi /etc/hosts e editei o arquivo que ficou desse jeito:
Depois de feita a configuração de hostname, vamos direto para o yum do pacote “mágico” que configura quase tudo para a gente. Vamos executar o comando a seguir como root:
[root@labora12cr2]# yum instal oracle-database-server-12cR2-preinstall -y
Depois disso, basta pressionar o Enter para a mágica ocorrer e grande parte da configuração de S.O ser realizada de uma só vez, como eu havia mencionado anteriormente.
Vamos acompanhando a instalação, que precisa de internet, e dependendo da velocidade de sua pode demorar alguns poucos minutos ou vários. Abaixo podemos verificar mais progresso da instalação do pacote via yum:
Ao final da instalação do pacote, irá aparecer uma imagem como a abaixo:
Como essa a primeira vez que estou usando esse pacote para o 12c, ou seja, esse pacote que é específico para cada versão do banco de dados, vou checar manualmente para ver se ele fez tudo o que precisamos. Note que essa checagem pode ser feita por você ou posso confiar na Oracle e seguir em frente.
Fiz um cat nos arquivos de configuração abaixo: /etc/sysctl.conf
Verifiquei se os grupos que preciso para instalar o Oracle foram criados e o usuário oracle existe com o comando: id oracle
Para essa versão ao invés usar o padrão /etc/secutiry/limits.conf tem um novo arquivo que é usado para essa configuração e o original fica intocado.
Veja o arquivo original sem alterações, note que fiz um “grep –v #”, ou seja, não há linhas nele que não esteja comentado:
Esse abaixo é um outro passo que o pacote mágico não faz, definir a senha do usuário oracle. Para efeito de testes eu configurei como “oracle”. Não é nada recomendável deixar essa senha assim, principalmente se for em um ambiente de produção. O próprio S.O reclama que a senha é fraca, mas eu sou o root, então ele acata o comando e vamos seguir.
Esse é mais um passo que temos que fazer manualmente, parar o firewall ou se for o caso configurar para permitir apenas o necessário. Como isso aqui renderia um outro artigo e não é impeditivo para continuarmos, vamos desabilitar o nosso firewall. E na seguencia desabilitar o SElinux, anteriormente tinhamos que desabilitar essa opção do S.O, agora basta culocar como Permisive para instalar o Oracle, mas eu resulvi desabiltar para este artigo.
[root@labora12cr2]# systemctl stop firewalld [root@labora12cr2]# systemctl disable firewalld [root@labora12cr2]# setenforce 0
Os comandos abaixo são necessários para criar a Oracle home, quando eu fui instalar o banco de dados o caminho ficou curto, então segue um passo a passo que tive de fazer antes:
- Crie um disco vdi com 25Gb, para essa máquina, nas configurações do Virtual Box com a máquina virtual desligada;
- Ao ligar a máquina será listado um device novo, note que já existe um /dev/sda1 e vai haver um device novo /dev/sdb (sem particao criada):
2.1 Através do fdisk crie uma nova partição, logado como root, com o comando: fdisk /dev/sdb
Obs.: Ele vai fazer uma série de perguntas, respoda com: n, p, enter, enter, w
2.2 Agora que existe uma particao no disco, ele vai criar /dev/sdb1 e vamos usar o ext4 para formatar essa partição, novamente logado como root, emita o comando: mkfs.ext4 /dev/sdb1
2.3 Agora vamos criar uma pasta /u01 com o comando: mkdir /u01
2.4 Vamos montar a pasta /u01 no novo disco recém criado, com o comando: mount –t ext4 /u01 /dev/sdb1
Obs.: Essa configuração é apenas em memória, para manter isso permanente configure o arquivo /etc/fstab.
Agora que já expliquei como montei o filesystem de 25Gb, é hora de criar o diretório onde residirá a minha ORACLE HOME:
[root@labora12cr2]# mkdir –p /u01/app/oracle/product/12201/db1 [root@labora12cr2]# chown –R oracle.oinstall /u01 [root@labora12cr2]# chmod –R 775 /u01
Esse arquivo aqui, muita gente esquece de configurar e é outra coisa que devemos fazer manualmente. Ele guarda as variaveis de ambiente do usuário Oracle e reside dentro do diretório /home/oracle com o nome de .bash_profile. Segue abaixo como fiz a configuração as minhas variáveis. É possivel criar alguns áliases também que facilitam a sua vida de DBA, como um tail no alert.log, ida para alguns diretorios e etc. Como esse não é o foco, eu deixei apenas com o necessário.
Abaixo o progresso da descompactação dos binários de instalação do Oracle que foram baixados para o diretório /home/oracle e como eu estava sem espaço no / eu tive que descompactar ele para o /u01, com o comando:
[oracle@labora12cr2]$ unzip Oracle12cR2_x86_64_rdbms.zip –d /u01/
Agora chegou a hora da verdade, e se tudo o que fizemos até agora foi feito com sucesso, não teremos problemas para realizar a instalação. Cheque se a rede da sua máquina virtual está ligada e com ip para não dar problema na hora de configurar o listener. Para rodar o instalador, como oracle, emita o comando:
[oracle@labora12cr2]# cd /u01/database [oracle@labora12cr2]# ./runInstaller
Como o instalador do Oracle já amadureceu muito ao longo dos anos, desde a versão 10g ele faz uma série de checagens antes e durante a abertura do instalador, que chamamos d OUI (Oracle Universal Installer), que é um aplicativo java. Aqui abaixo por exemplo ele está fazendo a checagem se você está logado em um consule que tenha X (pode abrir interface gráfica), note que ele também checou a swap e meu file system /tmp.
Tela inicial, de boas vindas do instalador do Oracle 12c, ela já pede para você entrar com as credenciais do Oracle My Support (Metalink), caso você não tenha pode desmarcar essa opção. Mas, ressalto que é de suma importância contratar o suporte do Oracle para rodar em um ambiente de produção e sempre é uma ótima experiencia trabalhar com os engenheiros da Oracle para sulucionar os mais diversos problemas.
Como essa é uma instalação apenas para testes, vou desmarcar essa opção do suporte e atualizações de segurança.
Como a Oracle sabe que isso é importante, o instalador lhe dá esse aviso, mas pode continuar a instalação clicando em sim.
Na tela abaixo, o OUI irá lhe perguntar que tarefa deseja realizar:
Se for para testes, podemos esculher a opção Desktop Class ou Classe de desktop, mesmo assim eu optei por usar a opção de servidor que vai me dar mais algumas opções de configuração adiante.
Essa é uma instalação single instance, ou seja é um RAC, então deixei default:
Para os nossos propósitos deste artigo a instalação típica atende, creio que eu nunca uso a mesma quando vou criar um DB de produção, na opção avançada há uma série de configurações importantes que a típica vai deixar como default:
Uma das checagens que o instalador faz e não deixa passar agora sem é a senha forte para os usuários administrativos do banco de dados, ulhe abaixo o que ocorreu quando eu deixei a senha “oracle”:
O instalador detectou que a senha estava fora do padrão e detectou que eu tinha pouco espaço em disco, por isso, eu antes, dei os passos para criar o disco de 25Gb
Agora que eu culoquei uma senha forte e aloquei mais disco, o Oracle não vai se importar de terminar a instalação e criar o meu banco db12cr2 com um pdb chamado de pdb1.
O próximo passo é definir o Oracle Inventory, que é uma parte muito importante. Ele registra os produtos Oracle instalados e os patchesets aplicados em cada home. No nosso caso, deixei onde o instalador recomendou:
Não é uma boa ignorar isso em um ambinte de produção, e o OUI te avisa disso.
Tela de resumo, onde você ainda pode vultar atrás e editar alguma coisa que não está como você gostaria. No nosso caso, vamos clicar em instalar.
Aqui abaixo, podemos ver o OUI em progresso com os todos os passos que ele vai realizando.
Quase ao final da instalação, que é feita quase toda como oracle, o instalar irá lhe pedir que execute dois script com o usuário root em uma outra janela de terminal. Abra um terminal como root, execute os scripts como farei a seguir e só então pressione OK nessa tela.
Executando o primeiro script, o orainstRoot.sh que vai ajustar as permissões do Oracle Inventory:
Esse script é o mais complexo e faz alguns ajustes e copias de arquivo, em um ambiente RAC, todo DBA fica muito contente quando ele roda 100% sem problemas e formata certinho os OCR e ingressa os nodes no cluster (se você nunca fez, vale apena uma investida nisso). Uma coisa que é legal agora, é que o root.sh pode já configurar o TFA (Trace File Analyzer) que é uma ferramenta importante para abertura de chamados com o Suporte da Oracle (MOSC).
Você pode configurar isso depois, ou simplesmente não configurar, como fiz abaixo:
Depois que clicamos OK, lá na tela onde ele pediu para rodar os scripts como root, a barra de progresso continua e a instalação segue...
Em mais alguns minutinhos a instalação do Oracle está pronta e funcional com a tela abaixo informando que tudo foi feito com sucesso.
Ao clicar em próximo, ele mostra a URL do Enterprise Manager Database Express:
Aqui para atestar que a instalação funcionou como deveria, estou conectar como SYS no meu recém criado banco de dados db12cr2 (rodando Oracle 12c Enterprise Edition 12.2.0.1 – 64bits)
Abaixo mostrando o listener configurado para este banco.
Conclusão
Com a segunda parte do artigo, vimos que a instalação do Oracle 12c R2 não é nada complexa e a Oracle está fazendo um excelente trabalho facilitando a vida de usuários ao redor do mundo melhorando seus produtos a cada dia mais. Instalamos os binários do RDBMS Oracle 12c R2 (12.2.0.1) 64 bits em cima de uma máquina virtual rodando Oracle Enterprise Linux 7.1 64 bits dentro do Oracle Virtual Box. Posso dizer que foi muito simples realizar essas configurações e espero que os dois artigos possam ter ajudado a você instalar seu ambiente. Acredite, anteriormente era muito difícil instalar Oracle em Linux, no início dos anos 2000, quando comecei minha carreira como DBA, você tinha que procurar muita informação online e elas eram muito difícieis de encontrar. Hoje em dia temos diversas fontes de pesquisa, os manuais da oracle estão mais acesíveis a todos online e além disso, uma fonte que eu sempre uso para instalações é o blog do Tim Hall (www.oracle-base.com), que tem tutoriais impressionantes sobre um monte de coisa legal do Oracle.
Rodrigo Mufalani é um DBA Sr. com mais de 10 anos de experiência, começou com o Oracle 8i, mas teve a oportunidade de dar suporte a Oracle 7.3.4 em diante. É especialista em banco de dados Oracle com foco principal em Performance & Tuning e RAC. É palestrante em eventos de Oracle na OTN LAD TOUR e outros. Atualmente trabalha como consultor diversas empresas no segmento de variados ramos como: Educação, Saúde, Tecnulogia, Seguros e etc. Foi o terceiro Oracle ACE a ser nomeado no Brasil e é OCP DBA nas versões 10g e 11g. Atualmente trabalha na Mufalani DB Consulting. Twitter @mufalani / blog www.mufalani.com.br/blog
Este artigo foi revisto pela equipe de produtos Oracle e está em conformidade com as normas e práticas para o uso de produtos Oracle.