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

PostgreSQL:如何以非超级用户登录并创建数据库及权限疑问

嘿,这两个问题核心围绕PostgreSQL的用户权限与数据库创建逻辑,我给你拆解清楚:

1. 如何以非超级用户身份登录PostgreSQL并创建数据库?

步骤很清晰,前提是这个非超级用户已经被授予了CREATEDB权限(比如你的用户p5):

  • 登录PostgreSQL:非超级用户需要先连接到一个已存在的公共数据库,通常用初始化时自动创建的postgres库(所有有登录权限的用户都能访问它)。命令行执行:
    psql -U 你的非超级用户名 -d postgres
    
    比如针对p5就是psql -U p5 -d postgres,输入p5的密码即可登录。
  • 创建数据库:登录成功后,直接执行创建命令:
    CREATE DATABASE 自定义库名;
    
    看到CREATE DATABASE的提示就说明创建成功了。
2. 如何以用户p5登录并创建数据库db5?关于权限的疑问解答

完全不需要先以超级用户创建db5再让p5连接——这正是CREATEDB权限的核心用途!具体操作:

  • 先登录p5用户:
    psql -U p5 -d postgres
    
  • 登录后直接创建db5:
    CREATE DATABASE db5;
    
    创建完成后,db5的所有者就是p5,p5对这个数据库拥有完全管理权限(比如建表、删表、给其他用户授权访问等)。

至于CREATEDB权限的作用:
它就是给普通用户开放的「自主创建数据库」能力,不用每次都依赖超级用户帮忙建库。拥有该权限的用户,创建的数据库默认归自己所有,能全权掌控库内的所有操作;如果没有这个权限,普通用户只能连接已存在的数据库,无法自主新建。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:07:54