Infrastructure at your Service

 
Daniel Westermann

Some basics about time zones in PostgreSQL

By | Database Administration & Monitoring | No Comments

As soon as you have an application which works across time zones you will have to deal with that properly in the database. I’ve seen many applications that didn’t care of that at the beginning, and much work had to be done to change the implementation afterwards. The one and only recommendation is: Do it properly from the beginning and you don’t have to think much about it in the future. PostgreSQL comes with all…

Read More
Alain Fuhrer

Magic Upgrade to 21c with Replay Upgrade Feature

By | Database Administration & Monitoring | No Comments

Last week I did some upgrade tests from 19c to 21c. The plan was to copy a 19c PDB to a CDB 21c using Online Clone and then upgrade it to 21c. I have done this many times for 19c as well and just wanted to verify that it still worked with 21c. Clone PDB to 21c CDB Since it is a LAB, I gave the user SYSTEM in the CDB19c the appropriate duplicate permissions…

Read More
Daniel Westermann

In which order do triggers fire in PostgreSQL?

By | Database Administration & Monitoring | No Comments

When you are working with triggers it might be important to know in which order they fire. Of course, a “before” triggers fires before an “after” trigger. But what happens if you have two or more triggers for the same event? Maybe you want to make sure that a specific trigger is executed first (for whatever reason) or you want to make sure that another trigger is executed last. The good news is: You can…

Read More
Jean-Philippe Clapot

Kubernetes : two different OCI runtimes

By | DevOps, Kubernetes | No Comments

Quick recap : in the previous episode, we have seen how to move from a Kubernetes cluster powered by Docker into a future-proof Kubernetes cluster, using containerd. Now let’s move on and fully enjoy the power of having this CRI intermediate layer sitting below the kubelet. containerd and OCI runtimes containerd is a high level container runtime. It is CRI compliant, CRI being the API from Kubernetes for container runtimes. Here below a good picture of…

Read More
Daniel Westermann

How much shared memory is PostgreSQL using? (2) – details

By | Database Administration & Monitoring | No Comments

In the last post in this two post series we’ve briefly looked at configuring huge pages on Linux for PostgreSQL. It became clear, that calculating the number of huge pages purely based on the setting of shared_buffers will not work. PostgreSQL requires more shared memory, but what exactly is it? Well, this is the goal of this post and I’ll introduce a new feature of PostgreSQL 15 which helps in identifying those bits without digging…

Read More
Daniel Westermann

How much shared memory is PostgreSQL using? (1) – basics

By | Database Administration & Monitoring | No Comments

Have you ever wondered if the value of shared_buffers is the only setting which controls how much shared memory PostgreSQL is actually using? There was a nice addition committed to PostgreSQL 15 recently, which helps in answering this question (more on that later). shared_buffers for sure is the biggest chunk of shared memory that PostgreSQL is using but there might be other factors which come into the game. You might ask yourself why that is…

Read More
Alain Fuhrer

After startup database with srvctl, sqlplus as sysdba results in ORA-12547: TNS:lost contact

By | Database Administration & Monitoring, Oracle | One Comment

A few days ago a customer called me, that he have a strange issue with a new created database in a oracle restart configuration with 19c. Problem The customer has patches his 19c Databases with the newest RU and afterwards he get some strange issues in the oracle Restart integration. The Tasks that were done are Install new Oracle Home (u01/app/oracle/product /19.0.0/dbhome_1) Patch new Oracle Home with newest RU for 19c stop database modify oracle…

Read More
Mehdi Bada

MongoDB Monitoring using Nagios

By | Database Administration & Monitoring, NoSQL | No Comments

The question comes frequently: How can I monitor my MongoDB cluster (ReplicaSet or Sharded) in a production environment? To answer this question we need first to get an overview of all potential monitoring solutions, and then compare them one by one. That’s exactly what we gonna do in this blog post series of MongoDB Monitoring solutions. Actually, a few monitoring solutions exist for MongoDB: Ops Manager/Cloud Manager Nagios Prometheus/Grafana MongoDB Utilities (mongostat, mongotop) For the…

Read More
Mehdi Bada

Deploy a Kubernetes cluster using Ansible in AWS

By | Ansible, AWS, DevOps, Docker, Kubernetes | No Comments

After more than 2 years of experience in Kubernetes cluster administration, I am deeply convinced that one of the most important things to have as an ops guy is a sandbox cluster at your disposal. This can be either a sleeping cluster or a new fresh installation with all your standards replicated on it to perform your series of tests. In this blog post, we consider that you have an AWS account with limited credits,…

Read More
Daniel Westermann

Temporal tables for PostgreSQL 15?

By | Database Administration & Monitoring | One Comment

One of the features which is currently missing in PostgreSQL is Temporal Tables. Other database systems have that since a long time and many people want to have in PostgreSQL as well. If you don’t know what it is, here is a short overview. Basically you can ask for a row as it was at a specific point in time. The patch which implements this, is currently in status “Ready for Committer”, which does not…

Read More