背景: SQL Developer + Oracle 19c 进行package 的dubug 操作报 ORA-24247 错
解决办法:
1. 在Oracle 服务器创建访问控制列表Access Control List (ACL)
sqlplus / as sysdba;
BEGIN
DBMS_NETWORK_ACL_ADMIN.CREATE_ACL (
acl => 'utlpkg.xml',
description => 'allow access to the lhost for utl',
principal => 'DB_USER', ----- 需要被授权的用户
is_grant => TRUE,
privilege => 'connect',
start_date => null,
end_date => null);
END;
/
BEGIN
DBMS_NETWORK_ACL_ADMIN.assign_acl (
acl => 'utlpkg.xml',
host => 'HOST_IP', ------ 需要被授权的IP
lower_port => 10000, ------ 端口号起始值
upper_port => 65535); ------ 端口号终止值
COMMIT;
END;
/
commit;
2. 赋予JDWP 权限
begin
dbms_network_acl_admin.append_host_ace(
host => '*',
ace => xs$ace_type(privilege_list => xs$name_list('jdwp'),
principal_name => 'DB_USER',
principal_type => xs_acl.ptype_db));
end;
/
参考文档:
SQL Developer Debugger Raises ACL Error Against 12 Database (Doc ID 1627194.1)
Remote Debugging Fails with ORA-24247 (Doc ID 1932482.1)




