【问题标题】:RAIL_ENV=production rake db:schema:load aborted with rails 3.1.0 and ubuntu 10.04RAIL_ENV=production rake db:schema:load 使用 rails 3.1.0 和 ubuntu 10.04 中止
【发布时间】:2012-01-19 14:08:09
【问题描述】:

尝试通过以下操作更新生产 mysql 数据库:rvmsudo RAILS_ENV=production rake db:schema:load on ubuntu 10.04 with rails 3.1.0。更新的目的是添加一个表。 mysql 数据库已经存在。这是跟踪的错误:

dtt@ubuntu:/var/www/mylab/current$ rvmsudo RAILS_ENV=production rake db:schema:load --trace
** Invoke db:schema:load (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:schema:load
-- create_table("categories", {:force=>true})
rake aborted!
Mysql2::Error: DROP command denied to user 'dtt'@'localhost' for table 'categories': DROP TABLE `categories`
/usr/local/rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.0/lib/active_record/connection_adapters/mysql2_adapter.rb:283:in `query'    

但是,在没有 RAILS_ENV=production 的情况下运行 rake 命令是没有错误的。但它只创建了开发数据库。

对这个错误有什么想法吗?谢谢。

【问题讨论】:

    标签: mysql ruby-on-rails ubuntu ruby-on-rails-3.1 rake


    【解决方案1】:

    您在config/database.yml 中为production 环境配置的用户无权在生产环境中执行必要的操作。您需要更改 MySQL 设置或使用其他用户。

    【讨论】:

      猜你喜欢
      • 2010-11-01
      • 1970-01-01
      • 2011-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-19
      • 1970-01-01
      • 2012-01-11
      相关资源
      最近更新 更多