Past, Present, and Future of the MySQL Plugin API

Sergei Golubchik
Principal Software Developer & Server Architect
MySQL AB
Presented by
MySQL AB® & O'Reilly Media, Inc.

Why to Bother

Why you may need to extend MySQL

A Bit of a History

Traditional ways of extending MySQL

Known Problems

Drawbacks of the traditonal solutions

Plugins: easy of building

Easy to compile

Plugins: ease of distribution

Easy to distribute

Plugins: ease of use

Easy to use

Plugin API

API Features

Any plugin can

Plugin administration

Plugin administration

mysql> SELECT * FROM INFORMATION_SCHEMA.PLUGINS LIMIT 1 \G
********************* 1. row *************************
           PLUGIN_NAME: foo
        PLUGIN_VERSION: 2.1
         PLUGIN_STATUS: ACTIVE
           PLUGIN_TYPE: FTPARSER
   PLUGIN_TYPE_VERSION: 0.1
        PLUGIN_LIBRARY: bar.so
PLUGIN_LIBRARY_VERSION: 0.0
         PLUGIN_AUTHOR: F.O.O.Bar
    PLUGIN_DESCRIPTION: Super-hyper-cool foobar parser

Plugin types

Full-Text Parser Plugins

Full-Text Parser Examples

Storage Engine Plugins

Storage Engine Examples

Daemon Plugins

INFORMATION_SCHEMA Plugins

Audit Plugins

Stored Procedure Language Plugins

Query Rewrite Plugins

The future of the Plugin API

Extending the API

Applications of the Plugin API

New plugin types

Useful links

Questions ?