Oracle UTL_MAIL - Amazon Relational Database Service

Oracle UTL_MAIL

O Amazon RDS oferece suporte para Oracle UTL_MAIL com o uso da opção UTL_MAIL e de servidores SMTP. É possível enviar e-mails diretamente de seu banco de dados usando o pacote UTL_MAIL. O Amazon RDS é compatível com o UTL_MAIL para as seguintes edições e versões do Oracle:

  • Oracle Database 21c (21.0.0.0), todas as versões

  • Oracle Database 19c (19.0.0.0), todas as versões

Veja a seguir algumas limitações do uso do UTL_MAIL:

  • UTL_MAIL não oferece suporta para Transport Layer Security (TLS) e, portanto, os e-mails não são criptografados.

    Para se conectar com segurança a recursos SSL/TLS remotos criando e carregando carteiras Oracle personalizadas, siga as instruções em Configurar o acesso UTL_HTTP usando certificados e uma carteira Oracle.

    Os certificados específicos que são necessários para sua carteira variam por serviço. Para serviços da AWS, eles geralmente podem ser encontrados no Repositório de serviços de confiança da Amazon.

  • UTL_MAIL não oferece suporte para autenticação com servidores SMTP.

  • Você só pode enviar um anexo em um e-mail.

  • Você não pode enviar anexos com mais de 32 K.

  • Você só pode usar as codificações de caracteres ASCII e Extended Binary Coded Decimal Interchange Code (EBCDIC).

  • A porta SMTP (25) é limitada com base nas políticas do proprietário da interface de rede elástica.

Quando você habilita o UTL_MAIL, somente o usuário mestre da sua instância de banco de dados recebe o privilégio de execução. Se necessário, o usuário mestre pode conceder o privilégio de execução a outros usuários para que eles possam usar o UTL_MAIL.

Importante

Recomendamos que você habilite o recurso de auditoria incorporada da Oracle para rastrear o uso dos procedimentos UTL_MAIL.

Pré-requisitos para o Oracle UTL_MAIL

Veja a seguir os pré-requisitos para usar o Oracle UTL_MAIL:

  • Um ou mais servidores SMTP, e os endereços IP correspondentes ou nomes de servidor de nomes de domínio (DNS) públicos ou particulares. Para obter mais informações sobre nomes DNS privados resolvidos através de um servidor DNS personalizado, consulte Configuração de um servidor DNS personalizado.

Adicionar a opção Oracle UTL_MAIL

O processo geral para adicionar a opção Oracle UTL_MAIL a uma instância de banco de dados é o seguinte:

  1. Crie um novo grupo de opções, ou copie ou modifique um existente.

  2. Adicione a opção ao grupo de opções.

  3. Associe o grupo de opções à instância de banco de dados.

Depois de adicionar a opção UTL_MAIL, assim que o grupo de opções estiver ativo, o UTL_MAIL ficará ativo.

Para adicionar a opção UTL_MAIL a uma instância de banco de dados
  1. Determine o grupo de opções que você deseja usar. Você pode criar um novo grupo de opções ou usar um existente. Se você quiser usar um grupo de opções existente, vá para a próxima etapa. Caso contrário, crie um grupo de opções de banco de dados personalizado com as seguintes configurações:

    1. Em Engine (Mecanismo), selecione a edição do Oracle que você deseja usar.

    2. Para Major engine version (Versão do mecanismo principal), escolha a versão da sua instância de banco de dados.

    Para obter mais informações, consulte Criar um grupo de opções.

  2. Adicione a opção UTL_MAIL ao grupo de opções. Para mais informações sobre a adição de opções, consulte Adicionar uma opção a um grupo de opções.

  3. Aplique o grupo de opções a uma instância de banco de dados nova ou existente:

Uso do Oracle UTL_MAIL

Depois de habilitar a opção UTL_MAIL, você deve configurar o servidor SMTP antes de começar a usá-lo.

Você configura o servidor SMTP definindo o parâmetro SMTP_OUT_SERVER como um endereço IP válido ou um nome DNS público. Para o parâmetro SMTP_OUT_SERVER, você pode especificar uma lista separada por vírgulas dos endereços de vários servidores. Se o primeiro servidor não estiver disponível, o UTL_MAIL tentará o próximo servidor, e assim por diante.

Você pode definir o SMTP_OUT_SERVER padrão para uma instância de banco de dados usando um parameter group de banco de dados. Você pode definir o parâmetro SMTP_OUT_SERVER para uma sessão executando o seguinte código no seu banco de dados na sua instância de banco de dados.

ALTER SESSION SET smtp_out_server = mailserver.domain.com:25;

Depois que a opção UTL_MAIL estiver ativada e o seu SMTP_OUT_SERVER estiver configurado, você poderá enviar o e-mail usando o procedimentoSEND. Para obter mais informações, consulte UTL_MAIL na documentação da Oracle.

Remover a opção Oracle UTL_MAIL

Você pode remover a opção Oracle UTL_MAIL de uma instância de banco de dados.

Para remover UTL_MAIL de uma instância de banco de dados, siga um destes procedimentos:

  • Para remover UTL_MAIL de várias instâncias de bancos de dados, remova a opção UTL_MAIL do grupo de opções ao qual elas pertencem. Essa alteração afeta todas as instâncias de bancos de dados que usam o grupo de opções. Para obter mais informações, consulte Remover uma opção de um grupo de opções.

  • Para remover UTL_MAIL de uma única instância de banco de dados, modifique essa instância e especifique um grupo de opções diferente que não inclua a opção UTL_MAIL. Você pode especificar um grupo de opções padrão (vazio) ou criar um grupo de opções personalizado diferente. Para obter mais informações, consulte Modificar uma instância de banco de dados do Amazon RDS.

Solução de problemas

Os problemas a seguir podem ocorrer ao usar o UTL_MAIL com o Amazon RDS.