无法混合ecto.create,角色'postgres'不存在[重复]

Posted

技术标签:

【中文标题】无法混合ecto.create,角色\'postgres\'不存在[重复]【英文标题】:Unable to mix ecto.create, role 'postgres' does not exist [duplicate]无法混合ecto.create,角色'postgres'不存在[重复] 【发布时间】:2016-05-17 10:43:55 【问题描述】:

我尝试创建一个名为 postgres 的用户。我通过brew 重新安装了postgres。我可以运行它

postgres -D /usr/local/var/postgres

当我运行mix ecto.create 时,我仍然得到错误:

~/code/blog_phoenix:.mix ecto.create
** (Mix) The database for BlogPhoenix.Repo couldn't be created, reason given: psql: FATAL:  role "postgres" does not exist.
~/code/blog_phoenix:.

【问题讨论】:

这不是一个重复的问题,因为这是一个特定于 Phoenix 框架的特定问题。 【参考方案1】:

您的数据库安装似乎缺少角色postgres

您应该尝试使用默认凭据进行连接,然后执行 SQL 语句来创建角色及其默认数据库。

在控制台运行:

$ psql

然后

CREATE USER postgres SUPERUSER;
CREATE DATABASE postgres WITH OWNER postgres;

【讨论】:

以上是关于无法混合ecto.create,角色'postgres'不存在[重复]的主要内容,如果未能解决你的问题,请参考以下文章

角色“postgres”不存在;无法创建用户

Postgres 不创建角色

Flyway 无法找到 postgres docker 的角色

Createuser:无法连接到数据库 postgres:致命:角色“tom”不存在

Postgresql 角色无法访问其创建的架构

Postgres:即使授予了授权,也拒绝架构的权限