I have a mysql database that when I run SHOW ENGINES; innodb does not show up as an engine.

This seems strange as I have an identical server setup where innodb is enabled and in use.

I have checked my.cnf, and there is no skip innodb line as many people have mentioned. I have also deleted my log files as another couple of people have suggested, but neither of these fixes have helped.

Any ideas? Any way I can start troubleshooting?

Results of SHOW ENGINES;

+------------+---------+-----------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                   | Transactions | XA   | Savepoints |
+------------+---------+-----------------------------------------------------------+--------------+------+------------+
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                     | NO           | NO   | NO         |
| CSV        | YES     | CSV storage engine                                        | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance    | NO           | NO   | NO         |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables | NO           | NO   | NO         |
+------------+---------+-----------------------------------------------------------+--------------+------+------------+
4 rows in set (0.00 sec)
link|improve this question
Out of curiosity, what version of MySQL are you running? And when you create a table with Innodb as the engine, what error do you get? – KM01 Feb 2 at 15:16
MySQL 5.1.52. Trying to install CiviCRM and the error I get on installation is: "Unable to create InnoDB tables. MySQL InnoDB support is required for CiviCRM but is either not available or not enabled in this MySQL database server." – bpmccain Feb 2 at 15:32
2  
Have you checked the error_log? If mysql runs into an error with ibdata, or misconfigured ib_logfiles, it will still run, but without innodb support. – DTest Feb 2 at 15:37
Mm ... this looks tricky. If I recall correctly, for v5.1.x, you need to enable Innodb as a plugin. If you haven't seen this already, have a look at this site: dev.mysql.com/doc/innodb-plugin/1.0/en/… ... HTH ... ? – KM01 Feb 2 at 15:44
Ok, I found it - thanks DTest. I had been checking an old error log, not realizing I had changed where the error log is saved in my.cnf. I had the Innodb buffer size larger than the memory available on the server. Using Amazon EC2, and I had copied an image from a small to a micro with less memory – bpmccain Feb 2 at 15:53
feedback

migrated from serverfault.com Feb 2 at 14:41

This question came from our site for system administrators and desktop support professionals.

1 Answer

I've seen this issue before in my own set up it has to do mostly with trying to use a memory pool that is larger than your available memory. Check your my.cnf file to ensure your settings conform to your available memory.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.