温馨提示×

Ubuntu sqladmin如何设置权限

小樊
43
2026-08-31 19:50:57
栏目: 云计算

你提到的 “Ubuntu sqladmin” 通常有两种理解,下面分别说明,最常见的是 PostgreSQL 的 sqladmin 用户或角色权限设置


一、如果是 PostgreSQL 中的 sqladmin(用户/角色)

1️⃣ 登录 PostgreSQL

sudo -u postgres psql

2️⃣ 查看现有用户

\du

3️⃣ 创建 sqladmin 用户(如不存在)

CREATE ROLE sqladmin WITH LOGIN PASSWORD 'strongpassword';

4️⃣ 赋予权限

✅ 赋予某个数据库权限

GRANT ALL PRIVILEGES ON DATABASE mydb TO sqladmin;

✅ 赋予所有表权限

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO sqladmin;

✅ 赋予序列权限(常用)

GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO sqladmin;

✅ 未来新建表也自动有权限

ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT ALL PRIVILEGES ON TABLES TO sqladmin;

5️⃣ 设为超级管理员(慎用)

ALTER ROLE sqladmin WITH SUPERUSER;

二、如果是 Ubuntu 系统用户 sqladmin

1️⃣ 创建系统用户

sudo adduser sqladmin

2️⃣ 赋予 sudo 权限

sudo usermod -aG sudo sqladmin

3️⃣ 限制只能管理数据库(推荐)

通常 不要给 sudo,而是:

  • 只允许使用 psql
  • 或通过 pg_hba.conf 控制访问

三、常见权限问题排查

❌ 权限不足

permission denied for table xxx

解决:

GRANT SELECT, INSERT, UPDATE ON table_name TO sqladmin;

❌ 无法登录

检查:

sudo nano /etc/postgresql/*/main/pg_hba.conf

确保有:

host    all    sqladmin    0.0.0.0/0    md5

四、你可以告诉我

为了更精准回答,请补充:

  1. 用的是 MySQL / PostgreSQL / SQL Server
  2. sqladmin系统用户还是数据库用户
  3. 想实现什么权限(只读 / 读写 / 管理)?

我可以直接给你一条命令级别的操作方案

0