2016-11-18 82 views
0

我的本地服务器不再适用于我的Rails应用程序。我收到以下错误消息:Rails本地服务器不运行:无法连接到服务器:连接被拒绝

could not connect to server: Connection refused 
    Is the server running on host "localhost" (127.0.0.1) and accepting 
    TCP/IP connections on port 5432? 
could not connect to server: Connection refused 
    Is the server running on host "localhost" (::1) and accepting 
    TCP/IP connections on port 5432? 

我去检查我的数据库日志。这些都是过去的几行:

STATEMENT: CREATE DATABASE starsetmetiers_development; 
ERROR: unrecognized configuration parameter "idle_in_transaction_session_timeout" 
STATEMENT: SET idle_in_transaction_session_timeout = 0; 

ERROR: unrecognized configuration parameter "row_security" 
STATEMENT: SET row_security = off; 

FATAL: database "stars_metiers_development" does not exist 
FATAL: database "stars_metiers_development" does not exist 
LOG: received smart shutdown request 
LOG: autovacuum launcher shutting down 
LOG: shutting down 
LOG: database system is shut down 

我最近摧毁了我的开发数据库,​​并通过拉动生产一个重建一个。我认为这是我的database.yml文件正确引用:

default: &default 
    adapter: postgresql 
    encoding: unicode 
    host: localhost 
    # For details on connection pooling, see rails configuration guide 
    # http://guides.rubyonrails.org/configuring.html#database-pooling 
    pool: 5 

development: 
    <<: *default 
    database: starsetmetiers_development 

我不明白的地方这个错误来自(我没有找到我的Postgres的文件夹也postmaster.pid文件)。 我该如何解决这个问题?

我收到此错误信息,当我尝试运行rails c

/Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/2.0.0/irb/completion.rb:9:in `require': dlopen(/Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/2.0.0/x86_64-darwin14.5.0/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib (LoadError) 
    Referenced from: /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/2.0.0/x86_64-darwin14.5.0/readline.bundle 
    Reason: image not found - /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/2.0.0/x86_64-darwin14.5.0/readline.bundle 
    from /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/2.0.0/irb/completion.rb:9:in `<top (required)>' 
    from /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/gems/2.0.0/gems/railties-4.1.8/lib/rails/commands/console.rb:3:in `require' 
    from /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/gems/2.0.0/gems/railties-4.1.8/lib/rails/commands/console.rb:3:in `<top (required)>' 
    from /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/gems/2.0.0/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:128:in `require' 
    from /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/gems/2.0.0/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:128:in `require_command!' 
    from /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/gems/2.0.0/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:59:in `console' 
    from /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/gems/2.0.0/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:40:in `run_command!' 
    from /Users/davidgeismar/.rbenv/versions/2.0.0-p576/lib/ruby/gems/2.0.0/gems/railties-4.1.8/lib/rails/commands.rb:17:in `<top (required)>' 
    from ./bin/rails:4:in `require' 
    from ./bin/rails:4:in `<main>' 
+0

它看起来就像您的posgres服务器要么不在本地主机上一样,要么根本没有运行。 –

+0

@SergioTulentsev你有什么建议我应该做/检查? –

回答

0

你错过readline的依赖,因为这条线在错误输出显示:

Library not loaded: /usr/local/opt/readline/lib/libreadline 

可以解决这个问题与

$ brew install readline 
0

参数idle_in_transaction_session_timeout是9中新增的.6 - 我认为你正试图将9.6备份上传到早期版本的Postgres。

我注意到转储的顶部如下,并得到它的工作时,我有一个问题。当你有机会时你可能想更新Postgres。

SET statement_timeout = 0; 
SET lock_timeout = 0; 
-- SET idle_in_transaction_session_timeout = 0; 
SET client_encoding = 'UTF8'; 
SET standard_conforming_strings = on; 
SET check_function_bodies = false; 
SET client_min_messages = warning; 
-- SET row_security = off; 
0

无法连接到服务器:连接被拒绝 是运行在主机上的服务器的“本地主机”(127.0.0.1)和接收端口5432 TCP/IP连接?

上述错误的原因是您的postgresql服务器未运行。所以,请运行按您的操作系统如下:

Ubuntu的:须藤服务的PostgreSQL启动
的Fedora:systemctl启动PostgreSQL的
的Windows:NET START PostgreSQL相关9.xx

相关问题