MySQL自带了很多插件,比如半同步插件、审计插件、密码验证插件等等,甚至MySQL存储引擎也是以插件方式实现的。MySQL开放的插件接口,为开发者开发自定义插件提供了便利。本文将介绍如何快速开发一个自定义的MySQL插件。
原文地址:
https://mytecdb.com/blogDetail.php?id=92
一、开发环境准备
- 下载MySQL源码,本文使用的源码是 Percona Server for MySQL 5.7.19。
- 安装C/C++开发环境、依赖包等。
- 编译MySQL源码,保证在开发自定义插件前,MySQL源码能够被正常编译。
二、自定义插件my_plugin
MySQL源码中包含了插件开发的例子,在源码目录plugin/daemon_example,该例子实现的是每隔5秒向数据目录的mysql-heartbeat.log文件中写入心跳时间戳,如下:
Starting up at 190809 2:30:26
Heartbeat at 190809 2:30:31
Heartbeat at 190809 2:30:36
Heartbeat at 190809 2:30:41
Heartbeat at 190809 2:30:36
Heartbeat at 190809 2:30:51
Shutting down at 190809 2:30:53
以daemon_example为基础,开发自定义插件。拷贝daemon