我是一个PHP开发人员,我是Rails的新手,但一直都很顺利,一切看起来都非常简单。然而,直到今天早上我一直在使用SQLite并决定将我正在构建的内容移动到MySQL。 rake db:create完美地运行,但是当我尝试rake db:migrate时,我收到以下错误:
耙子流产了! Mysql ::错误:错误 重命名 ” ./test_development/schema_migrations' 到'./test_development/#sql2-c7b-c' (错误:-1):创建独特的索引unique_schema_migrations
ONschema_migrations
(version
)
在我的迁移脚本中认为它可能是一个错误,我用最简单的表创建了一个干净的rails项目,并得到了同样的错误。所以,我重新安装了MySQL和mysql gem,以确保它们不会出现任何问题,而我仍然没有运气。这是我正在运行的版本:
我觉得它可能与InnoDB有关,因为我在这个盒子之前遇到过这个引擎的问题。但是,如果有人能帮助我,我会非常感激,因为它阻止了我的进步。
谢谢,
基兰
更新: 按照菲尔的要求,结果如下:
和
答案 0 :(得分:4)
您已将innodb_force_recovery选项设置为6.这可能会从默认值0更改为修复先前的问题。在此模式下,InnoDB不允许除SELECT
,CREATE TABLE
和DROP TABLE
以外的任何内容。
尝试关闭MySQL,然后编辑my.cnf文件。将innodb_force_recovery设置为0(或删除该选项),然后重新启动MySQL。