Oracle Database 19c com Docker

Por Alex Zaballa Oracle ACE director
Publicado em Julho 2019

Revisado por Francisco Riccio




Neste artigo vamos demostrar como instalar o Docker no Mac OS Mojave e criar um banco de dados Oracle versão 19c.

O primeiro passo é necessário realizar o download e instalação do Docker.

Neste artigo iremos utilizar o Docker Desktop for Mac.

O Download pode ser realizado no site abaixo:

https://hub.docker.com/editions/community/docker-ce-desktop-mac







Após o download, basta executar o arquivo Docker.dmg e será exibida a imagem abaixo:







Após clicar em Docker.app e arrastar até o ícone Applications.

Para executar o Docker, bastar ir até a pasta Applications e executar o arquivo Docker.app:







Ao iniciar o Docker pela primeira vez, será exibida a tela de boas vindas e também será solicitado um usuário com privilégios para realizar as configurações no Mac OS:













Após informar as credenciais, será exibida a tela abaixo indicando que o Docker está sendo inicializado:







Após a inicialização, será exibida a mensagem abaixo:







Versão do Docker:







No Menu do Mac Os podemos verificar que o Docker está em execução:







Para realizar a instalação do banco de dados Oracle deve-se entrar no GitHub e realizar o download do arquivo docker-images-master.zip:

https://github.com/oracle/docker-images 







Ou podemos utilizar também o comando git clone:







O próximo passo é realizar o download do Oracle Database 19c para Linux x86-64:

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html







Neste ponto você deverá ter essa estrutura de diretórios:







Após isso, copie o arquivo LINUX.X64_193000_db_home.zip para o diretório docker-images/OracleDatabase/SingleInstance/dockerfiles/19.3.0:







Agora iremos criar um Docker image utilizando o arquivo buildDockerImage.sh

A sintaxe utilizada para gerar a imagem é a seguinte:

./buildDockerImage.sh -v 19.3.0 -e







Podemos notar que o instalador irá acessar a internet e baixar o oraclelinux:7-slim, bem como irá utilizar o YUM para atualizar os pacotes:







Atualização dos pacotes:







Instalação do software banco de dados:







Execução automática do orainstRoot.sh e root.sh:







Final da instalação:







Ao final, possuímos o Oracle Linux e o software do banco de dados Oracle 19c:







Para realizar a criação do banco de dados, utilizamos o comando abaixo:

docker  run --name oracle19c -p 1521:1521 -p 5500:5500 -v  
/Users/alexzaballa/Downloads/Docker/oradata:/opt/oracle/oradata  
oracle/database:19.3.0-ee













Final da criação do banco de dados:







Como podemos observar não informamos nenhuma senha. Com isso, uma senha será gerada automaticamente:







É possível redefinir estas senhas com o script abaixo:

docker exec oracle19c ./setPassword.sh Minha_Nova_Senha







Para verificar se o banco de dados está rodando podemos utilizar o comando abaixo:

docker ps -a 







Agora podemos realizar a conexão via SQLDeveloper:







Verificando os PDBs que foram criados:







Conectando no banco de dados utilizando o SQLPLUS:

sqlplus  sys/Welcome1@\"localhost:1521/orclpdb1\" as sysdba







Conectando no banco de dados utilizando o SQLPLUS que está dentro do Docker:

docker exec -ti 1bc7eefbf245 sqlplus system/Welcome1@orclpdb1







Acessando o Oracle Enterprise Manager Database Express:

https://localhost:5500/em/shell







Realizando a parada do banco de dados:

docker stop oracle19c







docker logs oracle19c







Inicializando o banco de dados:

docker start oracle19c







docker logs oracle19c








Referências:

https://github.com/oracle/docker-images/tree/master/OracleDatabase




Alex Zaballa, formado em Análise de Sistemas, é especialista em Banco de Dados Oracle com sólidos conhecimentos em Servidores de Aplicação e Sistemas Operacionais; trabalha com Oracle há 19 anos, é Oracle ACE Director, certificado OCM Database 12c/MAA/11G/Cloud e conta com mais de 300 outras certificações em produtos da Oracle. Alex também é membro do Groupo de Usuários Oracle do Brasil (GUOB), fundador do Grupo de Usuários Oracle de Angola (GUOA) e membro do time OraWorld.

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.