

# Oracle UTL\$1MAIL
<a name="Oracle.Options.UTLMAIL"></a>

O Amazon RDS oferece suporte para Oracle UTL\$1MAIL com o uso da opção UTL\$1MAIL e de servidores SMTP. É possível enviar e-mails diretamente de seu banco de dados usando o pacote UTL\$1MAIL. O Amazon RDS é compatível com o UTL\$1MAIL 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\$1MAIL: 
+ UTL\$1MAIL 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\$1HTTP usando certificados e uma carteira Oracle](Oracle.Concepts.ONA.md).

  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](https://www.amazontrust.com/repository/).
+ UTL\$1MAIL 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\$1MAIL, 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\$1MAIL. 

**Importante**  
Recomendamos que você habilite o recurso de auditoria incorporada da Oracle para rastrear o uso dos procedimentos UTL\$1MAIL. 

## Pré-requisitos para o Oracle UTL\$1MAIL
<a name="Oracle.Options.UTLMAIL.PreReqs"></a>

Veja a seguir os pré-requisitos para usar o Oracle UTL\$1MAIL:
+ 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](Appendix.Oracle.CommonDBATasks.System.md#Appendix.Oracle.CommonDBATasks.CustomDNS). 

## Adicionar a opção Oracle UTL\$1MAIL
<a name="Oracle.Options.UTLMAIL.Add"></a>

O processo geral para adicionar a opção Oracle UTL\$1MAIL a uma instância de banco de dados é o seguinte: 

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

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

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

Depois de adicionar a opção UTL\$1MAIL, assim que o grupo de opções estiver ativo, o UTL\$1MAIL ficará ativo. 

**Para adicionar a opção UTL\$1MAIL 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. 

   1. 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](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Adicione a opção **UTL\$1MAIL** 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](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 

1. Aplique o grupo de opções a uma instância de banco de dados nova ou existente: 
   + Para uma nova instância de banco de dados, você aplica o grupo de opções ao executar a instância. Para ter mais informações, consulte [Criar uma instância de banco de dados do Amazon RDS](USER_CreateDBInstance.md). 
   + Para uma instância de banco de dados existente, você aplica o grupo de opções modificando a instância e anexando o novo grupo de opções. Para obter mais informações, consulte [Modificar uma instância de banco de dados do Amazon RDS](Overview.DBInstance.Modifying.md). 

## Uso do Oracle UTL\$1MAIL
<a name="Oracle.Options.UTLMAIL.Using"></a>

Depois de habilitar a opção UTL\$1MAIL, você deve configurar o servidor SMTP antes de começar a usá-lo. 

Você configura o servidor SMTP definindo o parâmetro SMTP\$1OUT\$1SERVER como um endereço IP válido ou um nome DNS público. Para o parâmetro SMTP\$1OUT\$1SERVER, 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\$1MAIL tentará o próximo servidor, e assim por diante. 

Você pode definir o SMTP\$1OUT\$1SERVER padrão para uma instância de banco de dados usando um [parameter group de banco de dados](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html). Você pode definir o parâmetro SMTP\$1OUT\$1SERVER para uma sessão executando o seguinte código no seu banco de dados na sua instância de banco de dados. 

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

Depois que a opção UTL\$1MAIL estiver ativada e o seu SMTP\$1OUT\$1SERVER estiver configurado, você poderá enviar o e-mail usando o procedimento`SEND`. Para obter mais informações, consulte [UTL\$1MAIL](http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/u_mail.htm#BABFJJBD) na documentação da Oracle. 

## Remover a opção Oracle UTL\$1MAIL
<a name="Oracle.Options.UTLMAIL.Remove"></a>

Você pode remover a opção Oracle UTL\$1MAIL de uma instância de banco de dados. 

Para remover UTL\$1MAIL de uma instância de banco de dados, siga um destes procedimentos: 
+ Para remover UTL\$1MAIL de várias instâncias de bancos de dados, remova a opção UTL\$1MAIL 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](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Para remover UTL\$1MAIL 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\$1MAIL. 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](Overview.DBInstance.Modifying.md). 

## Solução de problemas
<a name="Oracle.Options.UTLMAIL.Troubleshooting"></a>

Os problemas a seguir podem ocorrer ao usar o UTL\$1MAIL com o Amazon RDS. 
+ Limitação. A porta SMTP (25) é limitada com base nas políticas do proprietário da interface de rede elástica. Se você puder enviar e-mails com sucesso usando o UTL\$1MAIL e vir o erro `ORA-29278: SMTP transient error: 421 Service not available`, você provavelmente está sendo limitado. Se você perceber limitação com a entrega de e-mails, recomendamos implementar um algoritmo de recuo. Para obter mais informações sobre algoritmos de recuo, consulte [Repetições de erro e recuo exponencial na AWS](https://docs.aws.amazon.com/general/latest/gr/api-retries.html) e [Como lidar com um erro "Limitação taxa máxima de envio excedida"](https://aws.amazon.com/blogs/ses/how-to-handle-a-throttling-maximum-sending-rate-exceeded-error/). 

  Você pode solicitar que essa limitação seja removida. Para obter mais informações, consulte [Como faço para remover a limitação da porta 25 na minha instância do EC2?](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-port-25-throttle/).