Skip to content

Database

Everything our consultants learn while running databases for customers: Oracle, PostgreSQL, SQL Server, MySQL, MariaDB, MongoDB and Delphix. Expect hands-on posts about installation, day-to-day administration, backup and recovery, performance tuning, replication and upgrades.

Index seek operator and residual IO

This blog post draws on the previous article about index seek and gotchas. I encountered another interesting case but it is not so much because of the nature of the problem I decided to write this article but rather the different ways that exist to troubleshoot it. Firstly, let’s set the scene: A simple update query and its corresponding execution… 

Server process name in Postgres and Oracle

By Franck Pachot . Every database analysis should start with system load analysis. If the host is in CPU starvation, then looking at other statistics can be pointless. With ‘top’ on Linux, or equivalent such as process explorer on Windows, you see the process (and threads). If the name of the process is meaningful, you already have a clue about… 

12cR2 PDB archive

By Franck Pachot . In 12.1 we had the possibility to unplug a PDB by closing it and generating a .xml file that describes the PDB metadata required to plug the datafiles into another CDB. In 12.2 we got an additional possibility to have this .xml file zipped together with the datafiles, for an easy transport. But that was not… 

JAN18: Database 11gR2 PSU, 12cR1 ProactiveBP, 12cR2 RU

By Franck Pachot . If you want to apply the latest patches (and you should), you can go to the My Oracle Support Recommended Patch Advisor. But sometimes it is not up-todate. For example, for 12.1.0.2 only the PSU is displayed and not the Proactive Bundle Patch, which is highly recommended. And across releases, the names have changed and can… 

Multitenant, PDB, ‘save state’, services and standby databases

By Franck Pachot . Creating – and using – your own services has always been the recommendation. You can connect to a database without a service name, though the instance SID, but this is not what you should do. Each database registers its db_unique_name as a service, and you can use it to connect, but it is always better to… 

Introducing SQL Server on Docker Swarm orchestration

SQL Server 2017 is available on multiple platforms: Windows, Linux and Docker. The latter provides containerization features with no lengthy setup and special prerequisites before running your SQL Server databases which are probably the key success of adoption for developers. It was my case as developer for our DMK management kit which provide to our customers a SQL Server database… 

Migrate Windows VM with more than 4 Disks from VMware to OVM

Suppose you got an OVA image created on VMware and the VM contains more than 4 Disks and you have to migrate this machine from VMware to OVM. As first step you import the OVA into the OVM in the usual way: You see the that the appliance was imported successfully, we have 5 disks: Now you create your VM from… 

Result Cache: when *not* to use it

By Franck Pachot . I encountered recently a case where result cache was incorrectly used, leading to high contention when the application encountered a peak of load. It was not a surprise when I’ve seen that the function was called with an ‘ID’ as argument, which may have thousands of values in this system. I mentioned to the software vendor… 

Testing Oracle SQL online

By Franck Pachot . Want to test some DDL, a query, check an execution plan? You need only a browser. And you can copy-paste, or simply link, your test-case in a forum, a tweet, an e-mail, a tweet. Here is a small list (expecting to grow from your comments) of free online services which can run with an Oracle Database:… 

Explain Plan format

By Franck Pachot . The DBMS_XPLAN format accepts a lot of options, which are not all documented. Here is a small recap of available information. The minimum that is displayed is the Plan Line Id, the Operation, and the Object Name. You can add columns and/or sections with options, such as ‘rows’, optionally starting with a ‘+’ like ‘+rows’. Some… 

SQL Server on Linux and logging

On Windows world, SQL Server logs information both into the SQL Server error log and the Application log. Both automatically timestamp all recorded events. Unlike the SQL Server error log, the Windows application log provides an overall picture of events that occur globally on the Windows operating system. Thus, regarding the encountered issues taking a look at such event logs – by…