我想将 Ruby on Rails 应用从一台机器迁移到另一台机器,当我输入 Rake db:migrate 时,它会出现以下错误:
Mysql::Error: Table 'schema_migrations' already exists:
CREATE TABLE `schema_migrations` (`version` varchar(255) NOT NULL) ENGINE=InnoDB
可能的原因是什么?
我想将 Ruby on Rails 应用从一台机器迁移到另一台机器,当我输入 Rake db:migrate 时,它会出现以下错误:
Mysql::Error: Table 'schema_migrations' already exists:
CREATE TABLE `schema_migrations` (`version` varchar(255) NOT NULL) ENGINE=InnoDB
如Bohdan所述...
或者
rake db:migrate:reset
嗨,尝试执行rake db:drop rake db:create rake db:migrate
在我的情况下,仅仅删除和创建数据库是没有用的。尝试重启mysql服务器:
/etc/init.d/mysqld restart
/etc/init.d/mysql restart
service mysqld restart
rake db:reset && rake db:test:clone
附言:如果您正在使用任何预装的工具,如 zeus 或 guard,请尝试在不使用它们的情况下运行。