Este repositório contém um guia passo a passo para instalar e configurar o Oracle Database 21c Express Edition (XE) em uma máquina virtual Ubuntu 24.04. O processo inclui a instalação via Docker, bem como a instalação nativa usando o Oracle Instant Client, além da resolução de problemas comuns encontrados durante a instalação.
- Ambiente Utilizado
- Passo a Passo da Instalação
- Resolução de Problemas
- Configuração do Ambiente de Teste
- Comandos Úteis para Administração
- Conclusão
- Sistema Operacional: Ubuntu 24.04 (Noble Numbat)
- Oracle Database: 21c Express Edition (XE)
- Ferramentas Adicionais: Docker (opcional para instalação via container)
- Hardware Mínimo:
- 2 GB de RAM (recomendado)
- 10 GB de armazenamento
Execute os seguintes comandos para instalar o Docker:
sudo apt update
sudo apt install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker
Para executar o Oracle XE dentro de um container Docker, utilize o seguinte comando:
docker run -d --name oracle-xe -p 1521:1521 -p 5500:5500 -e ORACLE_PASSWORD=2502 gvenzl/oracle-xe:21.3.0
Verifique se o container está em execução com o comando:
docker ps
Para acessar o banco de dados usando SQL*Plus dentro do container, execute:
docker exec -it oracle-xe sqlplus system/2502@XEPDB1
Execute os seguintes comandos para instalar as dependências e baixar o Oracle Instant Client:
sudo apt update
sudo apt install -y wget unzip libaio1 libnsl2
# Baixar Instant Client (Basic + SQL*Plus)
wget https://download.oracle.com/otn_software/linux/instantclient/instantclient-basiclite-linuxx64.zip
wget https://download.oracle.com/otn_software/linux/instantclient/instantclient-sqlplus-linuxx64.zip
# Extrair os arquivos
unzip instantclient-basiclite-linuxx64.zip -d /opt/oracle
unzip instantclient-sqlplus-linuxx64.zip -d /opt/oracle
Edite o arquivo ~/.bashrc
e adicione as variáveis de ambiente:
export ORACLE_HOME=/opt/oracle/instantclient_23_7
export LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME:$PATH
Recarregue o arquivo de configuração:
source ~/.bashrc
Execute o seguinte comando para testar a conexão com o banco de dados:
sqlplus system/2502@//localhost:1521/XEPDB1
Causa: O sistema não encontra o executável do SQL*Plus.
Solução:
# Criar link simbólico
sudo ln -s /opt/oracle/instantclient_23_7/sqlplus /usr/local/bin/sqlplus
# Verificar dependências
ldd /opt/oracle/instantclient_23_7/sqlplus
Causa: Biblioteca libaio1 ausente no Ubuntu 24.04.
Solução:
sudo apt install -y libaio2 # Ubuntu 24.04 ou superior
sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.2 /usr/lib/x86_64-linux-gnu/libaio.so.1
Causa: O comando foi executado no terminal Linux, não dentro do SQL*Plus.
Solução:
#Acesso sem ser pelo SQL*PLUS
LD_LIBRARY_PATH=/opt/oracle/instantclient_23_7 /opt/oracle/instantclient_23_7/sqlplus system/2502@//localhost:1521/XEPDB1
# Acessar SQL*Plus primeiro
sqlplus /nolog
# Depois, dentro do SQL*Plus, execute:
CONNECT teste_user/teste123
Execute os seguintes comandos SQL para criar um tablespace e usuário:
CREATE TABLESPACE teste_ts DATAFILE 'teste_ts.dbf' SIZE 100M AUTOEXTEND ON;
CREATE USER teste_user IDENTIFIED BY teste123 DEFAULT TABLESPACE teste_ts QUOTA UNLIMITED ON teste_ts;
GRANT CONNECT, RESOURCE, CREATE VIEW TO teste_user;
Crie uma tabela de exemplo e insira dados:
-- Tabela CLIENTES
CREATE TABLE clientes (
id NUMBER GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
nome VARCHAR2(100),
email VARCHAR2(100) UNIQUE
);
-- Inserir dados
INSERT INTO clientes (nome, email) VALUES ('João Silva', 'joao@exemplo.com');
COMMIT;
Comando | Descrição |
---|---|
sqlplus system/2502@//localhost:1521/XEPDB1 |
Conectar como SYSTEM |
SELECT tablespace_name FROM dba_tablespaces; |
Listar tablespaces |
SELECT username FROM dba_users; |
Listar usuários |
ALTER USER teste_user IDENTIFIED BY nova_senha; |
Alterar senha |
Este documento abrange:
✅ Instalação via Docker (recomendado para testes rápidos)
✅ Instalação nativa com Oracle Instant Client
✅ Correção de erros comuns
✅ Configuração de ambiente de teste