修改审计插件源码编译mariadb获取审计插件
环境:
OS:Centos 7
mariadb:10.4.29
背景:
mysql 5.7.35版本之后就不能使用mariadb自带的审计插件(windows版本的除外),需要修改源码文件重新编译获取审计插件
1.安装编译所需依赖
#yum install -y openssl libssl-dev build-essential bison libncurses-dev cmake gcc-gcc+ git ncurses-devel
2.解压源码包(源码包自行到mariadb官网下载)
[root@10-186-60-13 10.4.29]# tar -zxvf mariadb-10.4.29.tar.gz
[root@10-186-60-13 10.4.29]# cd mariadb-10.4.29/plugin/server_audit/
[root@10-186-60-13 server_audit]# vi server_audit.c
# 打开 server_audit.c 文件
db_off= 536; // 将 536 修改为 544, 其他不变
db_len_off= 544; // 将 544 修改为 552, 其他不变
代码段如下:
#ifdef __x86_64__
db_off= 536;
db_len_off= 544;
3.编译安装
[root@host134 mariadb-10.4.29]# pwd
/soft/mariadb-10.4.29
[root@host134 mariadb-10.4.29]# mkdir -p /mydata/data
[root@host134 mariadb-10.4.29]# mkdir -p /opt/mariadb
# 返回源文件根目录进行编译安装
cd /soft/mariadb-10.4.29
cmake . -DCMAKE_INSTALL_PREFIX=/opt/mariadb \
-DMYSQL_DATADIR=/mydata/data \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
# 执行 make 进行编译安装
[root@10-186-60-13 server_audit]# make
[root@10-186-60-13 server_audit]# make install
4.拷贝编译出来的审计插件文件到自建的mysql插件目录
[root@host134 mariadb-10.4.29]# find ./ -name server_audit.so
./plugin/server_audit/server_audit.so
[root@host134 mariadb-10.4.29]# cp ./plugin/server_audit/server_audit.so /data/middle/mysql57/lib/plugin/
[root@host134 mariadb-10.4.29]#cd /home/middle/mysql57/lib/plugin/
[root@host134 mariadb-10.4.29]#chown mysql:mysql ./server_audit.so
5.安装插件
[mysql@localhost bin]$ /home/middle/mysql57/bin/mysql -h localhost -uroot -P13306 -p
INSTALL PLUGIN server_audit SONAME 'server_audit.so';
6.查看插件
mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'server_audit%';
mysql> show plugins;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?