简体   繁体   中英

MySQL unknown table engine innodb

I am trying to migrate a test website on drupal onto a live server on Amazon ec2. I migrated the database using phpmyadmin, and tried to access the site. I got this error:

PDOException: SQLSTATE[42000]: Syntax error or access violation: 1286 Unknown table engine 'InnoDB': SELECT expire, value FROM {semaphore} WHERE name = :name; Array ( [:name] => variable_init ) in lock_may_be_available() (line 167 of /var/www/includes/lock.inc).

I believe the problem here is that MySQL doesn't have InnoDB. I have looked through the my.cnf file and there is no line that says skip-innodb .

I have tried show engines and it showed a bunch of engines but not innodb. I have tried restarting my server and deleting the logfile, just like has been suggested previously, but that didn't work.

Maybe what needs to be done is to somehow install the Innodb engine. Could you tell me how I may do that?

在Debian 6上,当您更改innodb_log_file_size参数时,也可能发生这种情况。有时mysql无法启动..但有时它只是启动bud会禁用innodb引擎。因此解决方案是从/ var / lib /中删除ib_logfiles。 mysql并重启mysql

Look in your mysql error log. Run

select @@log_error;

To see where exactly that is.

There is probably something in there telling why it failed on startup. (Perhaps trying to allocate more buffer pool than you have memory?)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM