debian

Debian中PostgreSQL版本升级

小樊
37
2025-07-12 07:51:39
栏目: 云计算

在Debian系统上升级PostgreSQL数据库可以按照以下步骤进行:

备份数据

在进行任何升级操作之前,务必备份您的数据库。可以使用 pg_dump 工具进行备份:

sudo -u postgres pg_dumpall -U your_username -f backup.sql

更新软件包列表

确保系统已更新到最新版本:

sudo apt update

安装新版本的PostgreSQL

  1. 添加PostgreSQL官方PPA(适用于Debian 10及更高版本):
    sudo add-apt-repository "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main"
    sudo apt update
    
  2. 查看可用的PostgreSQL版本并选择要升级到的版本
    sudo apt list --upgradable | grep postgresql
    sudo apt install postgresql-<version>
    
    <version> 替换为您想要安装的版本号。

停止旧版本的PostgreSQL服务

停止当前运行的PostgreSQL服务:

sudo systemctl stop postgresql

使用pg_upgrade进行升级

小版本升级

sudo /usr/pgsql-<version>/bin/pg_upgrade --old-bindir /usr/pgsql-<old_version>/bin --new-bindir /usr/pgsql-<version>/bin --old-datadir /var/lib/pgsql/<old_version>/data --new-datadir /var/lib/pgsql/<version>/data --link --check

大版本升级

pg_dumpall -U postgres -f /home/postgres/dumpall_data.sql
pg_config --print-configure
tar zxvf postgresql-<version>.tar.gz
cd postgresql-<version>
./configure --prefix=/usr/local/pgsql-<version>
make && make install
/usr/local/pgsql-<version>/bin/initdb -D /usr/local/pgsql-<version>/data -E UTF8
/usr/local/pgsql-<old_version>/bin/pg_ctl -D /usr/local/pgsql-<old_version>/data stop
/usr/local/pgsql-<version>/bin/pg_upgrade --old-bindir /usr/local/pgsql-<old_version>/bin --new-bindir /usr/local/pgsql-<version>/bin --old-datadir /usr/local/pgsql-<old_version>/data --new-datadir /usr/local/pgsql-<version>/data --link --check

验证升级

升级完成后,检查PostgreSQL版本是否已成功更新:

psql -V

0
看了该问题的人还看了