MySQL 5.1: Upgrade innodb plugin

innodbMySQLperformanceplugins

My application is running on MySQL 5.1.58 community edition. As I studied on SO websites that After acquisition by Oracle, new InnoDB plugin has been released and MySQL 5.1 with InnoDB plugin is the best for performance. Below is the command which displays the current InnoDB configuration in my system:

mysql> SELECT * FROM information_schema.plugins where plugin_name like 'InnoDB';
PLUGIN_NAME : InnoDB
PLUGIN_VERSION : 1.0
PLUGIN_STATUS : ACTIVE
PLUGIN_TYPE : STORAGE ENGINE
PLUGIN_TYPE_VERSION : 50158.0
PLUGIN_LIBRARY : NULL
PLUGIN_LIBRARY_VERSION : NULL
PLUGIN_AUTHOR : Innobase OY
PLUGIN_DESCRIPTION : Supports transactions, row-level locking, and foreign keys
PlUGIN_License: GPL
1 row in set (0.00 sec)

To upgrade this plugin, I have added below in my.ini file:

[mysqld]
ignore-builtin-innodb
plugin-load=innodb=ha_innodb_plugin.dll;

My plugin folder is below:

E:\MySQL\MySQL Server 5.1\lib\plugin

ha_innodb_plugin.dll and ha_innodb_plugin.pdb are available in the above plugin directory.

Now, when I check using show plugins; command, I can't see InnoDB entry in the resultset.

Please answer me below things:

  • Why am I not able to see the InnoDB in plugin list?
  • Is it possible to upgrade InnoDB plugin with my existing MySQL version?
  • If yes, then is it my approach correct?
  • If not, what will be the correct approach?
  • Will it help me to improve the system performance?
  • For this, should I upgrade from mysql 5.1.58 to 5.1.73?

Best Answer

I don't know why you can't see the InnoDB plugin. I've never seen that happen.

You can also use this method to check what version of InnoDB you have loaded:

mysql> SHOW VARIABLES LIKE 'innodb_version';

If it returns a number, then you're using the InnoDB plugin. If it returns nothing, then you're using the builtin InnoDB (or no InnoDB at all).

I suggest that you upgrade to MySQL 5.5. You don't have to fuss with loading the InnoDB plugin, it's loaded and enabled by default, and the builtin InnoDB is not present. Also, MySQL 5.1 is officially end-of-life, and it's no longer a supported product as of 2013-12-31.


Then, is there any other way through which I can upgrade InnoDB plugin related Dll files?

Virtually everyone does this by upgrading the version of MySQL, for example 5.1.58 (2011-07-05) to 5.1.73 (2013-12-03). As you can imagine, there were a lot of important fixes, including security fixes, in the 29 months between these two versions.

In theory, you could download a Zip file of 5.1.73, unpack it and retrieve the InnoDB plugin DLL, and manually move it into the plugin directory of your installed 5.1.58 instance. You should shut down the MySQL Service before doing this.

The caveat is that you would be enabling a version of the plugin (5.1.73) that was never tested with the older version of MySQL. They aren't supposed to break backward compatibility between point-releases, but internal interfaces aren't as strict about that.

Also, upgrading only the InnoDB plugin would not include any fixes implemented in the rest of the MySQL code outside the storage engine.


PS: For what it's worth, the InnoDB plugin existed in MySQL before the Oracle acquisition of MySQL.

  • 2005-10-07: Oracle announces acquisition of Innobase Oy.
  • 2008-04-15: First alpha of the InnoDB plugin.
  • 2009-09-01: First beta release of the InnoDB plugin in MySQL 5.1.38.
  • 2010-01-27: Oracle completes the acquisition of Sun Microsystems.
  • 2010-04-06: First GA release of the InnoDB plugin in MySQL 5.1.46.