<?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 Yongjie Xue</title><link>https://www.yongjiexue.io/en/tags/pg-admin/</link><description>Recent content in PG Admin on Yongjie Xue</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Tue, 24 Mar 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://www.yongjiexue.io/en/tags/pg-admin/index.xml" rel="self" type="application/rss+xml"/><item><title>Meituan Deleted Users' Photos: Overbroad Permissions Are Worse Than a Privacy Leak</title><link>https://www.yongjiexue.io/en/cloud/meituan-purge-photo/</link><pubDate>Tue, 24 Mar 2026 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/cloud/meituan-purge-photo/</guid><description>Many Android users reported that Meituan deleted files from their photo libraries. The bigger issue is not just this bug, but the still-common pattern of overbroad storage permissions in the Chinese Android ecosystem.</description></item><item><title>Urgent Advisory: Pause PostgreSQL Minor-Release Installs and Upgrades</title><link>https://www.yongjiexue.io/en/pg/pg-out-of-sync-202602/</link><pubDate>Thu, 19 Feb 2026 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pg-out-of-sync-202602/</guid><description>The PostgreSQL 18.2 minor-release train introduced regressions in substring() and WAL replay. Hold off on fresh deployments and upgrades, then update promptly after the out-of-cycle releases ship on 2026-02-26.</description></item><item><title>How to Actually Do PostgreSQL High Availability</title><link>https://www.yongjiexue.io/en/pg/pg-ha-sota/</link><pubDate>Fri, 23 Jan 2026 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pg-ha-sota/</guid><description>A deep dive into the SOTA approach for PostgreSQL HA. RTO/RPO breakdown, from theory to production. If you&amp;rsquo;re still wrestling with PG HA, this might save you years.</description></item><item><title>On Trusting Open-Source Supply Chains</title><link>https://www.yongjiexue.io/en/db/tuna-mirror-site/</link><pubDate>Sat, 22 Nov 2025 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/db/tuna-mirror-site/</guid><description>In serious production you can’t rely on an upstream that explicitly says “no guarantees.” When someone says “don’t count on me,” the right answer is “then I’ll run it myself.”</description></item><item><title>The PostgreSQL 'Supply Cut' and Trust Issues in Software Supply Chain</title><link>https://www.yongjiexue.io/en/pg/pg-mirror-pigsty/</link><pubDate>Fri, 15 Aug 2025 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pg-mirror-pigsty/</guid><description>PostgreSQL official repos cut off global mirror sync channels, open-source binaries supply disrupted, revealing the true colors of various database and cloud vendors.</description></item><item><title>PGDG Cuts Off Mirror Sync Channel</title><link>https://www.yongjiexue.io/en/pg/pg-mirror-break/</link><pubDate>Mon, 07 Jul 2025 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pg-mirror-break/</guid><description>PGDG cuts off FTP rsync sync channels, global mirror sites universally disconnected - this time they really strangled global users&amp;rsquo; supply chain.</description></item><item><title>Where Will Databases and DBAs Go in the AI Era?</title><link>https://www.yongjiexue.io/en/db/ai-dba-job/</link><pubDate>Mon, 30 Jun 2025 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/db/ai-dba-job/</guid><description>Who will be revolutionized first - OLTP or OLAP? Integration vs specialization, how to choose? Where will DBAs go in the AI era? Feng&amp;rsquo;s views from the HOW 2025 conference roundtable, organized and published.</description></item><item><title>Will DBAs Be Eliminated by Cloud?</title><link>https://www.yongjiexue.io/en/cloud/dba-vs-rds/</link><pubDate>Fri, 02 Feb 2024 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/cloud/dba-vs-rds/</guid><description>Two days ago, the ninth episode of Open-Source Talks had the theme &amp;ldquo;Will DBAs Be Eliminated by Cloud?&amp;rdquo; As the host, I restrained myself from jumping into the debate throughout, so I&amp;rsquo;m writing this article to discuss this question: Will DBAs be eliminated by cloud?</description></item><item><title>PostgreSQL Macro Query Optimization with pg_stat_statements</title><link>https://www.yongjiexue.io/en/pg/pgss/</link><pubDate>Thu, 26 Oct 2023 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pgss/</guid><description>Query optimization is one of the core responsibilities of DBAs. This article introduces how to use metrics provided by pg_stat_statements for macro-level PostgreSQL query optimization.</description></item><item><title>Which EL-Series OS Distribution Is Best?</title><link>https://www.yongjiexue.io/en/db/rhel-compatibility/</link><pubDate>Mon, 09 Oct 2023 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/db/rhel-compatibility/</guid><description>RHEL-series OS distribution compatibility level: RHEL = Rocky ≈ Anolis &amp;gt; Alma &amp;gt; Oracle &amp;raquo; Euler. Recommend using RockyLinux 8.8, or Anolis 8.8 for domestic requirements.</description></item><item><title>How to Use pg_filedump for Data Recovery?</title><link>https://www.yongjiexue.io/en/pg/pg-filedump/</link><pubDate>Wed, 27 Sep 2023 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pg-filedump/</guid><description>Backups are a DBA&amp;rsquo;s lifeline — but what if your PostgreSQL database has already exploded and you have no backups? Maybe pg_filedump can help you!</description></item><item><title>Refuting "Why You Still Shouldn't Hire a DBA"</title><link>https://www.yongjiexue.io/en/cloud/no-dba-bullshit/</link><pubDate>Wed, 01 Mar 2023 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/cloud/no-dba-bullshit/</guid><description>Guo Degang has a comedy routine: &amp;ldquo;Say I tell a rocket scientist, your rocket is no good, the fuel is wrong. I think it should burn wood, better yet coal, and it has to be premium coal, not washed coal. If that scientist takes me seriously, he loses.&amp;rdquo;</description></item><item><title>Cloud RDS: From Database Drop to Exit</title><link>https://www.yongjiexue.io/en/cloud/drop-rds/</link><pubDate>Tue, 10 May 2022 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/cloud/drop-rds/</guid><description>I recently witnessed a live cloud database drop-and-run incident. This article discusses how to handle accidentally deleted data when using PostgreSQL in production environments.</description></item><item><title>Is DBA Still a Good Job?</title><link>https://www.yongjiexue.io/en/cloud/is-dba-good-job/</link><pubDate>Tue, 10 May 2022 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/cloud/is-dba-good-job/</guid><description>Ant Financial had a self-deprecating joke: besides regulation, only DBAs could bring down Alipay. Although DBA sounds like a profession with glorious history and dim prospects, who knows if it might become trendy again after a few terrifying major cloud database incidents?</description></item><item><title>Localization and Collation Rules in PostgreSQL</title><link>https://www.yongjiexue.io/en/pg/collate/</link><pubDate>Fri, 05 Mar 2021 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/collate/</guid><description>What? Don&amp;rsquo;t know what COLLATION is? Remember one thing: using C COLLATE is always the right choice!</description></item><item><title>PG Replica Identity Explained</title><link>https://www.yongjiexue.io/en/pg/replica-identity/</link><pubDate>Wed, 03 Mar 2021 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/replica-identity/</guid><description>Replica identity is important - it determines the success or failure of logical replication</description></item><item><title>PostgreSQL Logical Replication Deep Dive</title><link>https://www.yongjiexue.io/en/pg/logical-replication/</link><pubDate>Wed, 03 Mar 2021 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/logical-replication/</guid><description>This article introduces the principles and best practices of logical replication in PostgreSQL 13.</description></item><item><title>A Methodology for Diagnosing PostgreSQL Slow Queries</title><link>https://www.yongjiexue.io/en/pg/slow-query/</link><pubDate>Tue, 23 Feb 2021 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/slow-query/</guid><description>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.</description></item><item><title>Incident-Report: Patroni Failure Due to Time Travel</title><link>https://www.yongjiexue.io/en/pg/time-travel/</link><pubDate>Mon, 22 Feb 2021 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/time-travel/</guid><description>Machine restarted due to failure, NTP service corrected PG time after PG startup, causing Patroni to fail to start.</description></item><item><title>Online Primary Key Column Type Change</title><link>https://www.yongjiexue.io/en/pg/alter-type/</link><pubDate>Fri, 15 Jan 2021 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/alter-type/</guid><description>How to change column types online, such as upgrading from INT to BIGINT?</description></item><item><title>Golden Monitoring Metrics: Errors, Latency, Throughput, Saturation</title><link>https://www.yongjiexue.io/en/pg/golden-metrics/</link><pubDate>Fri, 06 Nov 2020 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/golden-metrics/</guid><description>Understanding the golden monitoring metrics in PostgreSQL</description></item><item><title>Database Cluster Management Concepts and Entity Naming Conventions</title><link>https://www.yongjiexue.io/en/pg/entity-and-naming/</link><pubDate>Wed, 03 Jun 2020 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/entity-and-naming/</guid><description>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.</description></item><item><title>PostgreSQL's KPI</title><link>https://www.yongjiexue.io/en/pg/pg-load/</link><pubDate>Fri, 29 May 2020 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pg-load/</guid><description>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 PG Load.</description></item><item><title>Online PostgreSQL Column Type Migration</title><link>https://www.yongjiexue.io/en/pg/migrate-column-type/</link><pubDate>Thu, 30 Jan 2020 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/migrate-column-type/</guid><description>How to modify PostgreSQL column types online? A general approach</description></item><item><title>Incident: PostgreSQL Extension Installation Causes Connection Failure</title><link>https://www.yongjiexue.io/en/pg/extension/</link><pubDate>Thu, 13 Jun 2019 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/extension/</guid><description>Today encountered an interesting case where a customer reported database connection issues caused by extensions.</description></item><item><title>Locks in PostgreSQL</title><link>https://www.yongjiexue.io/en/pg/pg-lock/</link><pubDate>Tue, 11 Jun 2019 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pg-lock/</guid><description>Snapshot isolation does most of the heavy lifting in PG, but locks still matter. Here’s a practical guide to table locks, row locks, intention locks, and pg_locks.</description></item><item><title>PostgreSQL Common Replication Topology Plans</title><link>https://www.yongjiexue.io/en/pg/replication-plan/</link><pubDate>Fri, 29 Mar 2019 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/replication-plan/</guid><description>Replication is one of the core issues in system architecture.</description></item><item><title>Warm Standby: Using pg_receivewal</title><link>https://www.yongjiexue.io/en/pg/backup-plan/</link><pubDate>Sat, 02 Mar 2019 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/backup-plan/</guid><description>There are various backup strategies. Physical backups can usually be divided into four types.</description></item><item><title>Incident-Report: Connection-Pool Contamination Caused by pg_dump</title><link>https://www.yongjiexue.io/en/pg/pg-dump-failure/</link><pubDate>Tue, 11 Dec 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pg-dump-failure/</guid><description>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.</description></item><item><title>PostgreSQL Data Page Corruption Repair</title><link>https://www.yongjiexue.io/en/pg/page-corruption/</link><pubDate>Thu, 29 Nov 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/page-corruption/</guid><description>Using binary editing to repair PostgreSQL data pages, and how to make a primary key query return two records.</description></item><item><title>Relation Bloat Monitoring and Management</title><link>https://www.yongjiexue.io/en/pg/bloat/</link><pubDate>Sat, 06 Oct 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/bloat/</guid><description>PostgreSQL uses MVCC as its primary concurrency control technology. While it has many benefits, it also brings other effects, such as relation bloat.</description></item><item><title>Getting Started with PipelineDB</title><link>https://www.yongjiexue.io/en/pg/pipeline-intro/</link><pubDate>Fri, 07 Sep 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pipeline-intro/</guid><description>PipelineDB is a PostgreSQL extension for streaming analytics. Here’s how to install it and build continuous views over live data.</description></item><item><title>TimescaleDB Quick Start</title><link>https://www.yongjiexue.io/en/pg/timescale-install/</link><pubDate>Fri, 07 Sep 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/timescale-install/</guid><description>TimescaleDB is a PostgreSQL extension plugin that provides time-series database functionality.</description></item><item><title>Incident-Report: Integer Overflow from Rapid Sequence Number Consumption</title><link>https://www.yongjiexue.io/en/pg/sequence-overflow/</link><pubDate>Fri, 20 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/sequence-overflow/</guid><description>If you use Integer sequences on tables, you should consider potential overflow scenarios.</description></item><item><title>Incident-Report: PostgreSQL Transaction ID Wraparound</title><link>https://www.yongjiexue.io/en/pg/xid-wrap-around/</link><pubDate>Fri, 20 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/xid-wrap-around/</guid><description>XID WrapAround is perhaps a unique type of failure specific to PostgreSQL</description></item><item><title>Monitoring Table Size in PostgreSQL</title><link>https://www.yongjiexue.io/en/pg/mon-table-size/</link><pubDate>Mon, 14 May 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/mon-table-size/</guid><description>Tables in PostgreSQL correspond to many physical files. This article explains how to calculate the actual size of a table in PostgreSQL.</description></item><item><title>PgAdmin Installation and Configuration</title><link>https://www.yongjiexue.io/en/pg/pgadmin-install/</link><pubDate>Sat, 14 Apr 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pgadmin-install/</guid><description>PgAdmin is a GUI program for managing PostgreSQL, written in Python, but it&amp;rsquo;s quite dated and requires some additional configuration.</description></item><item><title>Incident-Report: Uneven Load Avalanche</title><link>https://www.yongjiexue.io/en/pg/download-failure/</link><pubDate>Sun, 08 Apr 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/download-failure/</guid><description>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.</description></item><item><title>PostgreSQL Routine Maintenance</title><link>https://www.yongjiexue.io/en/pg/routine-maintain/</link><pubDate>Sat, 10 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/routine-maintain/</guid><description>Cars need oil changes, databases need maintenance. For PG, three important maintenance tasks: backup, repack, vacuum</description></item><item><title>Backup and Recovery Methods Overview</title><link>https://www.yongjiexue.io/en/pg/backup-overview/</link><pubDate>Fri, 09 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/backup-overview/</guid><description>Backup is the foundation of a DBA&amp;rsquo;s livelihood. With backups, there&amp;rsquo;s no need to panic.</description></item><item><title>PgBackRest2 Documentation</title><link>https://www.yongjiexue.io/en/pg/pgbackrest/</link><pubDate>Wed, 07 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pgbackrest/</guid><description>PgBackRest is a set of PostgreSQL backup tools written in Perl</description></item><item><title>Pgbouncer Quick Start</title><link>https://www.yongjiexue.io/en/pg/pgbouncer-usage/</link><pubDate>Wed, 07 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/pgbouncer-usage/</guid><description>Pgbouncer is a lightweight database connection pool. This guide covers basic Pgbouncer configuration, management, and usage.</description></item><item><title>PostgreSQL Server Log Regular Configuration</title><link>https://www.yongjiexue.io/en/pg/logging/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/logging/</guid><description>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.</description></item><item><title>Testing Disk Performance with FIO</title><link>https://www.yongjiexue.io/en/pg/fio/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/fio/</guid><description>FIO is a convenient tool for testing disk I/O performance</description></item><item><title>Using sysbench to Test PostgreSQL Performance</title><link>https://www.yongjiexue.io/en/pg/sysbench/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/sysbench/</guid><description>Although PostgreSQL provides pgbench, sometimes you need sysbench to outperform MySQL.</description></item><item><title>Changing Engines Mid-Flight — PostgreSQL Zero-Downtime Data Migration</title><link>https://www.yongjiexue.io/en/pg/migration-without-downtime/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/migration-without-downtime/</guid><description>Data migration typically involves stopping services for updates. Zero-downtime data migration is a relatively advanced operation.</description></item><item><title>Finding Unused Indexes</title><link>https://www.yongjiexue.io/en/pg/find-dummy-index/</link><pubDate>Sun, 04 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/find-dummy-index/</guid><description>Indexes are useful, but they&amp;rsquo;re not free. Unused indexes are a waste. Use these methods to identify unused indexes.</description></item><item><title>Batch Configure SSH Passwordless Login</title><link>https://www.yongjiexue.io/en/pg/ssh-add-key/</link><pubDate>Sun, 07 Jan 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/ssh-add-key/</guid><description>Quick configuration for passwordless login to all machines</description></item><item><title>Wireshark Packet Capture Protocol Analysis</title><link>https://www.yongjiexue.io/en/pg/wireshark-capture/</link><pubDate>Fri, 05 Jan 2018 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/wireshark-capture/</guid><description>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.</description></item><item><title>The Versatile file_fdw — Reading System Information from Your Database</title><link>https://www.yongjiexue.io/en/pg/file_fdw/</link><pubDate>Fri, 01 Dec 2017 00:00:00 +0000</pubDate><guid>https://www.yongjiexue.io/en/pg/file_fdw/</guid><description>With file_fdw, you can easily view operating system information, fetch network data, and feed various data sources into your database for unified viewing and management.</description></item></channel></rss>