我想从oracle数据库发送电子邮件。
所以我做了以下步骤
@F:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\utlmail.sql
@F:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\prvtmail.plb
alter system set smtp_out_server = 'webmail.vilsoft.co.in:25' scope=both;
exec utl_mail.send(sender=> 'Id1@vilsoft.co.in',
recipients=>'Id2@vilsoft.co.in',
subject=>'test mail',message=>'hi');
PL / SQL程序已成功完成。
因此邮件会正确发送到目的地。
但是当我想将邮件从一台服务器发送到另一台服务器时,我执行以下查询
SQL> exec utl_mail.send(sender=> 'ID1@vilsoft.co.in',recipients=>'Id2@gmail.com',
subject=>'test mail',message=>'hi');
然后发生以下错误......
BEGIN utl_mail.send(sender=> 'ID1@vilsoft.co.in',recipients=>'Id2@gmail.com',
subject=>'test mail',message=>'hi');
END;
*
ERROR at line 1:
ORA-29279: SMTP permanent error: 553 sorry, that domain isn't in my list of
allowed rcpthosts (#5.7.1)
ORA-06512: at "SYS.UTL_SMTP", line 20
ORA-06512: at "SYS.UTL_SMTP", line 98
ORA-06512: at "SYS.UTL_SMTP", line 240
ORA-06512: at "SYS.UTL_MAIL", line 424
ORA-06512: at "SYS.UTL_MAIL", line 594
ORA-06512: at line 1
所以请帮我解决这个错误...
答案 0 :(得分:2)
这本身并不是Oracle错误 - Oracle只是报告从邮件系统收到的错误。错误消息本身(SMTP 553)可能意味着一些事情,其中包括您的ISP不允许在您的域外部进行未经身份验证的邮件发送,或者您的本地网络安全策略不允许将邮件从您的邮件服务器发送到地址gmail.com域名,或者您发送的邮件服务器在黑名单中查看您的域名或地址。请与您的ISP联系以进行验证。