Plugins provide the majority of Drizzle’s features: functions, system tables, replication, etc. You should familiarize yourself with the Plugin Options and Plugin Documentation.
Drizzle loads these plugins by default (see --plugin-load):
- ASCII Function - Return the ASCII value of a character (ascii)
- Allow All Authentication - Data Dictionary for utility tables (auth_all)
- BENCHMARK Function - Measure time for repeated calls to a function. (benchmark)
- Catalog System - Basic Catalog functions, data dictionary, and system. (catalog)
- CHAR_LENGTH Function - Return the number of characters in a string (charlength)
- Character and Collation Dictionary - Data Dictionary for schema, table, column, indexes, etc (collation_dictionary)
- Compression Functions - UDFs for compression functions (compression)
- CONNECTION_ID Function - Return the current connection_id (connection_id)
- console_plugin - Console Client (console) (TODO: documentation missing)
- CRC32 Function - CRC32 Function (crc32)
- Default Replicator - Default Replicator (default_replicator)
- Drizzle Protocol - Drizzle Protocol (drizzle_protocol)
- Error Messages to STDERR - Error Messages to stderr (errmsg_stderr)
- Error Dictionary - Data Dictionary for Errors. (error_dictionary)
- Function Engine - Function Engine provides the infrastructure for Table Functions,etc. (function_engine)
- Hex Functions - Convert a string to HEX() or from UNHEX() (hex_functions)
- Information Schema Dictionary - Data Dictionary for ANSI information schema, etc (information_schema_dictionary)
- InnoDB Storage Engine - Supports transactions, row-level locking, and foreign keys (innobase)
- ipv6_function_plugin - IPV6() function (ipv6_function) (TODO: documentation missing)
- JS - Execute JavaScript code with supplied arguments (js)
- Length Functions - Return the byte length of a string (length)
- User Statistics - User Statistics as DATA_DICTIONARY tables (logging_stats)
- Math Functions - Math Functions. (math_functions)
- MD5 Function - UDF for computing md5sum (md5)
- Memory Storage Engine - Hash based, stored in memory, useful for temporary tables (memory)
- Multi-Thread Scheduler - One Thread Per Session Scheduler (multi_thread)
- MyISAM Storage Engine - Default engine as of MySQL 3.23, used for temporary tables (myisam)
- MySQL Protocol - MySQL Protocol Module (mysql_protocol)
- MySQL Unix Socket Protocol - MySQL Unix Socket Protocol (mysql_unix_socket_protocol)
- Protocol Dictionary - Provides dictionary for protocol counters. (protocol_dictionary)
- RAND Function - RAND Function (rand_function)
- Registry Dictionary - Provides dictionary for plugin registry system. (registry_dictionary)
- REVERSE Function - reverses a string (reverse_function)
- Schema Dictionary - Data Dictionary for schema, table, column, indexes, etc (schema_dictionary)
- Schema Engine - This implements the default file based Schema engine. (schema_engine)
- Session Dictionary - Dictionary for session information, aka proccesslist, user defined variables, etc. (session_dictionary)
- SHOW Commands - Dictionary for show commands. (show_dictionary)
- SHOW_SCHEMA_PROTO Function - Shows text representation of schema definition proto (show_schema_proto)
- Signal Handler - Default Signal Handler (signal_handler)
- SLEEP Function - SLEEP Function (sleep)
- Status Dictionary - Dictionary for status, statement, and variable information. (status_dictionary)
- String Functions - String Functions. (string_functions)
- Substring Functions - SUBSTR and SUBSTR (substr_functions)
- Syslog - Syslog (syslog)
- Table Cache Dictionary - Data Dictionary for table and table definition cache. (table_cache_dictionary)
- User Locks - User level locking and barrier functions (user_locks)
- Utility Functions - Utility Functions. (utility_functions)
- UUID Function - UUID() function using libuuid (uuid_function)
- VERSION Function - Print Drizzle version (version)
You can list information about the loaded plugins with:
SELECT * FROM DATA_DICTIONARY.MODULES;
Note to editors: The above list of functions can be regenerated at any time with:
drizzle --silent -e "SELECT CONCAT(' * ', ':ref:\`', MODULE_LIBRARY, '_plugin\` - ', MODULE_DESCRIPTION, ' (', MODULE_LIBRARY, ')')
FROM DATA_DICTIONARY.MODULES ORDER BY MODULE_LIBRARY;"