Spec-Zone .ru
спецификации, руководства, описания, API
|
The server plugin implementation comprises several components.
SQL statements:
INSTALL
PLUGIN
registers a plugin in the mysql.plugin
table and loads
the plugin code.
UNINSTALL
PLUGIN
unregisters a plugin from the mysql.plugin
table and
unloads the plugin code.
The WITH PARSER
clause for full-text index creation
associates a full-text parser plugin with a given FULLTEXT
index.
SHOW PLUGINS
displays information about server plugins.
Command-line options and system variables:
The --plugin-load
option enables plugins to be loaded at server startup time.
The plugin_dir
system variable indicates the location of the directory where
all plugins must be installed. The value of this variable can be specified at server startup with a --plugin_dir=
option. mysql_config --plugindir displays the default plugin
directory path name.path
For additional information about plugin loading, see Section 5.1.8.1, "Installing and Uninstalling Plugins".
Plugin-related tables:
The INFORMATION_SCHEMA.PLUGINS
table contains plugin information.
The mysql.plugin
table lists each plugin that was
installed with INSTALL
PLUGIN
and is required for plugin use. For new MySQL installations, this table is created
during the installation process.
The client plugin implementation is simpler:
For the mysql_options()
C API function, the MYSQL_DEFAULT_AUTH
and MYSQL_PLUGIN_DIR
options enable client programs to load authentication
plugins.
There are C API functions that enable management of client plugins.
To examine how MySQL implements plugins, consult the following source files in a MySQL source distribution:
In the include/mysql
directory, plugin.h
exposes the public plugin API. This file should be examined by
anyone who wants to write a plugin library. plugin_
files provide additional information that pertains to specific types of plugins. xxx
.hclient_plugin.h
contains information specific to client plugins.
In the sql
directory, sql_plugin.h
and sql_plugin.cc
comprise the internal plugin implementation. sql_acl.cc
is where the server uses authentication plugins. These files
need not be consulted by plugin developers. They may be of interest for those who want to know more
about how the server handles plugins.
In the sql-common
directory, client_plugin.h
implements the C API client plugin functions, and client.c
implements
client authentication support. These files need not be consulted by plugin developers. They may be of
interest for those who want to know more about how the server handles plugins.