27.2.3. INSTALL PLUGIN
Syntax
INSTALL PLUGIN plugin_name
SONAME 'plugin_library
'
This statement installs a plugin.
plugin_name
is the name of the plugin
as defined in the plugin declaration structure contained in the
library file. Plugin name case sensitivity is determined by the
host system filename semantics.
plugin_library
is the name of the
shared library that contains the plugin code. The name includes
the filename extension (for example,
libmyplugin.so
or
libmyplugin.dylib
).
The shared library must be located in the plugin directory (that
is, the directory named by the plugin_dir
system variable). The library must be in the plugin directory
itself, not in a subdirectory. By default,
plugin_dir
is the directory named by the
pkglibdir
configuration variable, but it can
be changed by setting the value of plugin_dir
at server startup. For example, set its value in a
my.cnf
file:
[mysqld]
plugin_dir=/path/to/plugin/directory
If the value of plugin_dir
is a relative
pathname, it is taken to be relative to the MySQL base directory
(the value of the basedir
system variable).
INSTALL PLUGIN
adds a line to the
mysql.plugin
table that describes the
plugin
. This table contains the plugin name
and library filename.
INSTALL PLUGIN
also loads and initializes the
plugin code to make the plugin available for use. A plugin is
initialized by executing its initialization function, which
handles any setup that the plugin must perform before it can be
used.
To use INSTALL PLUGIN
, you must have the
INSERT privilege
for the
mysql.plugin
table.
At server startup, the server loads and initializes any plugin
that is listed in the mysql.plugin
table.
This means that a plugin is installed with INSTALL
PLUGIN
only once, not every time the server starts.
Plugin loading at startup does not occur if the server is
started with the --skip-grant-tables
option.
When the server shuts down, it executes the deinitialization
function for each plugin that is loaded so that the plugin has a
change to perform any final cleanup.
To remove a plugin entirely, use the UNINSTALL
PLUGIN
statement:
To see what plugins are installed, use the SHOW
PLUGIN
statement.
If you recompile a plugin library and need to reinstall it, you
can use either of the following procedures:
Use UNINSTALL PLUGIN
to uninstall all
plugins in the library, install the new plugin library file
in the plugin directory, and then use INSTALL
PLUGIN
to install all plugins in the library. This
procedure has the advantage that it can be used without
stopping the server. However, if the plugin library contains
many plugins, you must issue many INSTALL
PLUGIN
and UNINSTALL PLUGIN
statements.
Alternatively, stop the server, install the new plugin
library file in the plugin directory, and then restart the
server.