我有一个运行在Postgres上的Rails应用程序。
我有两台服务器:一台用于测试,另一台用于生产。
很多时候,我需要在测试服务器上克隆生产数据库。
我通过Vlad运行的命令是:
rake RAILS_ENV='test_server' db:drop db:create
我遇到的问题是我收到以下错误:
ActiveRecord::StatementInvalid: PGError: ERROR: database <database_name> is being accessed by other users DROP DATABASE IF EXISTS <database_name>
如果有人最近通过Web访问了该应用程序,则会发生这种情况(postgres保持“会话”打开)
有什么方法可以终止postgres DB上的会话?
谢谢。
编辑
我可以使用phppgadmin的界面删除数据库,但不能使用rake任务删除数据库。
如何使用rake任务复制phppgadmin的drop?