MySQL has quite a few
SHOW commands, many of which have Information Schema equivalents. There are, however, exceptions to this. One of them is the
SHOW BINARY LOGS command. For this plugin we will take the function from the MySQL server that implements
SHOW BINARY LOGS and convert it to an Information Schema plugin. This will also demonstrate another aspect important to Information Schema plugins that deal with MySQL internals—the fact that they need to handle locking. With the user variables it was not an issue, because only the current connection can access its variable. But multiple threads can access binary logs simultaneously so we need to take appropriate precautions to make sure that it does not happen. ...