Аз съм PHP разработчик и съм нов в Rails, но се справям доста добре, всичко изглежда доста лесно. Въпреки това до тази сутрин използвах SQLite и реших да преместя това, което изграждам, в MySQL. rake db:create работи перфектно, но когато се опитам да rake db:migrate получавам следната грешка:
рейк прекратен! Mysql::Грешка: Грешка при преименуване на './test_development/schema_migrations' на './test_development/#sql2-c7b-c' (errno: -1): СЪЗДАВАЙТЕ УНИКАЛЕН ИНДЕКС
unique_schema_migrations
НАschema_migrations
(version
)
Мислейки си, че това може да е грешка в скриптовете ми за миграция, създадох проект за чисти релси с най-простите таблици и получих същата грешка. И така, преинсталирах MySQL и mysql gem, за да се уверя, че не е нещо лошо с нито едно от тях и все още нямам късмет. Ето версиите, които изпълнявам:
- Релси 2.3.4
- Ruby 1.8.6
- MySQL 5.1.40
- MySQL Gem 2.8.1
Имам чувството, че може да е свързано с InnoDB, тъй като съм имал проблеми с този двигател преди на тази кутия. Но ако някой може да ми помогне, ще съм много благодарен, тъй като това ме спира да напредвам.
Благодаря,
Киран
АКТУАЛИЗАЦИЯ: По искане на Фил ето резултатите от:
ПОКАЖЕТЕ СЪСТОЯНИЕТО НА INNODB НА ДВИГАТЕЛЯ
и
SHOW ENGINE INNODB STATUS
иSHOW VARIABLES LIKE 'innodb%'
, тогава някой може да успее да забележи какво не е наред. - person Phil Ross   schedule 08.11.2009