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.

Setup Oracle XE on Linux Mint – a funny exercise

On my old Laptop (Acer Travelmate with an Intel Celeron N3160 CPU) I wanted to install Oracle XE. Currently the available XE version is 18.4. My Laptop runs on Linux Mint 19.3 (Tricia). The Blog will describe the steps I had to follow (steps for Ubuntu would be similar). REMARK: The following steps were done just for fun and are… 

PostgreSQL 13: Backup validation and backup manifests

Currently a lot of stuff is being committed for PostgreSQL and what we will look at in this post is a feature, I am sure, a lot of PostgreSQL users have been waiting for for a long time: Finally there is a native way to validate your base backups: pg_validatebackup. This is a new binary that can be used to… 

AWS RDS for PostgreSQL – 2 – Subnet groups

In the last post we had a look at DB Parameter Groups when it comes to AWS RDS for PostgreSQL. This is one of the first things you should think about. But even before you think about PostgreSQL parameters you need to configure the networks your database instances shall be running in. In real life this is done by one… 

AWS RDS for PostgreSQL – 1 – DB Parameter Groups

When your go for AWS RDS you can very quickly bring up a database instance and start using it. I’ve written about my thoughts using this approach here and really encourage you to learn about a specific service in more detail before you start using it. If you want to have a managed service for PostgreSQL in AWS, you can… 

Where does PostgreSQL store information about default privileges?

A recent comment on the blog post about PostgreSQL default privileges is the reason for this little post: “I’d love to know where postgres stores default privileges?”. Well, all the information about privileges should be stored somewhere in the catalog so let’s check where that information could be. To start with, we create a brand new user, a brand new… 

Rapid PostgreSQL cloning using AWS EBS snapshots

When you go for AWS EC2 instances to host your PostgreSQL deployments and you want to rapidly clone PostgreSQL instances for development or testing purposes you can make use of AWS EBS snapshots. In this post we’ll look at how you can quickly spin up EC2 instances that use these snapshots as a base for new PostgreSQL clusters. Although we’ll… 

Oracle recovery concepts

I’ve published a while ago a twitter thead on some Oracle recovery concepts. For those who are not following twitter, I’m putting the whole thread here:   🔴⏬ Here I start a thread about some Oracle Database concepts. We will see how far it goes - all questions/comments welcome. 🔴⏬ A database (or DBMS - database management system) stores (for short and long term)… 

PostgreSQL 13 – Autovacuum can now be triggered based on inserts

A common issue with insert only tables in PostgreSQL is, that autovacuum well never kick in as the formula for autovacuum considers obsoleted tuples since the last vacuum but not the number of inserted tuples. Because of this you usually run a manual vacuum when a table is bulk loaded right after the load or you schedule regular vacuums for… 

A change in full table scan costs in 19c?

During tests in Oracle 19c I recently experienced this: cbleile@orcl@orcl> select * from demo4 where m=103; cbleile@orcl@orcl> select * from table(dbms_xplan.display_cursor); … ————————————————————————— | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ————————————————————————— | 0 | SELECT STATEMENT | | | | 26439 (100)| | |* 1 | TABLE ACCESS FULL| DEMO4 | 1… 

Using AWS Storage Gateway as a backup target for PostgreSQL

In the last post we had a quick look at AWS Kinesis data streams and how you can push data to AWS S3 using AWS Firehose. Another great AWS service is AWS Storage Gateway and in this post we’ll use that to push our PostgreSQL backups to AWS. The primary usage of AWS Storage Gateway is to extend you local…