温馨提示×

ubuntu pgadmin怎么设权限

小樊
40
2026-09-12 15:29:43
栏目: 智能运维

在 Ubuntu 上,PgAdmin 本身并不直接“管理 Linux 权限”,它主要是用来管理 PostgreSQL 数据库权限。你的问题通常属于下面两种情况之一,我分别说明:


一、PgAdmin 连接 PostgreSQL 的权限(登录权限)

1. 创建数据库用户

在 Ubuntu 的终端里:

sudo -u postgres psql
CREATE USER myuser WITH PASSWORD 'mypassword';

2. 赋予权限(关键)

-- 赋予某个数据库权限
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;

-- 赋予表权限
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO myuser;

3. PgAdmin 中配置连接

  • 打开 PgAdmin
  • 右键 Servers → Register → Server
  • 填写:
    • Host: localhost
    • Username: myuser
    • Password: mypassword

二、PgAdmin 里“不同人看不同数据库”(权限隔离)

PostgreSQL 权限模型是:

用户 → 数据库 / 表 / 模式 → 权限

示例:只读用户

CREATE USER readonly WITH PASSWORD '123456';
GRANT CONNECT ON DATABASE mydb TO readonly;
GRANT USAGE ON SCHEMA public TO readonly;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO readonly;

PgAdmin 里用 readonly 登录,就只能看不能改。


三、如果你想限制“PgAdmin 界面功能”

PgAdmin 不能限制界面按钮,权限完全由 PostgreSQL 控制:

  • INSERT 权限 → 不能插数据
  • CREATE 权限 → 不能建表
  • SUPERUSER → 看不到别人库

四、Ubuntu 系统层面的权限(补充)

如果你是问 PgAdmin 软件本身的访问权限

# 只允许某个用户运行
sudo chown root:youruser /usr/bin/pgadmin4
sudo chmod 750 /usr/bin/pgadmin4

五、常见错误

  • ❌ 用户存在但连不上 → pg_hba.conf 没配置
  • ❌ 能连但看不到表 → 没 USAGE 权限
  • ❌ PgAdmin 报权限不足 → 数据库用户权限不够

如果你能具体说:

  • PgAdmin 登录权限
  • 还是 数据库用户权限
  • 还是 Ubuntu 系统用户权限

我可以直接给你一套完整命令。

0