数据库
首页 > 数据库> > MySQL Rails迁移错误:“重命名schema_migration时出错(错误号:-1)”

MySQL Rails迁移错误:“重命名schema_migration时出错(错误号:-1)”

作者:互联网

我是一个PHP开发人员,我是Rails的新手,但是进展顺利,一切似乎都非常简单.但是,直到今天早上,我一直在使用SQLite,并决定将自己构建的内容移至MySQL. rake db:create可以完美地工作,但是当我尝试rake db:migrate时,出现以下错误:

rake aborted!
Mysql::Error: Error on
rename of
‘./test_development/schema_migrations’
to ‘./test_development/#sql2-c7b-c’
(errno: -1): CREATE UNIQUE INDEX
unique_schema_migrations ON
schema_migrations (version)

考虑到迁移脚本中可能存在错误,我使用最简单的表创建了一个干净的Rails项目,并得到了相同的错误.因此,我重新安装了MySQL和mysql gem,以确保它们都没有问题,并且我仍然没有运气.这是我正在运行的版本:

>导轨2.3.4
> Ruby 1.8.6
> MySQL 5.1.40
> MySQL Gem 2.8.1

我觉得这可能与InnoDB有关,因为在此框上,我对该引擎有问题.但是,如果有人可以帮助我,我将不胜感激,因为它阻止了我前进.

谢谢,

基兰

更新:
根据Phil的要求,结果如下:

SHOW ENGINE INNODB STATUS

SHOW VARIABLES LIKE ‘innodb%’

解决方法:

您已将innodb_force_recovery选项设置为6.这可能已从默认值0更改为解决早期问题.在此模式下,InnoDB除了SELECT,CREATE TABLE和DROP TABLE外,将不提供任何其他功能.

尝试关闭MySQL,然后编辑my.cnf文件.将innodb_force_recovery设置为0(或删除该选项),然后重新启动MySQL.

标签:rubygems,ruby,ruby-on-rails,mysql
来源: https://codeday.me/bug/20191107/2002421.html