You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL连接异常与pgAdmin启动故障求助

PostgreSQL与pgAdmin4使用问题及解决方案

已解决的psql连接问题

安装Postgres-server和Postgres-desktop后,首次执行psql时出现以下错误:

psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL:  database "cal" does not exist

说明:PostgreSQL创建用户时不会自动生成同名数据库,默认情况下psql会尝试连接与当前系统用户名(此处为cal)同名的数据库,因此需要手动创建对应数据库:

createdb cal

创建后即可正常通过psql连接数据库。

root角色的矛盾错误解析

执行sudo psql时出现错误:

psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL:  role "root" does not exist

尝试创建root角色:

sudo -u postgres createuser root

得到结果:

could not change directory to "/home/cal": Permission denied
Password: 
createuser: error: creation of new role failed: ERROR:  role "root" already exists

解析:

  • could not change directory to "/home/cal"是因为切换到postgres用户后,该用户没有访问/home/cal目录的权限,属于无关警告,不影响命令执行;
  • 报错“role 'root' already exists”说明该角色已存在,之前的sudo psql报错是因为PostgreSQL中默认禁止root用户直接登录(即使角色存在),建议始终使用普通用户(如cal)连接数据库,无需纠结root角色的问题。

pgAdmin4无法启动的核心问题及解决

当前psql可正常连接,但pgAdmin4启动失败,报错信息如下:

pgAdmin Runtime Environment
--------------------------------------------------------
Python Path: "/usr/pgadmin4/venv/bin/python3"
Runtime Config File: "/home/cal/.config/pgadmin/runtime_config.json"
pgAdmin Config File: "/usr/pgadmin4/web/config.py"
Webapp Path: "/usr/pgadmin4/web/pgAdmin4.py"
pgAdmin Command: "/usr/pgadmin4/venv/bin/python3 -s /usr/pgadmin4/web/pgAdmin4.py"
Environment: 
  - QT_SCALE_FACTOR: 1
  - LANGUAGE: en_ZA:en
  - USER: cal
  - XDG_SEAT: seat0
  - XDG_SESSION_TYPE: x11
  - COMPIZ_CONFIG_PROFILE: mint
  - SHLVL: 0
  - HOME: /home/cal
  - DESKTOP_SESSION: mate
  - GIO_LAUNCHED_DESKTOP_FILE: /home/cal/Desktop/pgadmin4.desktop
  - GTK_MODULES: gail:atk-bridge
  - XDG_SEAT_PATH: /org/freedesktop/DisplayManager/Seat0
  - DBUS_SESSION_BUS_ADDRESS: unix:path=/run/user/1000/bus
  - GIO_LAUNCHED_DESKTOP_FILE_PID: 3627
  - QT_QPA_PLATFORMTHEME: qt5ct
  - GTK_IM_MODULE: ibus
  - LOGNAME: cal
  - XDG_SESSION_CLASS: user
  - CLUTTER_BACKEND: x11
  - XDG_SESSION_ID: c2
  - GTK_OVERLAY_SCROLLING: 0
  - INSIDE_CAJA_PYTHON: 
  - PATH: /home/cal/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
  - GDM_LANG: en_US
  - GTK3_MODULES: xapp-gtk3-module
  - SESSION_MANAGER: local/i5:@/tmp/.ICE-unix/1487,unix/i5:/tmp/.ICE-unix/1487
  - XDG_SESSION_PATH: /org/freedesktop/DisplayManager/Session0
  - XDG_RUNTIME_DIR: /run/user/1000
  - DISPLAY: :0
  - LANG: en_ZA.UTF-8
  - XDG_CURRENT_DESKTOP: MATE
  - XMODIFIERS: @im=ibus
  - XDG_SESSION_DESKTOP: mate
  - XAUTHORITY: /home/cal/.Xauthority
  - XDG_GREETER_DATA_DIR: /var/lib/lightdm-data/cal
  - SSH_AUTH_SOCK: /run/user/1000/keyring/ssh
  - SHELL: /bin/bash
  - QT_ACCESSIBILITY: 1
  - GDMSESSION: mate
  - GPG_AGENT_INFO: /run/user/1000/gnupg/S.gpg-agent:0:1
  - QT_IM_MODULE: ibus
  - XDG_VTNR: 7
  - PWD: /home/cal
  - XDG_CONFIG_DIRS: /etc/xdg/xdg-mate:/etc/xdg
  - CLUTTER_IM_MODULE: ibus
  - XDG_DATA_DIRS: /usr/share/mate:/home/cal/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share
  - MATE_DESKTOP_SESSION_ID: this-is-deprecated
  - QT_FONT_DPI: 96
  - GDK_BACKEND: x11
  - NO_AT_BRIDGE: 1
  - PGADMIN_INT_PORT: 44621
  - PGADMIN_INT_KEY: a29d2232-f512-48f4-b84c-2e1ccaaf7208
  - PGADMIN_SERVER_MODE: OFF
--------------------------------------------------------

Total spawn time to start the pgAdmin4 server: 0.005 Sec
Failed to launch pgAdmin4. Error:
Error: spawn /usr/pgadmin4/venv/bin/python3 ENOENT

关键错误分析

Error: spawn /usr/pgadmin4/venv/bin/python3 ENOENT表示pgAdmin4找不到指定路径的Python3可执行文件,大概率是pgAdmin4的虚拟环境损坏或安装不完整。

解决方法

  1. 检查Python路径是否存在
    执行命令验证路径有效性:

    ls -l /usr/pgadmin4/venv/bin/python3
    

    如果输出“No such file or directory”,说明虚拟环境确实损坏。

  2. 重新安装pgAdmin4
    卸载现有pgAdmin4并重新安装(以Debian/Ubuntu系为例):

    sudo apt remove --purge pgadmin4 pgadmin4-desktop
    sudo apt autoremove
    sudo apt install pgadmin4-desktop
    
  3. 手动修复虚拟环境
    如果不想重新安装,可尝试手动重建虚拟环境:

    sudo mkdir -p /usr/pgadmin4/venv
    sudo python3 -m venv /usr/pgadmin4/venv
    sudo /usr/pgadmin4/venv/bin/pip install -r /usr/pgadmin4/web/requirements.txt
    
  4. 修改pgAdmin配置文件
    打开/usr/pgadmin4/web/config.py,找到Python路径相关配置,将其修改为系统中存在的Python3路径(如/usr/bin/python3)。


内容的提问来源于stack exchange,提问作者crawlingdev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 17:17:37