记一次ORA-24247错误

在oracle11gR2里发送邮件的时候报错:

ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝
ORA-06512: 在 "SYS.PROCSENDEMAIL", line 730
ORA-06512: 在 "SC.ISC_UTIL", line 452
ORA-06512: 在 line 1

这是因为Oracle 数据库 11g有一个新的解决方案:您可以将执行权限程序包授予任何人,但要控制他们可以调用的资源。例如,utl_tcp 可限制为仅调用几个 IP地址,这种机制称为访问控制列表 (ACL)。如果主机在 ACL 中,用户可以在 utl_tcp 中使用;但是仅仅拥有对 utl_tcp的执行权限是不够的。因此,恶意进程不可能取代 utl_tcp 程序包和建立非法连接。

[@more@]

解决步骤:

1、创建一个 ACL:

begin
dbms_network_acl_admin.create_acl (
acl => 'NEWACL.xml',
description => 'news',
principal => 'CONNECT',
is_grant => TRUE,
privilege => 'connect',
start_date => null,
end_date => null
);
end;

2、为该 ACL 增加一个权限

begin
dbms_network_acl_admin.add_privilege (
acl => 'NEWACL.xml',
principal => 'SC',
is_grant => TRUE,
privilege => 'connect',
start_date => null,
end_date => null);
end;

3、添加主机:

begin
dbms_network_acl_admin.assign_acl (
acl => 'NEWACL.xml',
host => '*',
lower_port => 1,
upper_port => 1000);
end;

4、问题解决

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10130206/viewspace-1059192/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10130206/viewspace-1059192/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值