2

我在互联网上找到了很多关于如何配置 Oracle 数据库以使用 PL/SQL 命令从数据库发送电子邮件的详细信息,但它们都使用安装数据库的 SMTP 服务器(我认为至少)。如果将这些电子邮件发送给 DBA,那很好。

向客户发送电子邮件的情况如何?在这种情况下,我们不希望从应用服务器(例如 DMZ)而不是数据库服务器发送电子邮件吗?

我假设数据库服务器的 IP 地址(或关于我们宁愿保密的数据库服务器的其他特殊信息)将在这样的电子邮件中提供。如果这不是真的,我的问题没有任何价值。

是否可以从数据库 PL/SQL 命令生成一封电子邮件,但将其从代理(例如应用程序)服务器发送给客户?因此电子邮件流量路径将是:数据库服务器 --> 应用程序服务器 --> 客户。额外的好处是大多数电子邮件系统无论如何都会在应用程序服务器上,因此返回的电子邮件将进入应用程序服务器。

4

2 回答 2

4

如果您使用的是 UTL_SMTP,您的代码将在某处有这样一行:

c := UTL_SMTP.open_connection( 'myhost', 25 );

第一个参数是邮件服务器。您应该能够将其设置为您的数据库服务器可以连接到的任何服务器(通过端口 25)。

于 2012-04-20T01:23:08.243 回答
3

他们不一定使用“安装了数据库”的 SMTP 服务器(不太确定您的意思)。您定义系统参数 SMTP_OUT_SERVER 来配置 SMTP 服务器的 IP 和端口。Oracle 将向您定义的任何服务器发送电子邮件,只要它可以通过网络访问。

有关设置 UTL_MAIL 的更多信息,请参阅此站点。试试看。看看标题。亲眼看看它的样子。

于 2012-04-20T00:11:08.973 回答