使用RAILS_ENV运行db:create时未创建数据库

时间:2011-11-25 10:13:56

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

我正在使用Rails v2.3。和MySQL v5.1

我创建了一个名为“特殊”的新Rails环境,将config/environments/development.rb复制到config/environments/special.rb

然后,我在 config / database.yml 中定义了以下内容:

special:
   adapter: mysql2
   host: localhost
   username: My_user_name
   password: My_pwd
   database: special_db
   encoding: latin1

然后,我转到命令行运行命令:

$ RAILS_ENV=special rake db:create

还尝试了$rake db:create RAILS_ENV=special

我希望应该创建一个名为 special_db 的新数据库,但事实并非如此。

为什么呢?为什么我创建了一个新环境并在该环境中运行db:create,但是没有创建数据库?我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

您是否在MySQL中创建了数据库? mysqladmin create special_db

您确定您使用的用户名是否具有数据库权限? GRANT ALL PRIVILEGES ON special_db.* TO 'user'@'host'; FLUSH PRIVILEGES;

rake任务的输出是什么?你尝试过使用-t选项吗?如果是这样,你可以发布输出吗?