Criar uma instância de banco de dados Oracle e conectar-se a ela - Amazon Relational Database Service

Criar uma instância de banco de dados Oracle e conectar-se a ela

Este tutorial cria uma instância do EC2 e uma instância de banco de dados Oracle. O tutorial mostra como acessar a instância de banco de dados pela instância do EC2 usando um cliente Oracle padrão. Como prática recomendada, este tutorial cria uma instância de banco de dados privada em uma nuvem privada virtual (VPC). Na maioria dos casos, outros recursos na mesma VPC, como instâncias do EC2, podem acessar a instância de banco de dados, mas recursos fora da VPC não podem acessá-la.

Depois de concluir o tutorial, haverá uma sub-rede pública e privada em cada zona de disponibilidade na sua VPC. Em uma zona de disponibilidade, a instância do EC2 está na sub-rede pública e a instância de banco de dados está na sub-rede privada.

Importante

Não há cobrança para criar uma conta da AWS. No entanto, ao concluir este tutorial, é possível gerar custos para os recursos da AWS que você usa. Se esses recursos não forem mais necessários após a conclusão do tutorial, você poderá excluí-los.

O diagrama a seguir mostrará a configuração quando o tutorial estiver completo.


			Instância do EC2 e instância de banco de dados Oracle.

Esse tutorial permite criar recursos usando um dos seguintes métodos:

O primeiro método usa Criação fácil para criar uma instância de banco de dados privada do Oracle com o AWS Management Console. Aqui, você especifica somente o tipo de mecanismo de banco de dados, o tamanho da instância de banco de dados e o identificador da instância de banco de dados. A opção Easy create (Criação fácil) usa a configuração padrão para as outras opções de configuração.

Ao usar a opção Criação padrão, é possível especificar mais opções de configuração ao criar uma instância de banco de dados. Essas opções incluem configurações de disponibilidade, segurança, backups e manutenção. Para criar uma instância de banco de dados pública, você deve usar a Criação padrão. Para ter mais informações, consulte Criar uma instância de banco de dados do Amazon RDS.

Pré-requisitos

Antes de começar, conclua as etapas nas seguintes seções:

Etapa 1: Criar uma instância do EC2

Crie uma instância do Amazon EC2 que você usará para se conectar ao banco de dados.

Para criar uma instância do EC2
  1. Faça login no AWS Management Console e abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No canto superior direito do AWS Management Console, selecione a Região da AWS em que você deseja criar a instância do EC2.

  3. Escolha Painel do EC2 e Executar instância, conforme mostrado na imagem a seguir.

    
                    Painel do EC2.

    A página Iniciar uma instância é aberta.

  4. Escolha as configurações a seguir na página Iniciar uma instância.

    1. Em Name and tags (Nome e etiquetas), em Name (Nome), insira ec2-database-connect.

    2. Em Imagens de aplicações e sistemas operacionais (imagem de máquina da Amazon), selecione Amazon Linux e, depois, AMI do Amazon Linux 2023. Mantenha as seleções padrão nas outras opções.

      
                            Escolha uma imagem de máquina da Amazon.
    3. Em Instance type (Tipo de instância), escolha t2.micro.

    4. Em Key pair (login) (Par de chaves (login)), escolha um Key pair name (Nome do par de chaves) para usar um par de chaves existente. Para criar um par de chaves para a instância do Amazon EC2, escolha Create new key pair (Criar um novo key pair), depois use a janela Create key pair (Criar par de chaves) para criá-lo.

      Para ter mais informações sobre como criar um par de chaves, consulte Criar um par de chaves no Guia do usuário do Amazon EC2 para instâncias do Linux.

    5. Para Permitir tráfego SSH, em Configurações de rede, selecione a origem das conexões SSH com a instância do EC2.

      Você pode escolher My IP (Meu IP) se o endereço IP exibido estiver correto para conexões SSH. Caso contrário, determine o endereço IP a ser usado para se conectar a instâncias do EC2 em sua VPC usando Secure Shell (SSH). Para determinar seu endereço IP público, em uma janela ou guia diferente do navegador, é possível usar o serviço em https://checkip.amazonaws.com. Um exemplo de endereço IP é 192.0.2.1/32.

      Em muitos casos, você pode se conectar por meio de um provedor de serviços de Internet (ISP) ou atrás de um firewall sem um endereço IP estático. Em caso afirmativo, determine o intervalo de endereços IP utilizado por computadores cliente.

      Atenção

      Se usar 0.0.0.0/0 para acesso do SSH, você possibilitará que todos os endereços IP acessem suas instâncias públicas do EC2 usando SSH. Essa abordagem é aceitável por um período curto em um ambiente de teste, mas não é seguro em ambientes de produção. Em produção, autorize somente um endereço IP específico ou um intervalo de endereços para acessar suas instâncias do EC2 usando SSH.

      A imagem a seguir mostra um exemplo da seção Configurações de rede.

      
                            Configurações de rede para uma instância do EC2.
    6. Mantenha os valores padrão para as seções restantes.

    7. Revise um resumo da configuração da instância do EC2 no painel Resumo e, quando estiver com tudo pronto, escolha Executar instância.

  5. Na página Status de inicialização, anote o identificador de sua nova instância do EC2, por exemplo: i-1234567890abcdef0.

    
                    Identificador de instância do EC2 na página Status de inicialização.
  6. Selecione o identificador de instância do EC2 para abrir a lista de instâncias do EC2 e, depois, selecione sua instância do EC2.

  7. Na guia Detalhes, observe os seguintes valores, necessários ao se conectar utilizando SSH:

    1. No Resumo da instância, observe o valor do DNS IPv4 público.

      
                            Nome do DNS público do EC2 na guia Detalhes da página Instâncias.
    2. Em Detalhes da instância, observe o valor do nome do par de chaves.

      
                            Nome do par de chaves do EC2 na guia Detalhes da página Instâncias.
  8. Espere até o Estado da instância para a instância do EC2 ficar como Executando antes de continuar.

Etapa 2: Criar uma instância de banco de dados Oracle

O bloco de construção básico do Amazon RDS é a instância do banco de dados. Este ambiente é onde você executa seus bancos de dados Oracle.

Neste exemplo, use Criação fácil para criar uma instância de banco de dados executando o mecanismo de banco de dados Oracle com uma classe de instância de banco de dados db.m5.large.

Como criar uma instância de banco de dados Oracle com a criação fácil
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No canto superior direito do console do Amazon RDS, escolha a Região da AWS na qual você deseja criar a instância de banco de dados.

  3. No painel de navegação, escolha Databases (Bancos de dados).

  4. Selecione a opção Create database (Criar banco de dados) e verifique se a opção Easy Create (Criação fácil) está habilitada.

    
					Opção Criação fácil.
  5. Em Configuration (Configuração), escolha Oracle.

  6. Em DB instance size (Tamanho da instância de banco de dados), escolha Dev/Test (Desenvolvimento/teste).

  7. Em Identificador de instância de banco de dados, insira database-test1.

  8. Em Nome do usuário principal, insira um nome para o usuário mestre ou deixe o nome padrão.

    A página Create database (Criar banco de dados) deve ser semelhante à imagem a seguir.

    
					Página Criar banco de dados.
  9. Para usar uma senha primária gerada automaticamente para a instância de banco de dados, marque a opção Gerar uma senha automaticamente.

    Para inserir sua senha primária, desmarque a opção Gerar uma senha automaticamente, depois insira a mesma senha em Senha primária e em Confirmar senha.

  10. Para configurar uma conexão com a instância do EC2 que você criou anteriormente, abra Configurar conexão do EC2: opcional.

    Selecione Conectar-se a um recurso computacional do EC2. Selecione a instância do EC2 que você criou anteriormente.

    
					Configure a opção de conexão do EC2.
  11. Abra Visualizar as configurações padrão da criação fácil.

    
					Configurações padrão da criação fácil.

    Você pode examinar as configurações padrão usadas com a opção Easy Create (Criação fácil). A coluna Editável após a criação do banco de dados mostra quais opções podem ser alteradas após a criação do banco de dados.

    • Se uma configuração tiver Não nessa coluna e você quiser uma configuração diferente, poderá usar a opção Criação padrão para criar a instância de banco de dados.

    • Se uma configuração tiver Sim nessa coluna e você quiser uma configuração diferente, poderá usar a opção Criação padrão para criar a instância de banco de dados, ou modificar a instância de banco de dados depois de criá-la para alterar a configuração.

  12. Selecione Criar banco de dados.

    Para exibir o nome de usuário mestre e a senha da instância de banco de dados, escolha View credential details (Ver detalhes da credencial).

    Use o nome de usuário e a senha que aparecem para se conectar à instância de banco de dados como o usuário mestre.

    Importante

    Você não pode visualizar a senha do usuário principal novamente. Caso você não a registre, talvez seja necessário alterá-la.

    Se for necessário alterar a senha do usuário mestre depois que a instância de banco de dados estiver disponível, será possível modificar a instância de banco de dados para fazer isso. Para ter mais informações sobre a modificação de uma instância de banco de dados, consulte Modificar uma instância de banco de dados do Amazon RDS.

  13. Na lista Bancos de dados, selecione o nome da nova instância de banco de dados Oracle para mostrar seus detalhes.

    A instância de banco de dados permanecerá no status Criando até estar pronta para ser usada.

    
					Detalhes da instância de banco de dados.

    Quando o status muda para Available (Disponível), você pode se conectar à instância de banco de dados. Dependendo da classe da instância de banco de dados e da quantidade de armazenamento, pode levar até 20 minutos para que a nova instância esteja disponível. Enquanto a instância de banco de dados está sendo criada, você pode passar para a próxima etapa e criar uma instância do EC2.

(Opcional) Criar VPC, instância do EC2 e instância de banco de dados do Oracle usando o AWS CloudFormation

Em vez de usar o console para criar a VPC, a instância do EC2 e a instância de banco de dados do Oracle, você pode usar o AWS CloudFormation para provisionar recursos da AWS tratando a infraestrutura como código. Para ajudar a organizar os recursos da AWS em unidades menores e mais gerenciáveis, você pode usar a funcionalidade de pilha aninhada do AWS CloudFormation. Consulte mais informações em Criar uma pilha no console do AWS CloudFormation e Trabalhar com pilhas aninhadas.

Importante

O AWS CloudFormation é gratuito, mas os recursos que o CloudFormation são ativos. Você incorre nas taxas de uso padrão para esses recursos até que os encerre. O total de cobranças será mínimo. Consulte informações de como minimizar as cobranças em Nível gratuito da AWS.

Para criar recursos usando o console do AWS CloudFormation, conclua as seguintes etapas:

  • Etapa 1: baixar o modelo do CloudFormation

  • Etapa 2: configurar recursos usando o CloudFormation

Baixar o modelo do CloudFormation

Um modelo do CloudFormation é um arquivo de texto JSON ou YAML que contém as informações da configuração dos recursos que você deseja criar na pilha. Esse modelo também cria uma VPC e um bastion host para você junto com a instância do RDS.

Para baixar o arquivo de modelo, abra o link Oracle CloudFormation template.

Na página do Github, clique no botão Baixar arquivo bruto para salvar o arquivo YAML do modelo.

Configurar recursos usando o CloudFormation

nota

Antes de iniciar esse processo, verifique se você tem um par de chaves para uma instância do EC2 na Conta da AWS. Para obter mais informações, consulte Pares de chaves do Amazon EC2 e instâncias do Linux.

Ao usar o modelo do AWS CloudFormation, você deve selecionar os parâmetros certos para garantir que os recursos sejam criados corretamente. Siga as etapas abaixo:

  1. Faça login no AWS Management Console e abra o console AWS CloudFormation em https://console.aws.amazon.com/cloudformation.

  2. Selecione Create Stack (Criar pilha).

  3. Na seção Especificar modelo, selecione Fazer upload de um arquivo de modelo do computador e escolha Próximo.

  4. Na página Especificar detalhes da pilha, defina os seguintes parâmetros:

    1. Defina o Nome da pilha como OracleTestStack.

    2. Em Parâmetros, defina Zonas de disponibilidade selecionando três zonas de disponibilidade.

    3. Em Configuração do bastion host do Linux, em Nome da chave, selecione um par de chaves para fazer login na instância do EC2.

    4. Em Configurações do bastion host do Linux, defina o Intervalo de IP permitido para o endereço IP. Para conectar instâncias do EC2 à VPC usando o Secure Shell (SSH), determine o endereço IP público usando o serviço em https://checkip.amazonaws.com. Um exemplo de endereço IP é 192.0.2.1/32.

      Atenção

      Se usar 0.0.0.0/0 para acesso do SSH, você possibilitará que todos os endereços IP acessem suas instâncias públicas do EC2 usando SSH. Essa abordagem é aceitável por um período curto em um ambiente de teste, mas não é seguro em ambientes de produção. Em produção, autorize somente um endereço IP específico ou um intervalo de endereços para acessar suas instâncias do EC2 usando SSH.

    5. Em Configuração geral do banco de dados, defina a Classe da instância do banco de dados como db.t3.micro.

    6. Defina o Nome do banco de dados como database-test1.

    7. Em Nome de usuário principal do banco de dados, insira um nome para o usuário principal.

    8. Defina a Gerenciar senha de usuário principal do banco de dados com o Secrets Manager como false para esse tutorial.

    9. Em Senha do banco de dados, defina uma senha de sua escolha. Lembre-se dessa senha para as etapas seguintes do tutorial.

    10. Em Configuração de armazenamento de banco de dados, defina o Tipo de armazenamento do banco de dados como gp2.

    11. Em Configuração de monitoramento de banco de dados, defina Habilitar o Performance Insights do RDS como falso.

    12. Deixe todas as outras configurações com os valores padrão. Clique em Próximo para continuar.

  5. Na página Configurar opções de pilha, mantenha todas as opções padrão. Clique em Próximo para continuar.

  6. Na página Revisar pilha, selecione Enviar depois de verificar as opções do banco de dados e do bastion host do Linux.

Depois que o processo de criação da pilha for concluído, visualize as pilhas com os nomes BastionStack e RDSNS para anotar as informações necessárias para se conectar ao banco de dados. Consulte mais informações em Viewing AWS CloudFormation stack data and resources on the AWS Management Console.

Etapa 3: Conectar seu cliente SQL a uma instância de banco de dados Oracle.

Você pode usar qualquer aplicação cliente padrão SQL para se conectar à instância de banco de dados. Neste exemplo, você se conecta a uma instância de banco de dados Oracle usando o cliente da linha de comando Oracle.

Como conectar-se a uma instância de banco de dados Oracle
  1. Encontre o endpoint (nome de DNS) e o número da porta para sua instância de banco de dados.

    1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

    2. No canto superior direito do console do Amazon RDS, escolha a Região da AWS da instância de banco de dados.

    3. No painel de navegação, escolha Bancos de dados.

    4. Escolha o nome da instância de banco de dados Oracle para exibir os detalhes.

    5. Na guia Connectivity & security (Conectividade e segurança), copie o endpoint. Além disso, anote o número da porta. Você precisará do endpoint e do número da porta para conectar-se à instância de banco de dados.

      
							Conecte-se a uma instância de banco de dados Oracle.
  2. Conecte-se à instância do EC2 que você criou anteriormente, seguindo as etapas em Conectar-se a uma instância do Linux no Guia do usuário do Amazon EC2 para instâncias do Linux.

    Recomendamos que você se conecte à sua instância do EC2 utilizando SSH. Se o utilitário cliente SSH estiver instalado no Windows, Linux ou Mac, você poderá se conectar à instância utilizando o seguinte formato de comando:

    ssh -i location_of_pem_file ec2-user@ec2-instance-public-dns-name

    Por exemplo, suponha que ec2-database-connect-key-pair.pem esteja armazenado em /dir1 no Linux e que o DNS IPv4 público para sua instância do EC2 seja ec2-12-345-678-90.compute-1.amazonaws.com. Seu comando SSH teria a seguinte aparência:

    ssh -i /dir1/ec2-database-connect-key-pair.pem ec2-user@ec2-12-345-678-90.compute-1.amazonaws.com
  3. Obtenha as últimas correções de bugs e atualizações de segurança atualizando o software na instância do EC2. Para fazer isso, use o comando a seguir.

    nota

    A opção -y instala as atualizações sem solicitar confirmação. Para examinar atualizações antes da instalação, omita essa opção.

    sudo dnf update -y
  4. Em um navegador da Web, acesse https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html.

  5. Para obter a versão mais recente do banco de dados que aparece na página da Web, copie os links .rpm (não os links .zip) para o Instant Client Basic Package e o SQL*Plus Package. Por exemplo, os links a seguir são para o Oracle Database versão 21.9:

    • https://download.oracle.com/otn_software/linux/instantclient/219000/oracle-instantclient-basic-21.9.0.0.0-1.el8.x86_64.rpm

    • https://download.oracle.com/otn_software/linux/instantclient/219000/oracle-instantclient-sqlplus-21.9.0.0.0-1.el8.x86_64.rpm

  6. Em sua sessão SSH, execute o comando wget para baixar os arquivos .rpm dos links que você obteve na etapa anterior. O exemplo a seguir baixa os arquivos .rpm para a versão 21.9 do Oracle Database:

    wget https://download.oracle.com/otn_software/linux/instantclient/219000/oracle-instantclient-basic-21.9.0.0.0-1.el8.x86_64.rpm wget https://download.oracle.com/otn_software/linux/instantclient/219000/oracle-instantclient-sqlplus-21.9.0.0.0-1.el8.x86_64.rpm
  7. Instale os pacotes executando o comando dnf da seguinte forma:

    sudo dnf install oracle-instantclient-*.rpm
  8. Inicie o SQL*Plus e conecte-se à instância de banco de dados do Oracle. Por exemplo, insira o comando a seguir.

    Substitua o endpoint da instância de banco de dados (nome DNS) por oracle-db-instance-endpoint e o nome do usuário principal usado por admin. Quando você usa a Criação fácil para Oracle, o nome do banco de dados é DATABASE. Forneça a senha mestra usada quando for solicitada uma senha.

    sqlplus admin@oracle-db-instance-endpoint:1521/DATABASE

    Depois de inserir a senha do usuário, você deverá ver uma saída semelhante à seguinte.

    SQL*Plus: Release 21.0.0.0.0 - Production on Wed Mar 1 16:41:28 2023 Version 21.9.0.0.0 Copyright (c) 1982, 2022, Oracle. All rights reserved. Enter password: Last Successful login time: Wed Mar 01 2023 16:30:52 +00:00 Connected to: Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production Version 19.18.0.0.0 SQL>

    Para ter mais informações sobre como se conectar à instância de banco de dados do RDS para Oracle, consulte Conectar-se a uma instância de banco de dados do RDS para Oracle. Se você não conseguir se conectar à sua instância de banco de dados, consulte Não é possível conectar-se à instância de banco de dados do Amazon RDS.

    Por questões de segurança, é uma prática recomendada usar conexões criptografadas. Use uma conexão Oracle não criptografada apenas quando o cliente e o servidor estiverem na mesma VPC e a rede for confiável. Para obter informações sobre como usar conexões criptografadas, consulte Proteção das conexões de instância de banco de dados Oracle.

  9. Executar comandos SQL.

    Por exemplo, o seguinte comando SQL mostra a data atual:

    SELECT SYSDATE FROM DUAL;

Etapa 4: Excluir a instância do EC2 e a instância de banco de dados

Depois de se conectar e explorar a instância do EC2 e a instância de banco de dados criadas, exclua-as para não receber mais cobranças por elas.

Se você usou o AWS CloudFormation para criar recursos, ignore essa etapa e passe para a próxima.

Como excluir a instância do EC2
  1. Faça login no AWS Management Console e abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, escolha Instâncias.

  3. Selecione a instância do EC2 e escolha Estado da instância, Encerrar instância.

  4. Quando a confirmação for solicitada, escolha Terminate (Encerrar).

Para ter mais informações sobre como excluir uma instância do EC2, consulte Encerrar uma instância no Guia do usuário do Amazon EC2 para instâncias do Linux.

Como excluir uma instância de banco de dados sem snapshot de banco de dados final
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No painel de navegação, escolha Databases (Bancos de dados).

  3. Escolha a instância de banco de dados que você deseja excluir.

  4. Em Actions, selecione Delete.

  5. Desmarque Criar snapshot final? e Reter backups automatizados.

  6. Conclua a confirmação e escolha Excluir.

(Opcional) Excluir a instância do EC2 e a instância de banco de dados criada com o CloudFormation

Se você usou o AWS CloudFormation para criar recursos, exclua a pilha do CloudFormation depois de conectar e explorar a amostra de instância do EC2 e de instância de banco de dados para não receber mais cobranças por elas.

Para excluir os recursos do CloudFormation
  1. Abra o console do AWS CloudFormation.

  2. Na página Pilhas no console do CloudFormation, selecione a pilha raiz (a pilha sem o nome VPCStack, BastionStack ou RDSNS).

  3. Escolha Excluir.

  4. Selecione Excluir pilha quando a confirmação for solicitada.

Consulte mais informações de como excluir uma pilha no CloudFormation em Deleting a stack on the AWS CloudFormation console no Guia do usuário do AWS CloudFormation.

(Opcional) Conectar a instância de banco de dados a uma função do Lambda

Você também pode conectar a instância de banco de dados do RDS para Oracle a um recurso de computação sem servidor do Lambda. As funções do Lambda permitem que você execute código sem provisionar nem gerenciar a infraestrutura. Uma função do Lambda também permite que você responda automaticamente a solicitações de execução de código em qualquer escala, de dezenas de eventos por dia a centenas por segundo. Para ter mais informações, consulte Conectar automaticamente uma função do Lambda e uma instância de banco de dados.