window10系统下mysql5.7安装审计插件(亲测有用)

前言

mysql有没oracle这样的审计功能?突然想在mysql做审计怎么办?下面带大家从零开始给mysql安装审计插件,亲测绝对可用哦!
本教程虽然是在windows里操作,但在linux系统里也是同理,对应的插件和配置修改,都是类似的。

a、企业版 MySQL Enterprise Edition(收费)自带AUDIT审计功能。

b、社区版 MySQL Community Server(免费)需要自己下载插件。

所以,免费的社区版的使用者们,跟着下面教程获取到审计功能吧。

1、下载MariaDB拿到对应的审计插件

tip:这一步本来就是为了获得审计插件的,不想下载MariaDB那么麻烦,直接本人保存好的审计插件-server_audit.dll文件(下载地址),
可跳过第1步、第2步,去到第3步,直接拷贝到数据库所在目录的\lib\plugin下 。

下载地址:http://xiazai.jb51.net/202209/yuanma/server_audit_jb51.rar

版本情况

window10

mysql5.7.36

mysql与MariaDB 的版本对应很重要。mysql5.7.36版本,选择MariaDB 的版本是5.5.57下载路径

https://archive.mariadb.org//mariadb-5.5.68/winx64-packages/mariadb-5.5.68-winx64.msi

2、安装MariaDB审计插件

改下端口,其他都是下一步。

3、配置审计插件到mysql

1、登入mysql执行如下命令,可以查看mysql数据对应的插件文件存放位置。

SHOW GLOBAL VARIABLES LIKE 'plugin_dir';

2、从MariaDB的lib\plugin目录拷贝server_audit.dll:

复制到mysql对应的 lib\plugin目录下:

3、mysql里执行如下命令安装审计插件:

INSTALL PLUGIN server_audit SONAME 'server_audit.dll';

4、安装成功,通过如下命令可以查看初始化参数配置。

 show variables like '%audit%';

5、执行如下命令开启mysql审计功能

#备注:指定哪些操作被记录到日志文件中

set global server_audit_events='CONNECT,QUERY,TABLE,QUERY_DDL';
#备注:开启审计功能
set global server_audit_logging=on;

#备注:默认存放路径,可以不写,默认到data文件下
#set global server_audit_file_path =/data/mysql/auditlogs/
#备注:设置文件大小
set global server_audit_file_rotate_size=200000000;

#指定日志文件的数量,如果为0日志将从不轮转
set global server_audit_file_rotations=200;

#强制日志文件轮转
set global server_audit_file_rotate_now=ON;

执行完上述命令,

show variables like '%audit%';

可查看审计配置说明

6、永久生效配置,修改配置文件my.ini

[mysqld]
#备注:防止server_audit 插件被卸载

server_audit=FORCE_PLUS_PERMANENT

#备注:指定哪些操作被记录到日志文件中
server_audit_events='CONNECT,QUERY,TABLE,QUERY_DDL'
server_audit_logging=on
server_audit_file_rotate_size=200000001
server_audit_file_rotations=200
server_audit_file_rotate_now=ON

然后重启mysql

net stop mysql
net start mysql

4、测试审计插件

可到data文件下查看日志文件server_audit.log。

可以看到刚才操作的日志都有了:

5、卸载审计插件

 #如果设置了防卸载,需要先去掉该配置 server_audit = FORCE_PLUS_PERMANENT
 UNINSTALL PLUGIN server_audit;
 show variables like '%audit%';

6、审计插件server audit参数说明

server_audit_events :指定记录事件的类型,可以用逗号分隔的多个值
server_audit_excl_users : 该列表的用户[行为]将不记录,connect信息将不受该设置影响
server_audit_file_path :使用该变量设置存储日志的文件,可以指定目录,默认存放在数据目录的server_audit.log文件中
server_audit_file_rotate_now :知否立即切割日志
server_audit_file_rotate_size :限制日志文件的大小
server_audit_file_rotations :指定日志文件的数量,如果为0日志将从不轮转
server_audit_incl_users : 指定哪些用户的活动将记录,connect将不受此变量影响,该变量比server_audit_excl_users优先级高
server_audit_loc_info :
server_audit_logging :启动或关闭审计ON/OFF
server_audit_mode :标识版本,用于开发测试
server_audit_output_type :指定日志输出类型,可为SYSLOG或FILE,当为syslog时记录到/var/log/messages
server_audit_query_log_limit :1024
server_audit_syslog_facility :LOG_USER
server_audit_syslog_ident :mysql-server_auditing
server_audit_syslog_info :
server_audit_syslog_priority :LOG_INFO

重点说明参数: server_audit_events

省略值全部事件类型都会记录到审计日志中,可选择事件类型才记录。

如 server_audit_events = query,table,query_ddl,query_dml

事件类型

CONNECT:连接、断开连接和失败的连接,包括错误代码

QUERY:以纯文本形式执行的查询及其结果,包括由于语法或权限错误而失败的查询

TABLE:受查询执行影响的表

QUERY_DDL:与QUERY相同,但只筛选DDL类型的查询(create、alter、drop、rename和truncate语句,create/drop[procedure/function/user]和rename user除外(它们不是DDL)

QUERY_DML:与QUERY相同,但只筛选DML类型的查询(do、call、load data/xml、delete、insert、select、update、handler和replace语句)

QUERY_DCL:与QUERY相同,但只筛选DCL类型的查询(create user、drop user、rename user、grant、revoke和set password语句)

QUERY_DML_NO_SELECT:与QUERY_DML相同,但不记录SELECT查询。(从1.4.4版开始)(do、call、load data/xml、delete、insert、update、handler和replace语句)

7、注意

  • 如果开启了查询缓存(query cache),查询直接从查询缓存返回数据,将没有table记录
  • 由于除了DDL和DML之外还有其他类型的查询,因此将查询DDL和查询DML选项一起使用并不等同于使用查询。从Audit插件的1.3.0版开始,有用于记录查询的DCL类型(例如GRANT和REVOKE语句)的QUERY_DCL选项。在同一版本中,添加了server_audit_query_log_limit变量,以便能够设置日志记录的长度。以前,由于查询字符串较长,日志条目将被截断。
  • 卸载审计插件
  • 如my.cnf 有相关配置,先清空重启再卸载。

到此这篇关于window10系统下mysql5.7安装审计插件的文章就介绍到这了,更多相关mysql5.7安装审计插件内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • mysql利用init-connect增加访问审计功能的实现

    mysql的连接首先都是要通过init-connect初始化,然后连接到实例. 我们利用这一点,通过在init-connect的时候记录下用户的thread_id,用户名和用户地址实现db的访问审计功能. 实现步骤 1.创建审计用的库表. 为了不与业务的库冲突,单独创建自己的库: #建库表代码 create database db_monitor ; use db_monitor ; CREATE TABLE accesslog ( thread_id int(11) DEFAULT NULL,

  • window10系统下nvm详细安装步骤以及使用

    目录 前言 win10 nvm安装及使用 总结 前言 nvm是一个管理nodejs版本的工具.在实际的开发中,有些项目的开发依赖需要低版本的nodejs运行环境,此时我们就需要使用nvm来降低nodejs版本. win10 nvm安装及使用 1.下载安装nvm,首先安装目录不要有空格和中文,会出现乱码 下载地址: https://github.com/coreybutler/nvm-windows/releases 2.解压之后安装,安装路径默认的是C盘,如果C盘内存不够的话可以安装到D盘,一般

  • 解决Window10系统下Node安装报错的问题分析

    前言 今天电脑重装了win10系统,在安装Node的过程中出现了下面的问题,下面就和大家分享下用来解决这种问题的小方法. 报错原因 随便问下度娘我们就可以知道,导致报错的原因是由于权限的关系,因此我们只需要使用管理员权限来运行当前Node安装包就可以解决报错问题了. 具体方法 使用管理员权限打开命令行工具并且cd到node安装包的项目文件夹下执行下面代码: msiexec /i package node-v6.9.1-x64.msi 运行指令之后接下来就会自动弹出安装界面,然后我们只需要按照提示

  • CentOS7 64位下MySQL5.7安装与配置教程

    安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/ # 下载mysql源安装包 shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm # 安装mysql源 shell> yum localinstall mysql57-commun

  • Linux系统下为Nginx安装多版本PHP

    我们在安装配置服务器LNPM环境时应该考虑到PHP多版本并存的问题,下面是实现Linux系统下为Nginx安装多版本PHP的实现方法 linux版本:64位CentOS 6.4 Nginx版本:nginx1.8.0 php版本:php5.5.28 & php5.4.44 注意假如php5.5是主版本已经安装在/usr/local/php目录下,那么再安装其他版本的php再指定不同安装目录即可. 安装PHP # wget http://cn2.php.net/get/php-5.4.44.tar.

  • Window系统下Python如何安装OpenCV库

    关于OpenCV简介 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows.Android和Mac OS操作系统上.它轻量级而且高效--由一系列 C 函数和少量 C++ 类构成,同时提供了Python.Ruby.MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法. OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口. 在计算机视觉项目的开发中,OpenCV作为较大众的开源库,拥有了丰富的常

  • Windows系统下Node.js安装以及环境配置的完美教程

    目录 一.安装环境 二.安装Node.js步骤 三.前期准备 1.Node.js简介 2.下载Node.js 四.开始安装 五.环境配置 六.测试 本人安装路径实况 总结 一.安装环境 1.本机系统:Windows 10 Pro(64位) (楼主win7,完美通过) 2.Node.js:v6.9.2LTS(64位) (楼主版本2018-11-01下载的最新版本) 二.安装Node.js步骤 1.下载对应你系统的Node.js版本:https://nodejs.org/en/download/ 2

  • Goland激活码破解永久版及安装详细教程(亲测可以)

    一.go安装 1.建议去go语言中文网下载,网址:https://studygolang.com/dl,下图是下载页面及包介绍 2.Windows版安装 3.在cmd命令行窗口输入"go version"可以查看当前Go版本,用以检测是否安装成功 4.在任意盘里新建文件夹GoWorks,里面再新建三个文件夹: bin.src.pkg 5.把GoWorks添加到环境变量中去 二.安装goland 下载安装一路下一步 设置gopath 三.破解goland 1.下载新版破解补丁 链接: h

  • Windows系统下mysql5.7.21安装详细教程

    MySQL安装程序为您所有的MySQL软件需求提供了一个易于使用,基于向导的安装体验.产品中包含以下最新版本: MySQL服务器 MySQL连接器 MySQL Workbench和示例模型 示例数据库 MySQL for Excel MySQL通知程序 用于Visual Studio的MySQL 文档 工具/原料:mysql-installer-community-5.7.21.0.msi 链接: https://pan.baidu.com/s/1nxmngff 密码: g4si 方法/步骤:

  • Centos7.3下mysql5.7安装配置教程

    本文大家分享了mysql5.7安装配置教程,供大家参考,具体内容如下 第一步:获取mysql YUM源 进入mysql官网获取RPM包下载地址 https://dev.mysql.com/downloads/repo/yum/ 点击 下载 右击 复制链接地址https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 得到这个 这个就是Yum仓库的rpm包 其实就是一个下载地址 第二步:下载和安装mysql源 先下载

  • windows系统下简单nodejs安装及环境配置

    相信对于很多关注javascript发展的同学来说,nodejs已经不是一个陌生的词眼.有关nodejs的相关资料网上已经铺天盖地.由于它的高并发特性,造就了其特殊的应用地位. 国内目前关注最高,维护最好的一个关于nodejs的网站应该是http://www.cnodejs.org/  这里不想谈太多的nodejs的相关信息.只说一下,windows系统下简单nodejs环境配置. 第一步:下载安装文件 下载地址:官网http://www.nodejs.org/download/  这里用的是

随机推荐