Getting the most out of Oracle Database Express Edition (XE) 18c
Express Edition is a nice starter database which comes for free and does not need a license. Well, you do not get support for it either. There where XE databases in 10g and in 11g, but in this blog post I look into current XE…
How to get the Data Guard broker configuration from a SQL query?
Everybody knows that you can get the Data Guard configuration in dgmgrl with the command: show configuration; but few know that this information is actually available in x$drc: SQL> desc x$drc Name Null? Type ————— ——– ————— ADDR RAW(8) INDX NUMBER INST_ID NUMBER CON_ID NUMBER…
Awk to format the files .ora (listener.ora, tnsnames.ora, etc)
Tired of formatting the tnsnames.ora to make it more readable, I have taken the nice awk examples from Jeremy Schneider: https://ardentperf.com/2008/11/28/parsing-listenerora-with-awk-and-sed/ and created a function to format all files .ora (lisp-like config files). Example, before: $ cat tnsnames.ora LUDOCDB1_SITE2 = (DESCRIPTION = (ADDRESS = (PROTOCOL…
Names Matter
This is one of my favorite quotes: There are only two hard things in Computer Science: cache invalidation and naming things. — Phil Karlton IT is my daily live. And this quote is so true. Lately I’ve been thinking much more than usual about naming,…
The Evolution of the Oracle Documentation
When was the last time you looked into the Oracle documentation? If you rarely or never do so because you think you know the Oracle database, take another look at docs.oracle.com and browse in the online documentation. It’s worth it! A few weeks ago, I…
utPLSQL for SQL Developer 1.2 – What’s New?
Today I released an update of the utPLSQL extension for SQL Developer. In this blog post I explain the changes in the latest version 1.2. These are the new features: Debug Test Cancel Test Run Test Run with Code Coverage Java instead of Xtend Download…
Bye bye Xtend, Welcome Java
Introduction The utPLSQL extension for SQL Developer was originally written in Xtend. In this blog post I explain why we decided to migrate the project to Java and how we’ve done that. Why Replace Xtend? Xtend is a statically typed, clean language with excellent string…
Multitenant Pills: Partial PDB cloning (and cleanup)
When consolidating to multitenant, there are several consolidation patterns. Big, complex databases usually have special requirements for which it might be a good choice to go to single-tenant (a single PDB in one CDB) Small, relatively easy databases are the best candidate for consolidation to…
Multitenant Pills – Change DBID for an existing PDB
When you plug the same PDB many times you have to specify “AS COPY” in the syntax: CREATE PLUGGABLE DATABASE ludo AS CLONE USING ‘/u01/app/oradata/ludo/ludo.xml’; Otherwise, you will get an error similar to: ERROR at line 1: ORA-65122: Pluggable database GUID conflicts with the GUID…
Parallel Oracle Catalog/Catproc creation with catpcat.sql
With Oracle 19c, Oracle has released a new script, annotated for parallel execution, to create the CATALOG and CATPROC in parallel at instance creation. I have a customer who is in the process of migrating massively to Multitenant using many CDBs, so I decided to…