2011-12-01 143 views
1

我最近在Heroku上部署了我的rails应用程序。在这个过程中我不小心删除了我的database.yml文件。我从git仓库中的最新副本中恢复了该文件,但现在每次尝试登录到我的开发环境(localhost:3000)时,它都会告诉我:ActiveRecord :: ConnectionNotEstablished突然出现

ActiveRecord::ConnectionNotEstablished

我使用的mysql2适配器和在轨道上运行的Ruby 1.8.7 3.0.9

我很困惑,因为我相信我已经恢复了我的应用程序其准确状态在部署之前...

我的database.yml文件的开发部分:

development: 
    adapter: mysql2 
    encoding: utf8 
    reconnect: false 
    database: thankfl_development 
    pool: 5 
    username: ------ 
    password: ------ 
    socket: /tmp/mysql.sock 

我仍然可以通过导轨控制台访问数据库,只是没有通过浏览器。

任何想法我可以做什么?

+0

你可以发布'.yml'文件(显然你的用户名/密码被删除了)和你正在运行的命令会产生错误吗?另外,你是否仔细检查了'.yml'文件实际上是最新的?也许设置(如密码)已过时? – jefflunt

+0

添加了我的.yml文件的开发部分。是的,密码是最新的。据我所知,我所做的唯一事情就是删除文件,并将其添加回去。 –

回答

4

在恢复.yml文件后,您是否重新启动了Web服务器(webrick,thin,passenger,apache或其他)?数据库.yml在启动时读取,而不是在每个请求上读取,因此涉及该文件的任何更改/添加/删除都需要重新启动Web服务器,即使在开发模式下也是如此。

这将解释为什么控制台正在工作(因为它打开时加载database.yml文件),但您的开发应用程序不会。

+0

+1“你试过关掉它吗?” –

相关问题