Infrastructure at your Service

All Posts By

Daniel Westermann

Daniel Westermann

PostgreSQL on FreeBSD, installation from source code

By | Database Administration & Monitoring | No Comments

This is the next post in this little series about PostgreSQL on FreeBSD. You can find the previous one here: PostgreSQL on FreeBSD, getting started PostgreSQL on FreeBSD, updating & configuration PostgreSQL on FreeBSD, installation from packages The downside with installing from packages on FreeBSD is, that you can only run one version of PostgreSQL. If you want to run more than one, you need to install from source code, and this is the topic…

Read More
Daniel Westermann

PostgreSQL on FreeBSD, updating & configuration

By | Database Administration & Monitoring | No Comments

In the last post we installed FreeBSD, configured the keyboard, time zone and the first network interface, which gets it’s IP address via DHCP. In this post we’ll look at how we can configure the second interface, which gets a static IP address in the host only network. Once we’ve done that, we’ll update the system to the latest packages, have a look at the file system layout and kernel parameters so we can later…

Read More
Daniel Westermann

PostgreSQL on FreeBSD, getting started

By | Database Administration & Monitoring | No Comments

Although we are running PostgreSQL mostly on Linux distributions, you can install an run PostgreSQL on a lot of other operating systems. On of them is FreeBSD. FreeBSD is one of those Unixes that derived from the Berkeley Software Distribution (BSD) and it is well known for having very few security issues and it is running a wide range of websites today. In addition, it is the foundation of storage appliances such as Isilon. Running…

Read More
Daniel Westermann

8000 databases in one PostgreSQL cluster?

By | Database Administration & Monitoring | No Comments

A while ago I posted this tweet on Twitter: #Postgresql friends: 8000 databases. One cluster, 8000 clusters, Kubernetes,, what would be your choice? Let's assume 10gb per database. I know backup/restore, inodes etc, no discussions about that, just thoughts and ideas — Daniel Westermann (@westermanndanie) January 27, 2021 While this might sound unusual, this actually was under consideration by one of our customers. Each of their customers usually gets a dedicated database and is free…

Read More
Daniel Westermann

An introduction into server side programming in PostgreSQL – 3 – PL/pgSQL, procedures

By | Database Administration & Monitoring | No Comments

In the first to posts in this series (An introduction into server side programming in PostgreSQL – 1 – SQL functions, basics , An introduction into server side programming in PostgreSQL – 2 – SQL functions, sets, udts and polymorphic types ) we had a look at SQL functions and how you can use them to return data for everything that is a SQL statement. If you can do it in SQL, you should do…

Read More
Daniel Westermann

An introduction into server side programming in PostgreSQL – 2 – SQL functions, sets, udts and polymorphic types

By | Database Administration & Monitoring | No Comments

This is part two of the little series about server side programming in PostgreSQL. In the last post we had a look at the basics when it comes to SQL functions. We learned how to write those functions, how we can pass parameters to functions, how to name parameters for better readability, how to return a result, and how we can use functions in plain SQL statements. In this post we’ll go a step further…

Read More
Daniel Westermann

An introduction into server side programming in PostgreSQL – 1 – SQL functions, basics

By | Database Administration & Monitoring | No Comments

Over the last years I’ve seen many different applications running against PostgreSQL. The use cases vary from simple applications, which only use basic data types and a few tables and views, to complex applications with custom types, more specific data types like jsonb or range types, that use hundreds of schemas/tables/views/materialized views etc. Surprisingly only a few of them make use of functions and procedures in PostgreSQL. I’ve always told people to process the data…

Read More
Daniel Westermann

Dealing with German “Umlaute” in PostgreSQL’s full text search

By | Database Administration & Monitoring | 2 Comments

PostgreSQL comes with build-in Full Text Search and you can do quite amazing stuff with it. A question that popped up during one of the last PostgreSQL for developers workshop was: How can I deal with German “Umlaute” such as “ä”, “ö” and “ü” in such a way, that I can search for e.g. “Schnösel” and the result will give me “Schnösel” as well as “Schnoesel”? One way to deal with that would be to…

Read More
Daniel Westermann

Cluster level encryption for PostgreSQL 14

By | Database Administration & Monitoring | 2 Comments

The discussions how and why TDE (Transparent data encryption) should be implemented in PostgreSQL goes back several years. You can have a look at these two more recent threads to get an idea on how much discussion happened around that feature: [Proposal] Table-level Transparent Data Encryption (TDE) and Key Management Service (KMS) Re: Internal key management system Finally an essentials part for that infrastructure was committed and I am sure, many people have waited for…

Read More