For Unix and Linux systems, use the following procedure to install the InnoDB Plugin as a shared library:
Download, extract and install the suitable MySQL executable for your server platform and operating system from the MySQL download section for MySQL Database Server 5.1. Be sure to use a 32-bit or 64-bit version as appropriate for your hardware and operating system.
Make sure the MySQL server is not running. If the server is running, do a “slow” shutdown by issuing the following command before performing the shutdown:
SET GLOBAL innodb_fast_shutdown=0;
The InnoDB Plugin shared library is already installed in
the directory lib/plugin as part of the
MySQL installation.
Edit the option file (my.cnf) to ignore the builtin InnoDB, and load the InnoDB Plugin and all Information Schema tables implemented in the InnoDB Plugin when the server starts:
ignore_builtin_innodb plugin-load=innodb=ha_innodb_plugin.so;innodb_trx=ha_innodb_plugin.so; innodb_locks=ha_innodb_plugin.so;innodb_lock_waits=ha_innodb_plugin.so; innodb_cmp=ha_innodb_plugin.so;innodb_cmp_reset=ha_innodb_plugin.so; innodb_cmpmem=ha_innodb_plugin.so;innodb_cmpmem_reset=ha_innodb_plugin.so
Note that all plugins for plugin-load
should be on the same line in the option file.
Alternatively, you can use the equivalent options on the MySQL command line:
mysqld --ignore-builtin-innodb --plugin-load=innodb=ha_innodb_plugin.so; innodb_trx=ha_innodb_plugin.so;innodb_locks=ha_innodb_plugin.so; innodb_lock_waits=ha_innodb_plugin.so;innodb_cmp=ha_innodb_plugin.so; innodb_cmp_reset=ha_innodb_plugin.so;innodb_cmpmem=ha_innodb_plugin.so; innodb_cmpmem_reset=ha_innodb_plugin.so
You can also install the InnoDB Plugin and the new
InnoDB Information Schema tables implemented in
ha_innodb_plugin.so with
INSTALL commands:
INSTALL PLUGIN INNODB SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_TRX SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_LOCKS SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_LOCK_WAITS SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_CMP SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_CMP_RESET SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_CMPMEM SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_CMPMEM_RESET SONAME 'ha_innodb_plugin.so';
If you use INSTALL PLUGIN statement to
install the InnoDB Plugin and the Information Schema
tables, ensure the following conditions are set up:
In the mysqld command line or
my.cnf option file, prepend each
InnoDB option with loose_, so that
MySQL will start even when InnoDB is unavailable.
For example, write
loose_innodb_file_per_table instead of
innodb_file_per_table.
Start the MySQL server while it is configured to skip
loading the built-in InnoDB and to make MyISAM the
default storage engine. This can be done by editing the
option file my.cnf to contain these
two lines:
ignore_builtin_innodb default_storage_engine=MyISAM
Or, you can use the equivalent options on the MySQL command line:
mysqld --ignore-builtin-innodb --default-storage-engine=MyISAM …
See the MySQL Manual section on
INSTALL PLUGIN Syntax for information on how
these commands work.
Edit the option file my.cnf to use
InnoDB as the default engine (if desired) and set
appropriate configuration parameters to enable use of new
InnoDB Plugin features, as described in
Section 9.5, “Configuring the InnoDB Plugin”.
In particular, we recommend that you set the following
specific parameters as follows:
default-storage-engine=InnoDB innodb_file_per_table=1 innodb_file_format=barracuda innodb_strict_mode=1
The MySQL server always must be started with the option
ignore_builtin_innodb, as long as you want to use the
InnoDB Plugin as a shared library. Also, remember that
the startup option skip_grant_tables prevents MySQL
from loading any plugins.
Verify the installation of the plugins with the MySQL
command SHOW PLUGINS, which should
produce the following output:
| Name | Status | Type | Library | License |
|---|---|---|---|---|
| binlog | ACTIVE | STORAGE ENGINE | NULL | GPL |
| CSV | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MEMORY | ACTIVE | STORAGE ENGINE | NULL | GPL |
| InnoDB | ACTIVE | STORAGE ENGINE | ha_innodb_plugin.so | GPL |
| INNODB_TRX | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_LOCKS | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_LOCK_WAITS | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_CMP | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_CMP_RESET | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_CMPMEM | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_CMPMEM_RESET | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| MRG_MYISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MyISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
If the plugins fail to load properly, see Section 9.3.1.1, “Errors When Installing the InnoDB Plugin on Unix or Linux” for possible causes and corrections.
After verifying that the Plugin is recognized by MySQL, create an InnoDB table as another confirmation of success.

User Comments
Add your own comment.