在 Ubuntu 上修改 pgAdmin 密码,分两种情况:pgAdmin 4 登录密码 和 PostgreSQL 数据库用户密码。下面分别说明。
如果你是通过浏览器访问 http://localhost/pgadmin4 使用的 pgAdmin:
pgAdmin 4 使用 SQLite 存储用户数据。
# 找到 pgAdmin 配置目录
ls ~/.pgadmin/
# 进入目录
cd ~/.pgadmin/
# 使用 Python 重置密码
python3 -c "
import pgadmin.utils as u
from pgadmin.model import User
u.init_app()
db = u.get_app().db
user = db.session.query(User).filter_by(email='你的邮箱').first()
user.password = '新密码'
db.session.commit()
"
或更直接(不推荐生产环境):
sqlite3 ~/.pgadmin/pgadmin4.db
UPDATE user SET password = '新密码' WHERE email='你的邮箱';
⚠️ 明文密码不加密,仅用于应急
postgres → Propertiessudo -u postgres psql
ALTER USER postgres WITH PASSWORD '新密码';
退出:
\q
sudo nano /etc/postgresql/*/main/pg_hba.conf
将:
local all postgres peer
改为:
local all postgres trust
重启:
sudo systemctl restart postgresql
然后无密码登录并改密码,最后改回 peer。
Q:pgAdmin 连不上 PostgreSQL?
→ 密码改了但 pgAdmin 连接没更新,需要重新输入密码
Q:提示“密码认证失败”?
→ 确认改的是 数据库用户密码,不是 pgAdmin 登录密码
如果你能告诉我:
我可以给你更精确的步骤。