Ale*_*lla 15 postgresql heroku
我是Postgres和Heroku的新手.我试图从Heroku中提取数据库,但我遗漏了一些简单的东西.我做了:
heroku pg:pull HEROKU_POSTGRESQL_IVORY_URL localdb
Run Code Online (Sandbox Code Playgroud)
我收到了错误:
createdb: database creation failed: ERROR: permission denied to create database
Run Code Online (Sandbox Code Playgroud)
然后我尝试了同样的"sudo".我得到了:
createdb: could not connect to database template1: FATAL: role "root" does not exist
Run Code Online (Sandbox Code Playgroud)
所以,我必须缺少一些我找不到的简单命令.我在Linux上,我安装了Postgres并正在工作.
a_h*_*ame 28
createdb是SQL语句的包装器CREATE DATABASE,因此它需要连接到数据库.
默认情况下,所有Postgres命令行工具都尝试使用当前操作系统用户连接到数据库.由于错误消息表明root数据库中没有用户名.因此,您需要传递Postgres超级用户的名称createdb才能进行连接.该用户通常被命名postgres.
postgres如果存在这样的Linux用户,另一个选择是将Linux用户切换到.
我不知道Heroku,我不知道你是怎么开始的createdb,但传递用户名的参数是-U(对于所有Postgres命令行程序).所以你需要
createdb -U postgres name_of_new_database
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58802 次 |
| 最近记录: |