views:

32

answers:

1

My mysql installation is new and it was working a yesterday. Now, any MySQL related task in my ruby-on-rails app is failing with the error

Mysql::Error: Unknown table engine 'InnoDB': SELECT version FROM schema_migrations

I searched on the net for InnoDB and it seems to be a plugin. Some sources asked me to reinstall mysql with InnoDB. I downloaded the source from the dev.mysql.com site, but that 64-bit MacOSX tarball for my snow leopard didnt have a .configure file for me to configure my install .

But the sequel-pro mysql client works like charm. Its only when I try to use mysql from terminal or from my rails apps, the problem occurs. please help

A: 

MySQL can use a number of different database engines, the two main ones being MyISAM and InnoDB. They differ in philosophy and architecture, which is why they've never been merged into one. When you use MySQL, you choose between them based on your needs. InnoDB has always had full transactional capability whereas MyISAM has always been very high speed.

Sounds like you are trying to use an InnoDB table when your database server does not support InnoDB. You'll need to either transition to using MyISAM tables, or change MySQL's configuration to enable InnoDB tables (making sure your version of MySQL has support for it).

Here's some resources that could get you started:

thomasrutter