Oracle普通用户启停JOB报错ORA 27486权限不足

Oracle普通用户启停JOB报错ORA 27486权限不足

问题与现象

应用用户通过DBMS_SCHEDULER启停自己的JOB需要的权限:

sql 复制代码
grant execute on dbms_scheduler to appuser;

该普通用户有CREATE JOB的权限。通过DBMS_SCHEDULER停止自己的JOB时:

sql 复制代码
BEGIN
  DBMS_SCHEDULER.STOP_JOB('APPUSER.ETLJOB', force=>true);
END;
/

收到如下报错:

复制代码
ORA-27486: 权限不足
ORA-06512: 在"SYS.DBMS_ISCHED", line 210
ORA-06512: 在"SYS.DBMS_SCHEDULER", line 557
ORA-06512: 在 line 1

原因与对策

不加force的时,执行用户必须是JOB OWNER或者对JOB具有ALTER权限。也可以对用户授予CREATE ANY JOB或者MANAGE SCHEDULER权限(不推荐)。

force参数时,用户必须具有MANAGE SCHEDULER权限,否则会报ORA-27486权限不足。

sql 复制代码
grant manage scheduler to appuser;
相关推荐
xiezhr3 小时前
逛GitHub发现了一款免费的带AI功能的数据库管理工具
数据库·ai编程·dba
吃糖的小孩1 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
笃行3502 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3502 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3502 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
SelectDB3 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶3 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵3 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils3 天前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库