ORACLE 11G 存储过程发送邮件(job),ORA-24247:网络访问被访问控制列表 (ACL) 拒绝
ORA-24247:网络访问被访问控制列表 (ACL) 拒绝
开发编写了一个oracle 发送邮件的存储过程,之前是在10G 的版本运行使用,现在11.2.0.4 的版本使用,调试无法使用
发现报错ORA-24247, 网上查询资料如下:
1.需要先使用 DBMS_NETWORK_ACL_ADMIN.CREATE_ACL 创建访问控制列表(ACL),
BEGIN
DBMS_NETWORK_ACL_ADMIN.CREATE_ACL (
acl => 'email_server_permissions.xml',
description => 'Enables network permissions for the e-mail server',
principal => 'smp',
is_grant => TRUE,
privilege => 'connect');
END;
/
2.再使用 DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL 将此 ACL 与邮件服务器相关联,
BEGIN
DBMS_NETWORK_ACL_ADMIN.assign_acl (
acl => 'email_server_permissionsr.xml',
host => 'stcmail.cn.simplo.com', ---SMTP服务器地址
lower_port => 25,
upper_port => NULL);
COMMIT;
END;
/
3.删除ACL列表。
--drop
BEGIN
DBMS_NETWORK_ACL_ADMIN.drop_acl(acl => 'email_server_permissions.xml');
COMMIT;
END;
/
----查询 ACL列表
SELECT host, lower_port, upper_port, acl FROM dba_network_acls;
SELECT acl,principal,privilege,is_grant,TO_CHAR(start_date, 'DD-MON-YYYY') AS start_date,TO_CHAR(end_date, 'DD-MON-YYYY') AS end_date
FROM dba_network_acl_privileges;
很多知识总是记不住,不如记下来