UTL_SMTP打开连接花费太多时间

时间:2019-02-18 07:22:17

标签: oracle oracle11g smtp oracle12c aix

最近我们已将oracle数据库升级到12c。

我面临通过utl_smtp发送邮件的问题。

我们发送邮件的过程是

因此UTL_SMTP.open_connection(p_smtp_host, p_smtp_port)需要20秒才能打开连接。在早期,它工作正常。

有解决方案吗?

CREATE OR REPLACE PROCEDURE send_mail_xyz 
    (p_to        IN VARCHAR2,
     p_from      IN VARCHAR2,
     p_message   IN VARCHAR2,
     p_smtp_host IN VARCHAR2,
     p_smtp_port IN NUMBER DEFAULT 25)
AS
    l_mail_conn   UTL_SMTP.connection;
BEGIN
    dbms_output.put_line('9.1'||sysdate);
    l_mail_conn := UTL_SMTP.open_connection(p_smtp_host, p_smtp_port);
    dbms_output.put_line('9.2'||sysdate);
    UTL_SMTP.helo(l_mail_conn, p_smtp_host);
    UTL_SMTP.mail(l_mail_conn, p_from);
    UTL_SMTP.rcpt(l_mail_conn, p_to);
    UTL_SMTP.data(l_mail_conn, p_message || UTL_TCP.crlf || UTL_TCP.crlf);
    UTL_SMTP.quit(l_mail_conn);
END;
/

通过send_mail_xyz发送邮件

输出为

  

匿名块已完成
  9.118-02-2019 12:11:25
  9.218-02-2019 12:31:25

0 个答案:

没有答案