<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>PG-Admin on PIGSTY</title><link>https://pigsty.io/tags/pg-admin/</link><description>Recent content in PG-Admin on PIGSTY</description><generator>Hugo</generator><language>en</language><lastBuildDate>Fri, 17 Apr 2026 09:14:36 +0800</lastBuildDate><atom:link href="https://pigsty.io/tags/pg-admin/index.xml" rel="self" type="application/rss+xml"/><item><title>The PostgreSQL 'Supply Cut' and Trust Issues in Software Supply Chain</title><link>https://pigsty.io/blog/pg/pg-mirror-pigsty/</link><pubDate>Fri, 15 Aug 2025 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pg-mirror-pigsty/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pg-mirror-pigsty/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pg-mirror-pigsty.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PostgreSQL official repos cut off global mirror sync channels, open-source binaries supply disrupted, revealing the true colors of various database and cloud vendors. &lt;a href="https://vonng.com/en/pg/pg-mirror-pigsty/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PGDG Cuts Off Mirror Sync Channel</title><link>https://pigsty.io/blog/pg/pg-mirror-break/</link><pubDate>Mon, 07 Jul 2025 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pg-mirror-break/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pg-mirror-break/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pg-mirror-break.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PGDG cuts off FTP rsync sync channels, global mirror sites universally disconnected - this time they really strangled global users&amp;rsquo; supply chain. &lt;a href="https://vonng.com/en/pg/pg-mirror-break/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PostgreSQL Macro Query Optimization with pg_stat_statements</title><link>https://pigsty.io/blog/pg/pgss/</link><pubDate>Thu, 26 Oct 2023 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pgss/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pgss/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pgss.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Query optimization&lt;/strong&gt; is one of the core responsibilities of DBAs. This article introduces how to use metrics provided by &lt;code&gt;pg_stat_statements&lt;/code&gt; for macro-level PostgreSQL query optimization. &lt;a href="https://vonng.com/en/pg/pgss/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>How to Use pg_filedump for Data Recovery?</title><link>https://pigsty.io/blog/pg/pg-filedump/</link><pubDate>Wed, 27 Sep 2023 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pg-filedump/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pg-filedump/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pg-filedump.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Backups are a DBA&amp;rsquo;s lifeline — but what if your PostgreSQL database has already exploded and you have no backups? Maybe &lt;code&gt;pg_filedump&lt;/code&gt; can help you! &lt;a href="https://vonng.com/en/pg/pg-filedump/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Localization and Collation Rules in PostgreSQL</title><link>https://pigsty.io/blog/pg/collate/</link><pubDate>Fri, 05 Mar 2021 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/collate/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/collate/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/collate.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;What? Don&amp;rsquo;t know what COLLATION is? Remember one thing: using C COLLATE is always the right choice! &lt;a href="https://vonng.com/en/pg/collate/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PostgreSQL Logical Replication Deep Dive</title><link>https://pigsty.io/blog/pg/logical-replication/</link><pubDate>Wed, 03 Mar 2021 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/logical-replication/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/logical-replication/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/logical-replication.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This article introduces the principles and best practices of logical replication in PostgreSQL 13. &lt;a href="https://vonng.com/en/pg/logical-replication/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>A Methodology for Diagnosing PostgreSQL Slow Queries</title><link>https://pigsty.io/blog/pg/slow-query/</link><pubDate>Tue, 23 Feb 2021 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/slow-query/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/slow-query/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/slow-query.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Slow queries are the sworn enemy of OLTP databases. Here’s how to identify, analyze, and fix them using metrics (Pigsty dashboards), pg_stat_statements, and logs. &lt;a href="https://vonng.com/en/pg/slow-query/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Incident-Report: Patroni Failure Due to Time Travel</title><link>https://pigsty.io/blog/pg/time-travel/</link><pubDate>Mon, 22 Feb 2021 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/time-travel/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/time-travel/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/time-travel.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Machine restarted due to failure, NTP service corrected PG time after PG startup, causing Patroni to fail to start. &lt;a href="https://vonng.com/en/pg/time-travel/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Online Primary Key Column Type Change</title><link>https://pigsty.io/blog/pg/alter-type/</link><pubDate>Fri, 15 Jan 2021 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/alter-type/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/alter-type/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/alter-type.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;How to change column types online, such as upgrading from INT to BIGINT? &lt;a href="https://vonng.com/en/pg/alter-type/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Golden Monitoring Metrics: Errors, Latency, Throughput, Saturation</title><link>https://pigsty.io/blog/pg/golden-metrics/</link><pubDate>Fri, 06 Nov 2020 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/golden-metrics/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/golden-metrics/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/golden-metrics.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Understanding the golden monitoring metrics in PostgreSQL &lt;a href="https://vonng.com/en/pg/golden-metrics/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Database Cluster Management Concepts and Entity Naming Conventions</title><link>https://pigsty.io/blog/pg/entity-and-naming/</link><pubDate>Wed, 03 Jun 2020 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/entity-and-naming/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/entity-and-naming/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/entity-and-naming.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Concepts and their naming are very important. Naming style reflects an engineer&amp;rsquo;s understanding of system architecture. Poorly defined concepts lead to communication confusion, while carelessly set names create unexpected additional burden. Therefore, they need careful design. &lt;a href="https://vonng.com/en/pg/entity-and-naming/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PostgreSQL's KPI</title><link>https://pigsty.io/blog/pg/pg-load/</link><pubDate>Fri, 29 May 2020 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pg-load/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pg-load/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pg-load.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Managing databases is similar to managing people - both need KPIs (Key Performance Indicators). So what are database KPIs? This article introduces a way to measure PostgreSQL load: using a single horizontally comparable metric that is basically independent of workload type and machine type, called &lt;strong&gt;PG Load&lt;/strong&gt;. &lt;a href="https://vonng.com/en/pg/pg-load/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Online PostgreSQL Column Type Migration</title><link>https://pigsty.io/blog/pg/migrate-column-type/</link><pubDate>Thu, 30 Jan 2020 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/migrate-column-type/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/migrate-column-type/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/migrate-column-type.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;How to modify PostgreSQL column types online? A general approach &lt;a href="https://vonng.com/en/pg/migrate-column-type/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Incident: PostgreSQL Extension Installation Causes Connection Failure</title><link>https://pigsty.io/blog/pg/extension/</link><pubDate>Thu, 13 Jun 2019 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/extension/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/extension/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/extension.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Today encountered an interesting case where a customer reported database connection issues caused by extensions. &lt;a href="https://vonng.com/en/pg/extension/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PostgreSQL Common Replication Topology Plans</title><link>https://pigsty.io/blog/pg/replication-plan/</link><pubDate>Fri, 29 Mar 2019 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/replication-plan/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/replication-plan/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/replication-plan.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Replication is one of the core issues in system architecture. &lt;a href="https://vonng.com/en/pg/replication-plan/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Warm Standby: Using pg_receivewal</title><link>https://pigsty.io/blog/pg/backup-plan/</link><pubDate>Sat, 02 Mar 2019 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/backup-plan/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/backup-plan/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/backup-plan.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;There are various backup strategies. Physical backups can usually be divided into four types. &lt;a href="https://vonng.com/en/pg/backup-plan/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Incident-Report: Connection-Pool Contamination Caused by pg_dump</title><link>https://pigsty.io/blog/pg/pg-dump-failure/</link><pubDate>Tue, 11 Dec 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pg-dump-failure/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pg-dump-failure/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pg-dump-failure.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Sometimes, interactions between components manifest in subtle ways. For example, using pg_dump to export data from a connection pool can cause connection pool contamination issues. &lt;a href="https://vonng.com/en/pg/pg-dump-failure/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PostgreSQL Data Page Corruption Repair</title><link>https://pigsty.io/blog/pg/page-corruption/</link><pubDate>Thu, 29 Nov 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/page-corruption/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/page-corruption/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/page-corruption.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Using binary editing to repair PostgreSQL data pages, and how to make a primary key query return two records. &lt;a href="https://vonng.com/en/pg/page-corruption/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Relation Bloat Monitoring and Management</title><link>https://pigsty.io/blog/pg/bloat/</link><pubDate>Sat, 06 Oct 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/bloat/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/bloat/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/bloat.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PostgreSQL uses MVCC as its primary concurrency control technology. While it has many benefits, it also brings other effects, such as relation bloat. &lt;a href="https://vonng.com/en/pg/bloat/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Getting Started with PipelineDB</title><link>https://pigsty.io/blog/pg/pipeline-intro/</link><pubDate>Fri, 07 Sep 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pipeline-intro/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pipeline-intro/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pipeline-intro.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PipelineDB is a PostgreSQL extension for streaming analytics. Here’s how to install it and build continuous views over live data. &lt;a href="https://vonng.com/en/pg/pipeline-intro/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>TimescaleDB Quick Start</title><link>https://pigsty.io/blog/pg/timescale-install/</link><pubDate>Fri, 07 Sep 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/timescale-install/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/timescale-install/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/timescale-install.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;TimescaleDB is a PostgreSQL extension plugin that provides time-series database functionality. &lt;a href="https://vonng.com/en/pg/timescale-install/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Incident-Report: Integer Overflow from Rapid Sequence Number Consumption</title><link>https://pigsty.io/blog/pg/sequence-overflow/</link><pubDate>Fri, 20 Jul 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/sequence-overflow/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/sequence-overflow/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/sequence-overflow.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you use Integer sequences on tables, you should consider potential overflow scenarios. &lt;a href="https://vonng.com/en/pg/sequence-overflow/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Incident-Report: PostgreSQL Transaction ID Wraparound</title><link>https://pigsty.io/blog/pg/xid-wrap-around/</link><pubDate>Fri, 20 Jul 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/xid-wrap-around/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/xid-wrap-around/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/xid-wrap-around.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;XID WrapAround is perhaps a unique type of failure specific to PostgreSQL &lt;a href="https://vonng.com/en/pg/xid-wrap-around/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Monitoring Table Size in PostgreSQL</title><link>https://pigsty.io/blog/pg/mon-table-size/</link><pubDate>Mon, 14 May 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/mon-table-size/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/mon-table-size/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/mon-table-size.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Tables in PostgreSQL correspond to many physical files. This article explains how to calculate the actual size of a table in PostgreSQL. &lt;a href="https://vonng.com/en/pg/mon-table-size/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PgAdmin Installation and Configuration</title><link>https://pigsty.io/blog/pg/pgadmin-install/</link><pubDate>Sat, 14 Apr 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pgadmin-install/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pgadmin-install/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pgadmin-install.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PgAdmin is a GUI program for managing PostgreSQL, written in Python, but it&amp;rsquo;s quite dated and requires some additional configuration. &lt;a href="https://vonng.com/en/pg/pgadmin-install/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Incident-Report: Uneven Load Avalanche</title><link>https://pigsty.io/blog/pg/download-failure/</link><pubDate>Sun, 08 Apr 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/download-failure/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/download-failure/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/download-failure.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Recently there was a perplexing incident where a database had half its data volume and load migrated away, but ended up being overwhelmed due to increased load. &lt;a href="https://vonng.com/en/pg/download-failure/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Bash and psql Tips</title><link>https://pigsty.io/blog/pg/psql-and-bash/</link><pubDate>Sat, 07 Apr 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/psql-and-bash/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/psql-and-bash/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/psql-and-bash.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Some tips for interacting between PostgreSQL and Bash. &lt;a href="https://vonng.com/en/pg/psql-and-bash/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PostgreSQL Routine Maintenance</title><link>https://pigsty.io/blog/pg/routine-maintain/</link><pubDate>Sat, 10 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/routine-maintain/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/routine-maintain/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/routine-maintain.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Cars need oil changes, databases need maintenance. For PG, three important maintenance tasks: backup, repack, vacuum &lt;a href="https://vonng.com/en/pg/routine-maintain/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Backup and Recovery Methods Overview</title><link>https://pigsty.io/blog/pg/backup-overview/</link><pubDate>Fri, 09 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/backup-overview/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/backup-overview/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/backup-overview.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Backup is the foundation of a DBA&amp;rsquo;s livelihood. With backups, there&amp;rsquo;s no need to panic. &lt;a href="https://vonng.com/en/pg/backup-overview/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PgBackRest2 Documentation</title><link>https://pigsty.io/blog/pg/pgbackrest/</link><pubDate>Wed, 07 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pgbackrest/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pgbackrest/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pgbackrest.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PgBackRest is a set of PostgreSQL backup tools written in Perl &lt;a href="https://vonng.com/en/pg/pgbackrest/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Pgbouncer Quick Start</title><link>https://pigsty.io/blog/pg/pgbouncer-usage/</link><pubDate>Wed, 07 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/pgbouncer-usage/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/pgbouncer-usage/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/pgbouncer-usage.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Pgbouncer is a lightweight database connection pool. This guide covers basic Pgbouncer configuration, management, and usage. &lt;a href="https://vonng.com/en/pg/pgbouncer-usage/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PostgreSQL Server Log Regular Configuration</title><link>https://pigsty.io/blog/pg/logging/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/logging/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/logging/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/logging.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s recommended to configure PostgreSQL&amp;rsquo;s log format as CSV for easy analysis, and it can be directly imported into PostgreSQL data tables. &lt;a href="https://vonng.com/en/pg/logging/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Testing Disk Performance with FIO</title><link>https://pigsty.io/blog/pg/fio/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/fio/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/fio/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/fio.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;FIO is a convenient tool for testing disk I/O performance &lt;a href="https://vonng.com/en/pg/fio/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Using sysbench to Test PostgreSQL Performance</title><link>https://pigsty.io/blog/pg/sysbench/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/sysbench/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/sysbench/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/sysbench.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Although PostgreSQL provides pgbench, sometimes you need sysbench to outperform MySQL. &lt;a href="https://vonng.com/en/pg/sysbench/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Changing Engines Mid-Flight — PostgreSQL Zero-Downtime Data Migration</title><link>https://pigsty.io/blog/pg/migration-without-downtime/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/migration-without-downtime/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/migration-without-downtime/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/migration-without-downtime.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Data migration typically involves stopping services for updates. Zero-downtime data migration is a relatively advanced operation. &lt;a href="https://vonng.com/en/pg/migration-without-downtime/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Finding Unused Indexes</title><link>https://pigsty.io/blog/pg/find-dummy-index/</link><pubDate>Sun, 04 Feb 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/find-dummy-index/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/find-dummy-index/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/find-dummy-index.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Indexes are useful, but they&amp;rsquo;re not free. Unused indexes are a waste. Use these methods to identify unused indexes. &lt;a href="https://vonng.com/en/pg/find-dummy-index/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Batch Configure SSH Passwordless Login</title><link>https://pigsty.io/blog/pg/ssh-add-key/</link><pubDate>Sun, 07 Jan 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/ssh-add-key/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/ssh-add-key/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/ssh-add-key.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Quick configuration for passwordless login to all machines &lt;a href="https://vonng.com/en/pg/ssh-add-key/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Wireshark Packet Capture Protocol Analysis</title><link>https://pigsty.io/blog/pg/wireshark-capture/</link><pubDate>Fri, 05 Jan 2018 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/wireshark-capture/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/wireshark-capture/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/wireshark-capture.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Wireshark is a very useful tool, especially suitable for analyzing network protocols. Here&amp;rsquo;s a simple introduction to using Wireshark for packet capture and PostgreSQL protocol analysis. &lt;a href="https://vonng.com/en/pg/wireshark-capture/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>The Versatile file_fdw — Reading System Information from Your Database</title><link>https://pigsty.io/blog/pg/file_fdw/</link><pubDate>Fri, 01 Dec 2017 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/file_fdw/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/file_fdw/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/file_fdw.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;With &lt;code&gt;file_fdw&lt;/code&gt;, you can easily view operating system information, fetch network data, and feed various data sources into your database for unified viewing and management. &lt;a href="https://vonng.com/en/pg/file_fdw/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Common Linux Statistics CLI Tools</title><link>https://pigsty.io/blog/pg/unix-tool/</link><pubDate>Thu, 07 Sep 2017 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/unix-tool/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/unix-tool/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/unix-tool.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;top, free, vmstat, iostat: Quick reference for four commonly used CLI tools &lt;a href="https://vonng.com/en/pg/unix-tool/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Installing PostGIS from Source</title><link>https://pigsty.io/blog/pg/postgis-install/</link><pubDate>Thu, 07 Sep 2017 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/postgis-install/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/postgis-install/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/postgis-install.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PostGIS is PostgreSQL&amp;rsquo;s killer extension, but compiling and installing it isn&amp;rsquo;t easy. &lt;a href="https://vonng.com/en/pg/postgis-install/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PostgreSQL MongoFDW Installation and Deployment</title><link>https://pigsty.io/blog/pg/mongo_fdw-install/</link><pubDate>Sat, 28 May 2016 00:00:00 +0000</pubDate><guid>https://pigsty.io/blog/pg/mongo_fdw-install/</guid><description>&lt;p&gt;&lt;a href="https://vonng.com/en/pg/mongo_fdw-install/"&gt;&lt;img src="https://pigsty.io/img/hero/pg/mongo_fdw-install.jpg" alt="featured"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Recently had business requirements to access MongoDB through PostgreSQL FDW, but compiling MongoDB FDW is really a nightmare. &lt;a href="https://vonng.com/en/pg/mongo_fdw-install/"&gt;&lt;strong&gt;Read more&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description></item></channel></rss>