The OPTIMIZER_TRACE table provides
information produced by the optimizer tracing capability for
traced statements. To enable tracking, use the
optimizer_trace system variable.
For details, see Section 10.15, “Tracing the Optimizer”.
The OPTIMIZER_TRACE table has these
columns:
QUERYThe text of the traced statement.
TRACEThe trace, in
JSONformat.MISSING_BYTES_BEYOND_MAX_MEM_SIZEEach remembered trace is a string that is extended as optimization progresses and appends data to it. The
optimizer_trace_max_mem_sizevariable sets a limit on the total amount of memory used by all currently remembered traces. If this limit is reached, the current trace is not extended (and thus is incomplete), and theMISSING_BYTES_BEYOND_MAX_MEM_SIZEcolumn shows the number of bytes missing from the trace.INSUFFICIENT_PRIVILEGESIf a traced query uses views or stored routines that have
SQL SECURITYwith a value ofDEFINER, it may be that a user other than the definer is denied from seeing the trace of the query. In that case, the trace is shown as empty andINSUFFICIENT_PRIVILEGEShas a value of 1. Otherwise, the value is 0.