[DBA 2]

PostgreSQL

Advanced

đź’» 5 live online sessions, 3h30m each

🎤 Includes: Q&A, theory and live demo

🏷️ Price: €850 before taxes

🗓️ Dates: 18-22 May; 28 Sept-2 Oct

PREREQUISITES

  • To participate in this course, you must either have completed our
    (DBA1) PostgreSQL Essentials
    course or possess practical experience with PostgreSQL daily operations (creating databases, managing roles, performing routine maintenance tasks, and exporting/importing data).
  • You should also be comfortable with SQL transactions and able to manage PostgreSQL services and configurations on Linux systems.
  • Familiarity with performance monitoring and basic shell scripting is also recommended.

For details see the course T&Cs

This advanced multi-day course is designed for database administrators who want to strengthen their knowledge of PostgreSQL internals and best practices.

  • PostgreSQL architecture and processes
  • Optimal configuration techniques
  • MVCC and the transactional engine
  • Physical backups and Point-in-Time Recovery (PITR)
  • Partitioning and connection pooling

What You’ll Learn

The course is designed to equip you with the essential skills to install, operate, maintain, and monitor PostgreSQL for reliable and efficient database management.

PostgreSQL architecture and Write-Ahead Logging

This chapter introduces PostgreSQL’s internal architecture, focusing on how it manages processes, memory, and durability. Highlights include:

  • The main background processes and their responsibilities
  • Shared and per-process memory areas, and their tuning
  • How PostgreSQL organises files in PGDATA
  • The role of Write-Ahead Logging (WAL) in ensuring data consistency and recovery

This chapter explores PostgreSQL’s Multi-Version Concurrency Control (MVCC) model and how it ensures both consistency and concurrency. Highlights include:

  • How PostgreSQL manages row versioning with system columns such as xmin, xmax, and ctid
  • The impact of isolation levels (READ COMMITTED, REPEATABLE READ, SERIALIZABLE) on transaction consistency
  • The internals of VACUUM and autovacuum: cleaning dead tuples, trigger conditions, and tuning options
  • Strategies to prevent bloat and protect against transaction ID wraparound

This chapter introduces the principles and practices of Point-in-Time Recovery (PITR) in PostgreSQL. Highlights include:

  • Continuous archiving and its role in recovery
  • Configuring WAL archiving for PITR
  • Performing file system backups with pg_basebackup or manual methods
  • Executing a point-in-time recovery and controlling recovery targets
  • Best practices for backups, restore testing, and minimising downtime

This chapter introduces declarative table partitioning in PostgreSQL, a feature designed to simplify the management of large datasets. Highlights include:

  • An overview of the partitioning methods: list, range, and hash
  • How to define multi-column and nested (sub-)partitions
  • Managing partitions: attach, detach, and default partitions
  • Performance considerations and planning-time behaviour
  • Common limitations and best practices for effective partitioning

This chapter explores how PostgreSQL can efficiently handle large numbers of client connections through connection pooling, focusing on PgBouncer. It covers:

  • Why and when to use a connection pooler
  • Comparison of pooling modes: session, transaction, and statement
  • Installation, configuration, and monitoring of PgBouncer
  • Advanced usage: delegated authentication, query cancellation, and multi-instance scaling

Format and Schedule

Course Format & Requirements

Structure
5 live sessions (3.5 hours each)
 
Certificate
Participants must attend all five sessions to receive a certificate of attendance.
 
Platform
Sessions are conducted in English via Zoom. Please ensure you have the latest version installed.
 
Learning Format
The course combines theoretical slides with live demos and includes a live Q&A during each session.
 
Breaks
A 10-minute break halfway through each session.
 
Recording
Sessions will not be recorded.

Sessions Schedule

⚠️ This course will be delivered twice in 2026.
Please choose one session series: May or September.

May Sessions

Monday, 18 May 10:00–13:30

Tuesday, 19 May 10:00–13:30

Wednesday, 20 May 10:00–13:30

Thursday, 21 May 10:00–13:30

Friday, 22 May 10:00–13:30

September Sessions

Monday, 28 Sept 10:00–13:30

Tuesday, 29 Sept 10:00–13:30

Wednesday, 30 Sept 10:00–13:30

Thursday, 1 October 10:00–13:30

Friday, 2 October 10:00–13:30

Register now!

How registration works

1
Fill out the form

Complete the registration form below with your details.

2
Receive your invoice

An invoice and payment instructions will be sent to your inbox.

3
Complete payment

You can pay by credit card or direct bank transfer.

4
Secure your place

Your spot on the course is confirmed once payment has been received.

Course details

Course duration: 5 days, 5 sessions; 3.5 hours each

Course cost: €850 before taxes

Course Terms & Conditions

đź“© If you have any questions or issues, please contact us at [email protected]

Instructors

Thom Brown has worked in the industry for over 20 years. With many years of experience working with PostgreSQL, he has extensive expertise in supporting clients on their PostgreSQL journey, helping them achieve high availability for their business-critical projects.
Thom Brown
PostgreSQL Consultant

Stefan has close to 15 years of expertise in the database space, boasting extensive experience in client support, maintenance, and architectural consulting.
He is a recognised PostgreSQL contributor and a contributor to pgBackRest, a reliable backup and restore solution for PostgreSQL.

Stefan Fercot
Senior PostgreSQL Expert