当前位置: 首页 > 知识库问答 >
问题:

拒绝使用Heroku PG的权限:拉到我的本地数据库

高砚
2023-03-14
PGUSER=userforlocaldb PGPASSWORD=passwordforlocaldb heroku pg:pull HEROKU_POSTGRESQL_herokudbcolor localdbname --app herokuappname
 !    createdb: database creation failed: ERROR:  permission denied to create database
 !    
 !    Unable to create new local database. Ensure your local Postgres is working and try again.

我在这里漏掉了什么?

编辑:我更改了超级用户postgres的密码,并重新运行了该命令。我得到这个错误:用户“Postgres”的对等身份验证失败

共有1个答案

葛骏
2023-03-14

我可以重复您的问题,但我也可以根据Gabriel的建议更正它,将Postgres的访问方法从Peer更改为MD5。当您更改pg_hba.conf时,必须记住重新启动Postgres。在Ubuntu上,这应该可以做到:

sudo service postgresql restart

另一种解决方案:

或者,如果用户权限对您来说不是一个很大的问题(例如,您的系统中没有其他用户),例如在VM中,您可以给自己postgreSQL-superuser特权:

sudo -u postgres createuser -s $YOUR_USERNAME [-P]
heroku pg:pull HEROKU_POSTGRESQL_herokudbcolor localdbname --app herokuappname

增编/警告:

如果postgres用户通过MD5身份验证但没有设置密码,则运行sudo-u postgres...可能会出现问题,这在Linux安装中通常是默认情况。就我个人而言,我发现在创建了新的用户/角色之后,以自己(whoami)的身份作为Postgres超级用户发布命令比作为Postgres超级用户更方便。

不管怎样,要运行Heroku pg:pull命令,我认为您需要为用户设置密码,并拥有超级用户权限。

 类似资料:
  • 问题内容: 当我跑步时,我得到 然后提示输入github用户名和密码。该目录位于我的主文件夹()下。有任何想法吗?如果使用,它可以工作,但是我不认为必须在自己的主文件夹中使用su! 这是结果: 几乎所有更改都在文件夹中进行 问题答案: 问题是git无法连接到其凭据缓存(有关更多信息,请阅读http://git-scm.com/docs/git-credential- cache )。 从文档: 可

  • 我需要发送一个pdf文件(从一个gpu输出和定位)在一个远程服务器到我的本地(mac)机器。我通过我的本地终端进行了尝试,每次尝试都收到错误。下面提供了终端文本输入和输出 1. 错误 虽然这个问题已经发布了几次之前,我已经尝试了建议的正确解决方案,仍然无法执行我的任务。本任务中的任何解决方案或方向都将受到高度赞赏。谢谢你

  • 当试图使用安全规则写入Firestore时,我会得到一个权限拒绝错误,但是当我将其替换为时,它就可以工作了。 web SDK的Firestore组件似乎不发送身份验证详细信息,即使客户端上的API reports Firebase已经登录,并且用户上次登录日期出现在web GUI中。 当直接使用Google登录(而不是使用Firebase登录API)时,我是否需要将身份验证细节传递给Firesto

  • 我试图按照https://github.com/Heroku/python-getting-start上的说明为python开发建立一个Heroku环境。当我运行: > 首先提示我输入密码:我在postgres中输入了用户“postgres”的密码 收到一条错误消息: createdb数据库创建失败:错误:拒绝创建数据库的权限 不知道怎么解决这个问题。允许用户“postgres”创建数据库。我使用

  • Firebase规则包括: 代码 它会导致一个错误: [错误:flatter/lib/ui/ui_dart_state.cc(166)]未处理的异常:PlatformException(-3,权限被拒绝,)E/flatter(31408):#0 StandardMethodCodec。解码信封(包:flatter/src/services/message_编解码器。dart:569:7)E/fla

  • 我正试图按照Firebase的在线指南使用Firebase实时数据库,但由于我的许可被拒绝,我无法获得数据库的任何更新。我不确定我做错了什么。我甚至设定了阅读和写作的规则。 onClickListener内的代码如下: 这是在片段中,按钮在开始片段替换事务之前首先完成这些语句。 以下是Firebase中的规则: 由于我不熟悉JSON,我也尝试过在“.write”结尾加逗号 这是stacktrace