-
Continue reading →: Attending Database Synergy Day 2025 in Switzerland
Last week, I had the privilege of being invited to participate in the “Database Synergy Day 2025: Swiss Oracle & PostgreSQL User Groups Unite” conference held in Switzerland. This technical event was co-organized by the Swiss Oracle User Group (SOUG) and the PostgreSQL User Group (SwissPUG). I engaged in deep…
-
Continue reading →: Oracle AWR Report: Time Model Statistics
As always, I’ve developed a SQL script that yields the same results as this section. The source code is available below. To dive deeper into Oracle AWR analysis, download the full PowerPoint tutorial. Contact me on X, I’d love to share it with you for free! https://twitter.com/yuanoracle
-
Continue reading →: Oracle AWR Report: Wait Classes by Total Wait Time
As always, I I’ve developed a SQL script that generates the same results as this section, you can get the source code of this script here. To dive deeper into Oracle AWR analysis, download the full PowerPoint tutorial. Contact me on X, I’d love to share it with you for…
-
Continue reading →: Script For Oracle AWR Report: Top 10 Foreground Events by Total Wait Time
As always, to truly understand how this section is generated, I’ve developed a custom SQL script that reproduces these results. To dive deeper into Oracle AWR analysis, download the full PowerPoint tutorial. Contact me on X, I’d love to share it with you for free!
-
Continue reading →: SQL Script Generates Load Profile of Oracle AWR Report
Load Profile section gives you a quick overview of the database workload. I’ve developed a SQL script that can generate the same results as the Load Profile’s output. To dive deeper into Oracle AWR analysis, download the full PowerPoint tutorial. Contact me on X, I’d love to share it with…
-
Continue reading →: Understanding Session Statistics in Oracle AWR Reports
Oracle AWR report reports number of sessions, below is an example: Where does Oracle collect Session Data? I conduct a sample experiment by run the following queries: Observations from the experiment: Oracle collects session statistics from the DBA_HIST_SYSSTAT table, specifically from the row where STAT_NAME = ‘logons current’. This value,…
-
Continue reading →: Understanding Oracle’s Multiple LGWR Processes and the “LGWR any worker group” Wait
Since Oracle 12c, Oracle has adopted multiple Log Writer (LGWR) processes instead of a single LGWR process to parallelize redo writing from the log buffer to the redo log file. The primary LGWR process delegates operations to helper log writer worker processes (named LGnn). Typically, there are two worker processes…
-
Continue reading →: Compiling and Installing PostgreSQL from Source on Red Hat
In this guide, I’ll walk you through the process of creating a dedicated user for PostgreSQL, compiling, and installing PostgreSQL 17.2 from source on a Red Hat-based system. This approach allows you to customize your PostgreSQL installation for specific needs, such as enabling debugging information. The steps also cover configuring…
-
Continue reading →: How Under-Sized Log Files Eat Into Oracle Performance
Here is an example of an AWR report generated from a benchmark test of an OLTP system: In the Top 10 Foreground Events by Total Wait Time section, it shows that log file sync accounts for 48.3% of the total database time. This event occurs when a user session commits…
-
Continue reading →: An Under-Sized PGA Detected by AWR Report
Setting the correct size for the Program Global Area (PGA) is crucial for optimizing Oracle database performance, this is especially true with OLAP system. By analyzing AWR reports, we can determine if the configured PAG size is adequate for the workload. Symptoms of an Under-Sized PGA Here is an AWR…




