Posts

Showing posts with the label execution plan

SQL Diagnostic Report: Oracle 23ai Feature Now Available in 19.28

  Introduction Oracle Database 23ai introduced a powerful new diagnostic capability through the DBMS_SQLDIAG.REPORT_SQL function, which generates comprehensive HTML diagnostic reports for SQL statements. The great news for Oracle 19c users is that this feature has been backported to Oracle Database 19.28 , allowing you to leverage advanced SQL analysis without upgrading to 23ai. Before this feature, DBAs typically relied on the awrsqrpt.sql script to analyze SQL execution plans and performance metrics. The new REPORT_SQL function provides a more comprehensive, graphical HTML report with deeper performance insights. What Does SQL Diagnostic Report Provide? The REPORT_SQL function generates a comprehensive HTML diagnostic report that includes: Execution Plan History - Track how execution plans have evolved over time Cursor Sharing Information - Understand cursor behavior and sharing patterns Optimizer Statistics History - View changes in optimizer statistics Index ...

Demystifying Oracle SQL Monitor: A Comprehensive Guide

Introduction Oracle Database's SQL Monitor is a powerful tool that provides deep insights into the execution of SQL statements, offering DBAs and developers crucial information for optimizing query performance. In this guide, we will delve into the various aspects of SQL Monitor, from understanding its default behavior to generating real-time and historical reports. Whether you're new to SQL Monitor or a seasoned user, this guide aims to provide valuable insights for effectively utilizing this tool. Default Behavior and Forcing Monitoring SQL Monitor automatically tracks SQL statements that run in parallel or consume at least 5 seconds of combined CPU and I/O time during a single execution. However, if you want to monitor specific SQL statements, you can include the `MONITOR` hint within the statement itself. For instance: SQL SELECT /*+ MONITOR */ count(*) from table you can force monitoring by setting the event "sql_monitor" at the system level: SQL ALTER SYSTEM SET...