我看过这里和这里,但仍然无法解决我的问题。我的设置在我的普通 linux 上运行良好,但是当我尝试在我的 mac 上重新创建它时,postgres 无法与 rails 一起使用。遵循railscasts 的这些说明后,我开始运行 rake:db:create:all
运行 rake db:create:all:
$ rake db:create:all --
could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
但运行 psql 工作正常:
$ psql
psql (9.3.1)
Type "help" for help.
crashandburn4=#
检查哪个端口 postgres 在产量上运行:
$ cat /etc/services |grep post
postgresql 5432/udp # PostgreSQL Database
postgresql 5432/tcp # PostgreSQL Database
所以它似乎不是一个不正确的端口,我的 database.yml 明确指出了端口:
# database.yml
development:
adapter: postgresql
encoding: unicode
database: blog_development
pool: 5
username: myusername
password:
port: 5432
test:
adapter: postgresql
encoding: unicode
database: blog_test
pool: 5
username: myusername
password:
port: 5432
production:
adapter: postgresql
encoding: unicode
database: blog_production
pool: 5
username: myusername
password:
port: 5432
运行 netstat 看起来也不错(我认为):
$ netstat -a | grep postgre
tcp6 0 0 localhost.postgres *.* LISTEN
tcp4 0 0 localhost.postgresql *.* LISTEN
tcp6 0 0 localhost.postgres *.* LISTEN
除了打电话给巫医之外,这就是我能想出的所有方法来尝试诊断问题:) 有人有什么想法吗?
编辑:解决了我的问题(很好的旧橡皮鸭调试)我想无论如何我都会发布以帮助任何其他花费一个小时挖掘并仔细检查配置文件的可怜的灵魂。