在 CentOS 下卸载 PostgreSQL,通常分为 停止服务 → 卸载软件包 → 清理数据和配置 三步。下面按常见场景给你一个完整说明。
先确认是通过 RPM/YUM 安装的,还是 源码 安装的。
rpm -qa | grep postgres
# 或
yum list installed | grep postgresql
如果有输出(如 postgresql-server、postgresql-13 等),说明是 包管理器安装,按下面方式卸载即可。
sudo systemctl stop postgresql
如果不确定服务名,可以先查看:
systemctl list-units --type=service | grep postgres
rpm -qa | grep postgresql
示例输出:
postgresql-server-13.10-1.el7.x86_64
postgresql-13.10-1.el7.x86_64
postgresql-libs-13.10-1.el7.x86_64
sudo yum remove postgresql*
或(CentOS 8+ / Rocky / Alma)
sudo dnf remove postgresql*
sudo yum remove postgresql-server postgresql postgresql-libs
默认数据目录一般在:
/var/lib/pgsql/
或(不同版本)
/var/lib/pgsql/13/
删除:
sudo rm -rf /var/lib/pgsql
⚠️ 此操作会永久删除数据库数据,请先确认是否需要备份
sudo rm -rf /etc/postgresql
(有些版本可能没有)
如果不再需要 postgres 系统用户:
sudo userdel -r postgres
-r会同时删除 home 目录
psql --version
which psql
systemctl status postgresql
如果都提示 未找到 或 inactive,说明卸载成功。
如果是 ./configure && make && make install 安装的:
# 停止服务
pg_ctl stop
# 删除安装目录(默认)
sudo rm -rf /usr/local/pgsql
# 删除数据目录
sudo rm -rf /usr/local/pgsql/data
清理残留:
sudo rm -rf /var/lib/pgsql
sudo rm -rf /var/run/postgresql
先确认版本:
rpm -qa | grep postgresql
再针对性卸载,例如:
sudo yum remove postgresql-13*
如果你愿意,可以告诉我:
我可以给你一条 完全定制化的卸载命令。