appears to be hung in Auto SQL Tuning task
Oracle 自动定时优化任务执行失败分析
错误现象:
Sat Feb 10 03:10:57 2024
Process 0x0x00007FFB81BE44A8 appears to be hung in Auto SQL Tuning task
Current time = 1707505857, process death time = 1707505803
Attempting to kill process 0x0x00007FFB81BE44A8 with OS pid = 3992
OSD kill succeeded for process 0x00007FFB81BE44A8
起因:Oracle每天晚上10点的时候会自动启动一个性能优化的任务
Sat Feb 10 02:00:03 2024
Begin automatic SQL Tuning Advisor run for special tuning task “SYS_AUTO_SQL_TUNING_TASK”
解释什么是自动优化任务:
数据库创建自动化系统任务SYS_AUTO_SQL_TUNING_TASK作为目录脚本的一部分。此任务自动从 AWR 中选择一组高负载 SQL,
并在此 SQL 上运行 SQL Tuning Advisor。自动化任务执行与任何其他 SQL 调优任务相同的全面分析。
select client_name,window_group ,a.status from dba_autotask_client a;
自动收集任务的时间窗口:
select WINDOW_NAME, WINDOW_NEXT_TIME , WINDOW_ACTIVE,OPTIMIZER_STATS from DBA_AUTOTASK_WINDOW_CLIENTS order by WINDOW_NEXT_TIME ;
查看JOB的历史执行情况,对比每个周六的执行情况,2月10日,跑了一个多小时都没有执行完成,其他的都是半小时内就完成了。
SELECT CLIENT_NAME,WINDOW_NAME,
to_char(window_start_time,‘yyyy-mm-dd hh24:mi:ss’) stime,
WINDOW_DURATION,
to_char(job_start_time,‘yyyy-mm-dd hh24:mi:ss’) job_stime,
job_duration,
job_error,
JOB_STATUS
FROM DBA_AUTOTASK_JOB_HISTORY WHERE client_name=‘sql tuning advisor’
and window_name=‘SATURDAY_WINDOW’
order by WINDOW_START_TIME desc