This section describes how to install MySQL Enterprise Thread Pool. For general information about installing plugins, see Section 5.5.2, “Installing and Uninstalling Plugins”.
To be usable by the server, the plugin library file must be
located in the MySQL plugin directory (the directory named by
the plugin_dir system
variable). If necessary, set the value of
plugin_dir at server startup to
tell the server the plugin directory location.
The plugin library file base name is
thread_pool. The file name suffix differs per
platform (for example, .so for Unix and
Unix-like systems, .dll for Windows).
To enable thread pool capability, load the plugins to be used by
starting the server with the
--plugin-load option. For
example, if you name just the plugin library file, the server
loads all plugins that it contains (that is, the thread pool
plugin and all the INFORMATION_SCHEMA
tables). To do this, put these lines in your
my.cnf file (adjust the
.so suffix for your platform as necessary):
[mysqld] plugin-load=thread_pool.so
That is equivalent to loading all thread pool plugins by naming them individually:
[mysqld] plugin-load=thread_pool=thread_pool.so;tp_thread_state=thread_pool.so;tp_thread_group_state=thread_pool.so;tp_thread_group_stats=thread_pool.so
With --plugin-load, all plugins
must be named on a single line. To make the option file easier
to read, use --plugin-load-add,
which enables naming plugins individually:
[mysqld] plugin-load-add=thread_pool=thread_pool.so plugin-load-add=tp_thread_state=thread_pool.so plugin-load-add=tp_thread_group_state=thread_pool.so plugin-load-add=tp_thread_group_stats=thread_pool.so
If desired, you can load individual plugins from the library
file. To load the thread pool plugin but not the
INFORMATION_SCHEMA tables, use an option like
this:
[mysqld] plugin-load=thread_pool=thread_pool.so
To load the thread pool plugin and only the
TP_THREAD_STATE
INFORMATION_SCHEMA table, use an option like
this:
[mysqld] plugin-load=thread_pool=thread_pool.so;tp_thread_state=thread_pool.so
If you do not load all the
INFORMATION_SCHEMA tables, some or all
MySQL Enterprise Monitor thread pool graphs will be empty.
To verify plugin installation, examine the
INFORMATION_SCHEMA.PLUGINS table or
use the SHOW PLUGINS statement
(see Section 5.5.3, “Obtaining Server Plugin Information”). For
example:
mysql>SELECT PLUGIN_NAME, PLUGIN_STATUS FROM INFORMATION_SCHEMA.PLUGINS->WHERE PLUGIN_NAME LIKE 'thread%' OR PLUGIN_NAME LIKE 'tp%';+-----------------------+---------------+ | PLUGIN_NAME | PLUGIN_STATUS | +-----------------------+---------------+ | thread_pool | ACTIVE | | TP_THREAD_STATE | ACTIVE | | TP_THREAD_GROUP_STATE | ACTIVE | | TP_THREAD_GROUP_STATS | ACTIVE | +-----------------------+---------------+
If the server loads the thread pool plugin successfully, it sets
the thread_handling system variable to
dynamically-loaded. If the plugin fails to
load, the server writes a message to the error log.