我正在读Heroku的入门教程。据我所知,Postgres已经完全更新,一切都已安装妥当。有趣的是,当我将应用部署到heroku时,应用程序可以在线运行,但当我尝试在本地运行该应用程序时,情况就不那么好了!我得到了一个:
PG::ConnectionBad
无法将主机名"myname“转换为地址:名称解析中的临时失败
### Convenience alias for PG::Connection.new.
def self::connect( *args )
return PG::Connection.new( *args )
end我没有接触到Heroku为本教程创建的文件中的任何信息--那么有什么问题呢?
运行了以下命令:
heroku登录
git克隆https://github.com/heroku/ruby-getting-started.git
红宝石-开始
heroku创造
git推heroku main
打开heroku (这可以进入应用程序,好吧)
heroku原木--尾巴
哪种psql
捆绑安装
导出数据库_URL=postgres://$(Whoami)
bundle exec rake db:create :migrate(这里是错误所在)
heroku本地网
(错误在这里) http://localhost:5000/
发布于 2020-09-13 04:20:25
调试Postgres连接
确认Postgres存在于yout本地机器中,并且正在运行,并且它有一个使用计算机用户名进行机器加工的用户。
尝试在本地计算机中运行以下命令:
psql -U $(whoami) -d postgres输出应该如下所示:
psql (9.2.24, server 10.14)
WARNING: psql version 9.2, server version 10.0.
Some psql features might not work.
Type "help" for help.
postgres=#然后,确认与用户名匹配的数据库是否存在"\l“。
postgres=#\l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
----------------+----------+----------+-------------+-------------+-----------------------
myuser | odoo | UTF8 | en_US.UTF-8 | en_US.UTF-8 |提示:你可以用"\q“来结束
postgres=#\q如果没有错误,请尝试将DATABASE_URL的值替换为下列之一.
postgresql://
postgresql://localhost
postgresql://localhost:5433
postgresql://localhost/mydb
postgresql://user@localhost如果这不是成功的,那么您必须检查postgres的安装方式。
...Or在Postgres中手动创建具有密码的超级管理员用户。
对弦模式是postgres://user:password@host:port。
例如..。
export DATABASE_URL=postgres://db_user:123456@localhost:5432发布于 2020-09-12 13:28:03
数据库_URL=postgres://$(Whoami)
这是试图连接到与您的本地用户帐户具有相同名称的计算机。毫不奇怪,它不存在,因此出现了错误。
发布于 2022-06-29 03:29:48
如果您试图从本地Postgres进行备份或创建转储文件,请使用以下命令。
主要是你需要改变--主机到端口,就这样:
pg_dump --format t --no-owner --no-privileges --verbose --username postgres --password --dbname <DATABASE_NAME> --port <PORT, usually 5432> --file <THE FILE NAME YOU WANT>.dump*如果您在Windows上,请使用CMD而不是git bash。闲逛,为什么。
https://stackoverflow.com/questions/63856861
复制相似问题