As an Oracle DBA stepping into the PostgreSQL world, one of the first surprises you’ll encounter is during installation. If you’re used to Oracle’s DBCA and multi-step setup, PostgreSQL’s simplicity might feel almost too easy – there’s no complex response file, but don’t let that fool you. Under the hood, PostgreSQL has its own powerful architecture, and understanding those foundational differences is key to making the most of your new multi-platform world. What’s in a Name? I admit this is still causing me challenges: How do you pronounce PostgreSQL? It’s pronounced “Post-gres-Q-L”. No, I’m not kidding and Ryan Booz could…
-
-
Back in 2004, I had my first run-in with PostgreSQL’s predecessor: Ingres. It was just another database platform for me to know, as I was already managing Oracle, SQL Server, Sybase and DB2, and as usual, there was no one else in the room. I vaguely remember working through the mechanics of VACUUM and maintenance routines, but much of it faded into the background as my career led me deeper into the world of Oracle, SQL Server and MySQL databases. At the time, PostgreSQL was still finding its footing, and Ingres seemed like a legacy product already slipping into obscurity.…
-
Over the last year, I’ve had the privilege of presenting keynotes and technical sessions to both the Oracle and SQL Server communities on a subject that’s no longer optional—data protection in the age of AI. Whether I’m speaking at regional events or large conferences, the topic resonates because the risk is no longer theoretical. AI is here, it’s evolving rapidly, and the data it consumes and leaks, can and will define the fate of your organization. Shadow AI is Unseen, Unapproved, and Dangerous “Shadow IT” has been a longstanding challenge, but Shadow AI is its much more dangerous sibling. Employees,…
-
With Oracle Database 12c, Oracle introduced Multitenant Architecture, a major shift in how databases are structured and managed. This architecture separates the Container Database (CDB), which holds the Oracle system metadata and manages operations from the user databases, officially called Pluggable Databases (PDBs). These containers hold the actual user data and applications. It was initially an option, but over time, Oracle has evolved it into the foundation of its database strategy. Starting with Oracle 23ai, Multitenant will no longer be optional but the default and required architecture, reinforcing Oracle’s push toward standardized, consolidated, and agile database environments. For DBAs, this…
-
In its traditional, (and free) configuration, Oracle Data Guard operates in an active/passive architecture. This incredibly well-designed and valuable solution from Oracle which comes included with the Enterprise Edition has as part of its architecture: A primary database, which is an active, accessible database system. One or more standby databases, which are passive replicas that continuously receive redo data from the primary. The standby databases receive a continuous changes from redo. By sending redo data from the primary across the network and applying it to the standby, the two are kept in sync. This is done using the Log Transport…
-
When you first begin your journey into Oracle performance tuning, you quickly discover that you’re not just working with databases, you’re deciphering a complex system of rules, statistics, and estimations. I was reminded by Connor McDonald in a post he made on LinkedIn about one of the most influential turning points in my career as a database professional came when I encountered Wolfgang Breitling’s 2003 paper – A Look Under the Hood of the CBO: the 10053 Event. At a time when I was focused on tuning queries for speed, Wolfgang’s work redefined how I thought about cost, and more…
-
Furthering on our Oracle Real Application Clusters (RAC) knowledge, we’re going to go deeper into what we watch for a RAC database that may be different than a single instance. RAC is built for scale and instance resilience, distributing workloads across multiple nodes. At the same time, what gives it strength introduces monitoring complexity, especially when you’re not just watching a single instance but multiple, interconnected ones. To manage performance effectively in RAC, you need to understand the difference between V$ and GV$ views, what they show you, and how to interpret cluster-level wait events. Along with performance, the overall…
-
After my last blog post on Oracle Real Application Clusters (RAC) I was asked to talk about both health and how performance impact can affect a RAC database. Its architecture enables failover, workload distribution, and offers an option to scale performance, but only when all nodes play well together. When one node drags behind or becomes unstable, RAC has no choice but to protect the rest of the cluster- so help me, Oracle Gods. This protection can come in the form of node eviction, which can be both disruptive and at times avoidable with proactive monitoring and intervention. Why Node…
-
The request of me today was to start blogging on Oracle Real Application Clusters (RAC) so here we go, down into the rabbit hole! I admit fully to having a love/hate relationship with RAC. I love redundancy, scalability, and instance resiliency in RAC beneficial, but many of the unnecessary complexities and overhead frustrates me. I absolutely come up against traditional OLTP workloads that scream out for RAC to scale to the level they require day-to-day, but also know there’s a ceiling that will be reached that RAC can’t solve, requiring at some point for database design, code and application to…
-
I was caught off guard last week when the “Congratulations on your work anniversary!” messages started rolling in on LinkedIn. It had slipped my mind that it had already been a full year since I began contracting with Redgate back in May 2024. And, true to form, LinkedIn, always eager to simplify the complexities of tech careers and notified my entire network that I’d officially hit the one-year mark, although I hadn’t started full-time till the beginning of October. It can almost feel like an identity crisis as you perform so many roles for different organizations – thrilling and satisfying…
-
Recently, I re-entered the Oracle community as a speaker, and I won’t lie, I felt some anxiety. I’d been away from the Oracle keynote stage for a while, focusing on building solutions, working in spaces that welcomed me, and doing what so many long-term women in tech have had to do: protect our energy, guard our sanity, and rebuild when too many small harms have added up. So, when I was asked to keynote not one, but several Oracle events, I was humbled. These weren’t just recycled talks-they were opportunities to create something meaningful. I don’t do canned keynotes. I…
-
After publishing my last post on Oracle Wait Classes, I received a great question on LinkedIn: “How do you identify the SQL statement or the cause of high CPU when the top wait event is ‘resmgr:cpu quantum’?” It’s a common (and frustrating) performance issue in Oracle. So today, we’ll walk through how to identify and troubleshoot it. What is resmgr:cpu quantum? Let’s break it down: RESMGR = Oracle Resource Manager CPU Quantum = The time slice a session is allowed to consume CPU This wait event indicates that a session is throttled by Oracle Resource Manager because it’s trying to…
-
When we talk about optimization in Oracle, many DBAs immediately jump into metrics like CPU utilization, I/O throughput, or specific SQL queries. But there’s a critical layer of understanding that often gets overlooked and that’s Oracle Wait Classes. These categories are essential to making sense of what’s really going on inside your database, and they’re often the starting point for diagnosing and optimizing performance. What Are Oracle Wait Classes? In Oracle, wait events represent specifics the database is waiting on, such as a latch, a lock, a disk read, or a response from the network or application. But looking at…
-
After the initial overview of memory monitoring in Oracle, particularly around the SGA and PGA, I wanted to take a deeper dive into the most common Oracle memory configurations. These include how memory settings are defined, how they interact, and the combinations you’re likely to encounter across different workloads. Oracle memory is a no-brainer for many of us who’ve been in the space for an extensive time, but I’ve come to realize, it can be a bit overwhelming and especially with recent changes from Oracle 12c on. How Memory Settings Are Applied in Oracle Oracle memory parameters can be configured…
-
Like many of us who took to the road during the pandemic, I relied on a variety of services to keep me connected while living and working in an RV. One of those services was Nomad Internet. We initially had a positive experience with their SIM-based internet offering – unlimited data, plug-and-play with my iPad, no modem required. It was convenient, effective, and ideal for working from the Airstream during longer stretches of travel once we moved into the floating home. So, when we planned another mobile work stint in January of 2024, renewing the service seemed like a no-brainer.…
-
When describing Oracle features to folks that are new to the platform or coming from other database platforms, I found it’s best to keep it simple, but take on the important aspects of the technology. I’m going to take on a few more posts on Oracle internals from the perspective of the individual new to Oracle. To start, I’ve been having some long discussions, as well as documenting how Oracle memory works and how we monitor it when you don’t have the diagnostic and tuning pack at your disposal. With the exclusion of these management packs, you have to be…
-
Along with beginning to write on my own blog again, I’ve made a few, minor updates to my site. There is now a Podcast and Webinar page with links to all the recent podcasts and other online content I’ve been creating. More will be available as time goes by, but considering the sheer amount of podcasts I’ve been doing, it just made sense. I’m migrating all scripts and doing a revamp of the Scripts and Presentations page. I’ve uploaded all recent slide decks to Github, (shame, SHAME Slideshare… :)) and adding a ton of new scripts over the next month…
-
Yeah, the guys introduced me on the podcast, so now they’re stuck with me! I won’t be on all of the podcasts, as we’re trying to work out logistics of who is where and when that we’re able to coordinate our schedules, but I’m looking forward to contributing to the podcasts as often as I’m able! If you’re interested in podcasts, check them out here! Louis has done a great job of creating a variety of content, including interviews and interesting group discussions about what is buzzing in tech today!