oracle 11g 实施SQL概要文件(accept_sql_profile)报错 ORA-13786错误解决办法

oracle11g EM上实施sql概要文件出错

oracle 11g 实施SQL概要文件(accept_sql_profile)报错 ORA-13786错误解决办法_第1张图片

oracle 11g 实施SQL概要文件(accept_sql_profile)报错 ORA-13786错误解决办法_第2张图片

 

sqlplus执行同样报错

 

SQL> exec dbms_sqltune.accept_sql_profile(task_name => 'SQL_TUNING_1564451095710', task_owner => 'SYS', replace => TRUE);
BEGIN dbms_sqltune.accept_sql_profile(task_name => 'SQL_TUNING_1564451095710', task_owner => 'SYS', replace => TRUE); END;

*
ERROR at line 1:
ORA-13786: missing SQL text of statement object "1" for tuning task
"SQL_TUNING_1564451095710"
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.DBMS_SQLTUNE_INTERNAL", line 16442
ORA-06512: at "SYS.PRVT_SQLPROF_INFRA", line 31
ORA-06512: at "SYS.DBMS_SQLTUNE", line 7544
ORA-06512: at "SYS.DBMS_SQLTUNE", line 7568
ORA-06512: at line 1

 

查资料可能是oracle的概要文件新执行计划中有并行执行时的一个bug(bug 10313110 in OEM),需要加上参数profile_type => DBMS_SQLTUNE.PX_PROFILE,再执行显示成功:
SQL> exec dbms_sqltune.accept_sql_profile(task_name => 'SQL_TUNING_1564451095710', task_owner => 'SYS', replace => TRUE,profile_type => DBMS_SQLTUNE.PX_PROFILE);

PL/SQL procedure successfully completed.
 

参考资料https://rene-ace.com/applying-a-sql-profile-and-the-ora-13786-error/

你可能感兴趣的:(oracle 11g 实施SQL概要文件(accept_sql_profile)报错 ORA-13786错误解决办法)