PacktLib: MySQL 5.1 Plugin Development

MySQL 5.1 Plugin Development

Credits

About the Authors

About the Reviewer

Preface

Compiling and Using MySQL Plugins

UDF libraries

Plugin libraries

Automatic builds, packaging

Summary

User Defined Functions

Writing UDFs

A constant integer output UDF

An integer echoing UDF

A simple static text output UDF

A summing aggregate UDF

Further reading

Summary

Daemon Plugins

A look inside a Daemon plugin

A Hello World! Daemon plugin

A system and status variables demo plugin

A simple monitoring plugin

System Status Variables plugin

Summary

Information Schema Plugins

Why write Information Schema plugins

The creation of Information Schema plugins

A Static Table example

A System Information plugin

Summary

Advanced Information Schema Plugins

Accessing MySQL internals

Condition pushdown

A User Variables Information Schema plugin

A Binary Logs Information Schema plugin

Summary

Full-text Parser Plugins

The full-text parser plugin architecture

A PHP full-text parser

Summary

Practical Full-text Parsers

Boolean parsers

A Boolean full-text parser

An Image Metadata processor

A Soundex full-text parser

Summary

Storage Engine Plugins

Introducing storage engines

A read-only storage engine

Summary

HTML Storage Engine—Reads and Writes

An idea of the HTML engine

Flashback

Creating, opening, and closing the table

Reading data

Updating the table

Optimizing and analyzing

What's left

Compiling and linking

Putting it all together

Summary

TOCAB Storage Engine — Implementing Indexes

B-tree library

Storage engine API for indexes

Describing the engine

Creating, opening, and closing the table

Searching in the index

Rows and keys

Table scan and random access

Inserting rows

What's left

Compiling and linking

Putting it all together

Possible extensions

Summary

Beyond MySQL 5.1

Beyond MySQL 5.1

Beyond MySQL 5.1

Beyond MySQL 5.1

Beyond MySQL 5.1

Beyond MySQL 5.1