相关文章推荐
英姿勃勃的白开水  ·  xAI 的Grok ...·  4 月前    · 

生产上有一套11g数据库alert.log报错ORA-16957: SQL Analyze time limit interrupt。

查询MOS相关文档Troubleshooting: ORA-16957: "SQL Analyze time limit interrupt" Errors (文档 ID 1275248.1)

The ORA-16957 error is an internal error code used to indicate that SQL Tuning Task has reached the time limit for tuning a specific sql.

The default time limit is 3600 seconds.

1. Check the current timing:

COLUMN parameter_value FORMAT A30 
SELECT parameter_name, parameter_value 
FROM dba_advisor_parameters 
WHERE task_name = 'SYS_AUTO_SQL_TUNING_TASK' 
AND parameter_name IN ('TIME_LIMIT', 
'DEFAULT_EXECUTION_TYPE', 
'LOCAL_TIME_LIMIT');


Then, increase the time:

Using:

BEGIN 
  DBMS_SQLTUNE.SET_TUNING_TASK_PARAMETER(task_name => 'SYS_AUTO_SQL_TUNING_TASK', parameter => 'TIME_LIMIT', value => 7200); 
/

意思是后台自动分析sql耗时超过了默认的时间限制3600s,需要使用DBMS_SQLTUNE.SET_TUNING_TASK_PARAMETER包增长时间限制。

一般在生产上不默认是不开启SQL TUNING ADVISOR。可以使用下面代码关闭自动SQL TUNING ADVISOR。

--查询当前任务状态
SYS@db2> select client_name,status from DBA_AUTOTASK_CLIENT;
CLIENT_NAME                                                      STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection                                  ENABLED
auto space advisor                                               ENABLED
sql tuning advisor                                               ENABLED
--禁用sql tuning advisor
SYS@db2> BEGIN
  2  dbms_auto_task_admin.disable(
  3      client_name => 'sql tuning advisor',
  4      operation   => NULL,
  5      window_name => NULL);
  6  END;
PL/SQL procedure successfully completed.
--再次查询状态
SYS@db2> select client_name,status from DBA_AUTOTASK_CLIENT;
CLIENT_NAME                                                      STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection                                  ENABLED
auto space advisor                                               ENABLED
sql tuning advisor                                               DISABLED
--启用sql tuning advisor
BEGIN
dbms_auto_task_admin.enable(
    client_name => 'sql tuning advisor',
    operation   => NULL,
    window_name => NULL);
END;

参考文档:http://blog.chinaunix.net/uid-25528717-id-3172008.html

参考文档:http://www.cnblogs.com/suredandan/p/3200157.html

参考文档:http://blog.itpub.net/235507/viewspace-1137629/

官方文档:http://docs.oracle.com/cd/E11882_01/server.112/e25494/tasks.htm#ADMIN12332

推荐阅读:
ORACLE SQL TUNING ADVISOR oracle11g自动维护任务

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:[email protected]进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

tuning autotask

上一篇: python导入数据的方法

下一篇: 软件编程如何快速入门

  • oracle 12c 关闭统计信息收集和启用统计信息收集
  • Oracle的自动维护任务
  • Oracle Study之--resmgr:cpu quantum等待事件
  • 分析Oracle关闭以及job查看与停止
  • Oracle SQL 优化之sql tuning advisor (STA)
  • 怎么理解ORACLE 11G维护窗口和自动维护任务
  • Oracle 11g系统自动收集统计信息的知识有哪些
  • Oracle 11g无法自动收集统计信息怎么办
  • oracle automatic sql tuning advisor
  • Oracle自动收集统计信息怎么实现
  •