• How To Simplify pgBouncer Monitoring with pgbouncer_fdw

    Keith Fiske

    For connection pooling in PostgreSQL, one of the best and most popular tools out there is PgBouncer . However, monitoring PgBouncer can be challenging due to its use of SHOW commands, which are only available via a special database connection as opposed to making its statistics available via a standard table or view. In order to more easily monitor PgBouncer, the team at Crunchy Data developed an open source PgBouncer Foreign Data Wrapper (pgbouncer_fdw). This blog post describes why monitoring...

    Read More
  • 10 min read

    How To Improve PgBouncer Security with TLS/SSL

    David Youatt

    PgBouncer is a commonly deployed and recommended connection pooler for PostgreSQL. It supports a number of authentication methods including TLS/SSL client certificate authentication. Since PgBouncer is located logically between the client and PostgreSQL you have the option of using TLS and cert authentication from client to PgBouncer and from PgBouncer to PostgreSQL. In this brief blog post, we’ll describe configuring securing the client-to-PgBouncer transport first, then build on that to use cl...

    Read More
  • How to Perform a Major Version Upgrade Using pg_upgrade in PostgreSQL

    James Chanco Jr.

    Odds are you've been tasked with upgrading software from one major release to another at some point. Trust me, I understand how cumbersome and difficult these upgrades can be! Luckily, Crunchy Data has some tested methods to help get you upgraded with the least amount of headache possible! For this use case, we’ll be using pg_upgrade. Let’s get started! This part is critical to a successful and healthy upgrade: read the release notes. Sometimes, even within minor upgrades, additional steps may b...

    Read More
  • Hope Is Not A Strategy: How Hardware Issues Affect Your PostgreSQL Data

    Joe Conway

    For anyone following my previous blog posts, this is a bit of a departure for me. Typically, I get down in the weeds and show lots of code. This post, on the other hand, is more of a philosophical rant. At least you can't say I didn't warn you! Yesterday I was made aware of this bulletin from HPE , which alerts that certain models of HPE SSDs have a firmware bug that will cause the drives to deterministically fail very suddenly at precisely 32,768 hours of operation. You may recognize this as a...

    Read More
  • How To Get Started with pgBackRest and PostgreSQL 12

    Tom Swartz

    pgBackRest is a reliable and simple to configure backup and restore solution for PostgreSQL, which provides a powerful solution for any PostgreSQL database; be it a small project, or scaled up to enterprise-level use cases. Many powerful features are included in pgBackRest, including parallel backup and restore, local or remote operation, full, incremental, and differential backup types, backup rotation, archive expiration, backup integrity, page checksums, backup resume, streaming compression a...

    Read More
  • 4 min read

    Enhancing PostgreSQL 12 Security with the CIS Benchmark

    Douglas Hunley

    Crunchy Data has recently announced an update to the CIS PostgreSQL Benchmark by the Center for Internet Security , a nonprofit organization that provides publications around standards and best practices for securing technologies systems. This newly published CIS PostgreSQL 12 Benchmark joins the existing CIS Benchmarks for PostgreSQL 9.5, 9.6, 10, and 11 while continuing to build upon Crunchy Data's efforts with the PostgreSQL Security Technical Implementation Guide (PostgreSQL STIG )....

    Read More
  • 6 min read

    Monitoring PostgreSQL Clusters in Kubernetes

    Jonathan S. Katz

    UPDATE : Read the updated " How to Setup PostgreSQL Monitoring in Kubernetes " which is even easier to set up and provides additional monitoring features! The open source PostgreSQL Operator provides many features that are required to run a production database-as-a-service on Kubernetes , including provisioning PostgreSQL clusters, performing backup and restore operations , and manage high-availability runtime environments. This time, we are going to look at a very important part of managing...

    Read More
  • PostgreSQL Change Data Capture With Debezium

    Dave Cramer

    As you can see from my previous blogs ( A Guide to Building an Active-Active PostgreSQL Cluster ) I’m interested in the ways that we can replicate data in PostgreSQL. For this post, I've decided to write about a product that enabled replicating heterogeneous databases. Through my involvement in the PostgreSQL JDBC project, I’ve had the opportunity to help out the folks in the Debezium project. Debezium is more than just another heterogeneous replication solution. Debezium is built upon the Ap...

    Read More
  • 3 min read

    Waiting for PostGIS 3: ST_Transform() and Proj6

    Paul Ramsey

    Where are you? Go ahead and figure out your answer, I'll wait. No matter what your answer, whether you said "sitting in my office chair" or "500 meters south-west of city hall" or "48.43° north by 123.36° west", you expressed your location relative to something else, whether that thing was your office layout, your city, or Greenwich . A geospatial database like PostGIS has to have able to convert between these different reference frames, known as "coordinate reference systems". The math for the...

    Read More
  • 8 min read

    Creating a PostgreSQL Cluster with Kubernetes CRDs

    Jonathan S. Katz

    The PostgreSQL Operator provides users with a few different methods to perform PostgreSQL cluster operations, via: • a REST API • , PostgreSQL Operator Command Line Interface ( CLI ) • Directly interfacing with Kubernetes, including various APIs and custom resource definitions ( CRDs ). a REST API , PostgreSQL Operator Command Line Interface ( CLI ) Directly interfacing with Kubernetes, including various APIs and custom resource definitions ( CRDs ). While the REST API and pgo provide...

    Read More