Clique nos links abaixo para acessar diretamente cada parte do artigo ou siga os links no final das páginas:
A sequência de instalação à seguir foi adaptada do site oficial da Oracle.
Pelo Windows hospedeiro, acesse a página oficial de download do Oracle Database XE e baixe a versão correta do pacote de instalação. No caso, usaremos a versão para Oracle Linux 8 (OL8), Oracle Database 21c Express Edition for Linux x64 (OL8).
Uma vez baixado, inicie a VM do Oracle Linux 8 como root. Em um terminal, acesse o ponto de montagem da pasta Downloads do hospedeiro.
cd /mnt/downloads
Copie o pacore RPM do Oracle Database XE para o diretório do root, evitando assim usar o pacote original. Por exemplo:
mkdir ~/Downloads
cp oracle-database-xe-21c-1.0-1.ol8.x86_64.rpm ~/Downloads
O arquivo é grande e a cópia deve demorar algum tempo. Quando conlcuir, acesse a pasta da cópia:
cd ~/Downloads
Iniciamos com a preparação do ambiente. Isso é feito por um preinstall que já vem incluido no Oracle Linux 8.
dnf -y install oracle-database-preinstall-21c
Assim, serão resolvidas todas as dependências e realizados todos os ajustes e preparações para a instalação do Oracle Database, incluindo o Oracle Database XE.
Fasemos a instalação do pacote com o comando:
dnf -y localinstall oracle-database-xe-21c-1.0-1.ol8.x86_64.rpm
Mais uma vez, levará algum tempo e muitas mensagens até que a instalação seja concluída. Temos que aguardar...
Vamos precisar de mais um ajuste. Comande:
ifconfig
Anote o endereço IP da interface enp0s3 que é nossa interface principal.
Edite o arquivo /etc/hosts:
nano /etc/hosts
Adicione a linha abaixo no final do arquivo:
192.168.1.64 oracleserver
Onde:
192.168.1.64 → troque pelo IP da interface de rede
oracleserver → é o hostname do nosso servidor
Salve as alterações teclando Ctrl+O depois Enter e feche o arquivo teckando Ctrl+X.
Reinicie o sistema:
reboot
Com a instalação concluída, vamos fazer i setup inicial do Oracle Database com o comando:
/etc/init.d/oracle-xe-21c configure
Na primeira questão vamos criar uma senha para acesso à conta do banco de dados. Vamos usar a senha Oracle123 ou a senha acordada com o instrutor do curso. Repita a senha e aguarde a conclusão do processo que vei demorar alguns minutos.
Setup concluído, vamos ajustar algumas variáveis de ambiente:
export ORACLE_SID=XE
export ORAENV_ASK=NO
export ORACLE_HOME=/opt/oracle/product/21c/dbhomeXE
export PATH=$PATH:$ORACLE_HOME/bin
O script oranenv ajusta a variável ORACLE_HOME. Para executá-lo, comande:
. /opt/oracle/product/21c/dbhomeXE/bin/oraenv
Vamos conferir?
echo $ORACLE_SID deve retornar XE
echo $ORACLE_ASK deve retornar NO
echo $ORACLE_HOME deve retornar /opt/oracle/product/21c/dbhomeXE
E, assim, já temos nosso servidor de banco de dados configurado em nosso servidor Linux.
Precisamos ter cuidado ao desligar nosso servidor. É importante que, quando isso for feito, o banco de dados Oracle tenha sido encerrado. Para evitar problemas vamos adicionar o Oracle Database ao systemctl. Assim quando o Linux ligar, ligará também o banco de dados (start) e quando for dado o comando de encerramento, o SGBD será desligado corretamente (stop).
Ainda como root, comande:
systemctl daemon-reload
systemctl enable oracle-xe-21c
Assim, além de inicializar e parar corretamente, podemos controlar manualmente nosso SGBD:
Comande systemctl stop oracle-xe-21c para encerrar o servidor de banco de dados;
Comande systemctl start oracle-xe-21c para (re)iniciar o SGBD.
É importante que você tenha plena "Consciência situacional" do ambiente em que está envolvido, portando, a tabela abaixo é essêncial. Ela mostra todos os caminhos que devem ser conhecidos pelo administrador do Oracle Database.
/opt/oracle
/opt/oracle/product/21c/dbhomeXE
/opt/oracle/oradata/XE
/opt/oracle/diag e subdiretórios
/opt/oracle/cfgtoollogs/dbca/XE
/etc/sysconfig/oracle-xe-21c.conf
/etc/init.d/oracle-xe—21c
Diretório base o Oracle Database XE
Home, executáveis e setup da rede do Oracle Database XE
Arquivos dos bancos de dados
Logs de diagnóstico
Logs dos scripts de criação dos bancos de dados
Configurações do Oracle Database XE
Scripts e serviços de configuração
Vamos fazer alguns testes de acesso aos bancos de dados criados pela configuração e averiguar se todas as ferramentas de acesso estão funcionais.
Uma vez logado como root, troque para o usuário oracle que é o gestor do sistema:
su - oracle
Agora, acesse o console do servidor do banco de dados via SQLPlus:
sqlplus / as sysdba
Se ocorrer algum erro com o comando acima, execute o comando . oraenv. Quando aparecer ORACLE_SID = [XE] ? digite XE com letras maiúsculas e tecle [Enter].
Isso dá acesso ao usuário oracle como SYSADM permitindo executar queries administrativas.
Experimente a seguinte query:
SELECT username FROM all_users ORDER BY username;
Ela retorna uma lista de usuários e seus recursos disponíveis.
Para sair do SQL*Plus, comande:
exit
Finalmente, vamos testar o acesso ao banco de dados via HTTP, pela ferramenta Enterprise Manager.
Abra um navegador Web como o Firefox;
Acesse o endereço https://localhost:5500/em/;
Se o navegador exibir uma mensagem de segurança por conta do certificado digital, ignore o aviso aceitando os riscos.
Na tela de login:
Username: system
Password: Oracle123
Clique em [Log in]
Navegue pela ferramenta para se ambientar...
O Enterprise Manager está desabilitado para acesso remoto, ou seja, de outros PCs da rede ou mesmo do hospedeiro. Para resolver isso:
No terminal, logue-se como root;
Mude para o usuário oracle:
su - oracle
Acesse o SQL*Plus como usuário system e senha Oracle123:
sqlplus system
Altere as permissões para ter somente acesso local para false:
EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE)
Aproveite para anotar o IP do servidor, obtido do comando:
ifconfig
Para testar, abra um navegador no Windows hospedeiro e acesse o endereço https://192.168.1.64/em/, onde você deve substituir este endereço IP pelo IP do servidor Oracle.
Seguem algumas referências usadas na produção deste roteiro:
Youtube Oracle Learning - https://www.youtube.com/@OracleLearning
Oracle Database Documentation - https://docs.oracle.com/en/database/oracle/oracle-database/index.html
Youtube WebMundi - https://www.youtube.com/watch?v=ndSgcxI5siI