ORACLE 11G 禁用 SQL TUNING ADVISOR

生产上有一套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:

COLUMNparameter_valueFORMATA30
SELECTparameter_name,parameter_value
FROMdba_advisor_parameters
WHEREtask_name='SYS_AUTO_sql_TUNING_TASK'
ANDparameter_nameIN('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);
END;
/

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

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

--查询当前任务状态
SYS@db2>selectclient_name,statusfromDBA_AUTOTASK_CLIENT;

CLIENT_NAMESTATUS
------------------------------------------------------------------------
autooptimizerstatscollectionENABLED
autospaceadvisorENABLED
sqltuningadvisorENABLED
--禁用sqltuningadvisor
SYS@db2>BEGIN
2dbms_auto_task_admin.disable(
3client_name=>'sqltuningadvisor',4operation=>NULL,5window_name=>NULL);
6END;
7/

PL/sqlproceduresuccessfullycompleted.
--再次查询状态
SYS@db2>selectclient_name,statusfromDBA_AUTOTASK_CLIENT;

CLIENT_NAMESTATUS
------------------------------------------------------------------------
autooptimizerstatscollectionENABLED
autospaceadvisorENABLED
sqltuningadvisordisABLED
--启用sqltuningadvisor
BEGIN
dbms_auto_task_admin.enable(
client_name=>'sqltuningadvisor',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

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...