Webmasters usually face “[ERROR] Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed” while migrating the website or during configuration tweaks.
An unoptimized MySQL configuration entry is the most common reason for this error.
As part of MySQL Support Services, our experts routinely resolve errors such as this. Today we will go through the top causes we have seen for this error, and how we resolve them.
Causes for ‘innodb’ registration as a storage engine failed error
It is common for webmasters or web admins to tweak the parameters of MySQL configuration file. This is primarily to improve the performance of the server.
However, performing tweaks without considering the server resources can adversely affect the server performance. It may even lead to the MySQL service failure.
For instance,innodb_log_file_size is the size of the commit log files which impact the performance of MySQL. Updating the value to a very high level that the server cannot handle leads to MySQL failure with this error.
MySQL upgrade may also trigger this error. The new version of MySQL may not support some of the parameters in the old version. For instance, innodb_log_checksum_algorithm is an experimental feature in 10.0-10.1, which was deprecated in 10.2 and removed in 10.3. Thus there is a chance for the error to be invoked during the upgrade.
A typical error message looks like
110831 21:20:00 [ERROR] Plugin ‘InnoDB’ init function returned error. 110831 21:20:00 [ERROR] Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed. 110831 21:20:00 [ERROR] Unknown/unsupported storage engine: INNODB 110831 21:20:00 [ERROR] Aborting 110831 21:20:00 [Note] /usr/sbin/mysqld: Shutdown complete
How to fix the plugin ‘innodb’ registration as a storage engine failed error?
The first step to fix the error is to find the exact parameter that triggers the error. A closer look at the MySQL configuration file will provide us the details of the configuration.
For instance, one of the requests we recently handled had this line on top of the error message
150206 4:42:12 [ERROR] /usr/sbin/mysqld: unknown variable 'local-inline=0'
Obviously the parameter
local-inline=0 in MySQL configuration file is triggering the error. To fix the issue, first, we opened the file using an editor
Then we removed the conflicting entry from the configuration file. Next step is to move the redo log files
ib_logfile1 to another directory.
#cd /var/lib/mysql #mv ib_logfile0 ib_logfile1 /tmp/
Finally, we can restart the MySQL service.
#service mysqld restart [root@tech mysql]# service mysqld restart Stopping mysqld: [ OK ] Starting mysqld: [ OK ]
[Need help to Fix the ‘innodb’ registration as a storage engine failed error? We are available 24×7.]
In short, the error message plugin ‘innodb’ registration as a storage engine failed is caused due to incorrect entries in the MySQL configuration file. Today we discussed how our Support Engineers find the exact conflicting entry from the error logs and fix the error easily.