Postgres用户不存在?

 Dark-胡俊賢 发布于 2023-02-02 19:54

我刚刚安装了Postgres,并且已经修补了它和各种配置1-2小时.

我被困在无法改变为postgres用户

$ su - postgres 产生以下错误: su: unknown login: postgres

$ sudo -u postgres psql 产生以下错误: sudo: unknown user: postgres

这些尝试是作为普通用户进行的.以root身份尝试它们具有完全相同的结果.我在OS X上通过Homebrew安装了postgres,我已多次阅读说明.

3 个回答
  • psql --help,当你没有设置数据库名称的选项(无-d选项)这将是您的用户名,如果你没有这样做-U,数据库用户名是您的用户名太等

    但通过initdb(创建第一个数据库)命令,它没有您的用户名作为任何数据库名称.它有一个名为的数据库postgres.初始化数据存储区时,initdb命令始终会创建第一个数据库.这个数据库叫做postgres.

    因此,如果您没有另一个名为您的用户名的数据库,则需要执行psql -d postgrespsql命令才能工作.它似乎-d默认提供选项,psql postgres也有效.

    如果您已经创建了与您的用户名相同的另一个数据库名称(它应该完成createdb),那么您可以psql只命令.并且似乎第一个数据库用户名由brew设置为您的计算机用户名.

    psql -d <first database name> -U <first database user name>
    

    要么,

    psql -d postgres -U <your machine username>
    psql -d postgres
    

    会默认工作.

    2023-02-02 19:56 回答
  • psql:使用我的默认用户名登录

    psql -U postgres:以postgres用户身份登录

    Sudo对我来说似乎不是必需的.

    我使用Postgres.app作为我的OS X postgres数据库.它消除了确保安装正常并且数据库服务器正确启动的麻烦.在这里查看:http://postgresapp.com

    编辑:感谢@Erwin Brandstetter纠正我对参数的使用.

    2023-02-02 19:56 回答
  • OS X倾向于在系统帐户名前加上"_"; 你没有说你正在使用什么版本的OS X,但至少在10.8和10.9中,_postgres用户存在于默认安装中.请注意,您将无法su访问此帐户(root用户除外),因为它没有密码.sudo -u _postgres另一方面,应该工作正常.

    2023-02-02 19:56 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有