Mysql 运行rake db时出错:迁移
我在跟踪铁路公司,Ryan在那里建立了一个副总裁。但是我需要安装mysql而不是postgresql 当我运行cap deploy:cold命令时,它似乎运行得很好,直到它运行bundle,在尝试安装mysql2 gem时失败 因此,我登录到服务器并手动安装,因为数据库已经设置好了 但是,当我运行rake db:migrate命令时,我一直会遇到以下错误:Mysql 运行rake db时出错:迁移,mysql,ruby-on-rails-3,vps,Mysql,Ruby On Rails 3,Vps,我在跟踪铁路公司,Ryan在那里建立了一个副总裁。但是我需要安装mysql而不是postgresql 当我运行cap deploy:cold命令时,它似乎运行得很好,直到它运行bundle,在尝试安装mysql2 gem时失败 因此,我登录到服务器并手动安装,因为数据库已经设置好了 但是,当我运行rake db:migrate命令时,我一直会遇到以下错误: rake aborted! database configuration does not specify adapter Tasks:
rake aborted!
database configuration does not specify adapter
Tasks: TOP => db:migrate => db:load_config
在database.yml文件中,我有以下内容
production:
adapter: mysql2
encoding: utf8
reconnect: false
database: blog_production
pool: 5
username: blog
password: *****
host: localhost
socket: /var/run/mysqld/mysqld.sock
我已经从默认状态编辑了套接字,添加和删除了主机行,并手动安装了gem,但似乎没有任何东西可以让它工作 当您的部署脚本或VPS上当前登录的用户没有设置RAILS_ENV环境变量时,通常会发生这种情况。然后它默认为“development”,您的database.yml将没有该环境的配置。所以试试看
RAILS_ENV=production bundle exec rake db:migrate --trace
相反。损坏的yml文件为我解决了它
重命名并重新创建了database.yml文件,它成功了。谢谢,我现在尝试了这个,但是我遇到了这个错误。。。雷克流产了!nil的未定义方法'accept':nilclass您能用trace参数运行它并发布结果吗?我更新了答案。我通过替换database.yml文件解决了这个问题,可能这个文件的缩进有问题,但现在它运行迁移时没有问题。。。凉的