【问题标题】:Rails: rake db:create:all (could not connect to server)Rails:rake db:create:all(无法连接到服务器)
【发布时间】:2012-05-16 00:09:18
【问题描述】:

关注截屏视频http://railscasts.com/episodes/342-migrating-to-postgresql?autoplay=true 直到 "rake db:create:all" 的步骤并得到错误:

无法连接到服务器:没有这样的文件或目录是服务器 在本地运行并接受 Unix 域套接字上的连接 “/tmp/.s.PGSQL.5432”?

请在Rails: rake db:create:all fails to connect to PostgreSQL database上提问

但仍然无法解决。不知道是什么问题。

[数据库.yml]

development:
  adapter: postgresql
  encoding: unicode
  database: store_development
  pool: 5
  username: amysukumunu 
  password:
test:
  adapter: postgresql
  encoding: unicode
  database: store_test
  pool: 5
  username: amysukumunu
  password: 

【问题讨论】:

    标签: ruby-on-rails ruby postgresql rails-migrations rails-postgresql


    【解决方案1】:

    [更新2]

    好的,这是你应该做的:

    1. unix 套接字应该位于/var/pgsql_socket(根据 plist 图像),因为 rails 试图在 /tmp 中查找套接字文件。我相信这是错误的原因。所以编辑您的database.yml 并明确添加套接字位置。所以你最终的 database.yml 应该看起来像 this。更改您的 Unix 套接字位置的文件位置。现在尝试连接吗?

    2) 如果仍然无法连接。验证 postgres 服务器是否确实在运行

    $ netstat -a | grep postgre
    

    如果它正在运行,请尝试使用psql 命令从终端连接到它。以防它,不运行。尝试手动启动它

    pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
    

    如果还没有启动, server.log 中是否有任何错误消息?如果是,请在此处发布。

    祝你好运! =======更新================

    【讨论】:

    • 我的 finder 没有“postgresql.conf”文件。 0 项。 template1 是什么意思?是我的应用名称吗?
    • template1 是 postgressql 上的默认数据库,但它在 mac 上看起来不同(没有 postgresql.conf?),因此请尝试按照更新的故障排除说明进行操作。
    • 据说第二个命令没有“org.postgresql.postgres.plist”
    • 好吧,您可以尝试列出所有文件 ls -R /usr/local/Cellar/postgresql/ 并查看 plist 是否存在。如果是,则尝试将该 plist 复制到 ~/Library/LaunchAgents ,然后继续执行下一个命令。希望对你有帮助
    • 我更新了我在网上找到的 plist 的图像并将其复制到 launchAgents 并执行第二个命令,但得到“cp: /usr/local/Cellar/postgresql/9.0.1/org.postgresql. postgres.plist:没有这样的文件或目录“
    猜你喜欢
    • 2013-11-20
    • 2012-05-03
    • 1970-01-01
    • 2019-10-08
    • 2020-01-24
    • 1970-01-01
    • 2011-12-29
    • 2018-12-09
    • 2020-05-05
    相关资源
    最近更新 更多