MySQL 8.0.35 企业版开启审计audit log功能

一、系统环境和要求

在MySQL中,开启日志审计可以记录数据库的操作日志,包括修改、删除、插入等操作。这对于追踪和分析数据库的使用情况以及排查潜在的安全问题非常有帮助。本文将详细介绍如何开启MySQL的日志审计功能。

操作系统:Ubuntu 20.04.5 LTS

数据库版本:8.0.35-commercial MySQL Enterprise Server - Commercial

TDE插件类型:keyring_encrypted_file

二、安装审计插件
-- 确认审计插件已安装并启用
SHOW PLUGINS;-- 如果未启用,启用审计插件
INSTALL PLUGIN audit_log SONAME 'audit_log.so';

下面是审计插件安装成功

mysql> SHOW PLUGINS;
+----------------------------------+----------+--------------------+---------------------------+-------------+
| Name                             | Status   | Type               | Library                   | License     |
+----------------------------------+----------+--------------------+---------------------------+-------------+
| keyring_encrypted_file           | ACTIVE   | KEYRING            | keyring_encrypted_file.so | PROPRIETARY |
| binlog                           | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| mysql_native_password            | ACTIVE   | AUTHENTICATION     | NULL                      | PROPRIETARY |
| sha256_password                  | ACTIVE   | AUTHENTICATION     | NULL                      | PROPRIETARY |
| caching_sha2_password            | ACTIVE   | AUTHENTICATION     | NULL                      | PROPRIETARY |
| sha2_cache_cleaner               | ACTIVE   | AUDIT              | NULL                      | PROPRIETARY |
| daemon_keyring_proxy_plugin      | ACTIVE   | DAEMON             | NULL                      | PROPRIETARY |
| CSV                              | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| MEMORY                           | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| InnoDB                           | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| INNODB_TRX                       | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_CMP                       | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_CMP_RESET                 | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_CMPMEM                    | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_CMPMEM_RESET              | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_CMP_PER_INDEX             | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_CMP_PER_INDEX_RESET       | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_BUFFER_PAGE               | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_BUFFER_PAGE_LRU           | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_BUFFER_POOL_STATS         | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_TEMP_TABLE_INFO           | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_METRICS                   | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_FT_DEFAULT_STOPWORD       | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_FT_DELETED                | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_FT_BEING_DELETED          | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_FT_CONFIG                 | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_FT_INDEX_CACHE            | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_FT_INDEX_TABLE            | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_TABLES                    | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_TABLESTATS                | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_INDEXES                   | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_TABLESPACES               | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_COLUMNS                   | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_VIRTUAL                   | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_CACHED_INDEXES            | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| INNODB_SESSION_TEMP_TABLESPACES  | ACTIVE   | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| MyISAM                           | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| MRG_MYISAM                       | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| PERFORMANCE_SCHEMA               | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| TempTable                        | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| ARCHIVE                          | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| BLACKHOLE                        | ACTIVE   | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| FEDERATED                        | DISABLED | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| ndbcluster                       | DISABLED | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| ndbinfo                          | DISABLED | STORAGE ENGINE     | NULL                      | PROPRIETARY |
| ndb_transid_mysql_connection_map | DISABLED | INFORMATION SCHEMA | NULL                      | PROPRIETARY |
| ngram                            | ACTIVE   | FTPARSER           | NULL                      | PROPRIETARY |
| mysqlx_cache_cleaner             | ACTIVE   | AUDIT              | NULL                      | PROPRIETARY |
| mysqlx                           | ACTIVE   | DAEMON             | NULL                      | PROPRIETARY |
| audit_log                        | ACTIVE   | AUDIT              | audit_log.so              | PROPRIETARY |
| keyring_file                     | ACTIVE   | KEYRING            | keyring_file.so           | PROPRIETARY |
| keyring_udf                      | ACTIVE   | DAEMON             | keyring_udf.so            | PROPRIETARY |
+----------------------------------+----------+--------------------+---------------------------+-------------+
52 rows in set (0.00 sec)mysql> 
二、修改配置文件

编辑MySQL的配置文件my.cnf,在文件中添加以下内容

# Audit function
audit_log = ON
audit_log_format = JSON
audit_log_policy = ALL
audit_log_file = /var/log/mysql/audit.log

这些配置项的含义如下:

audit_log:设置为ON表示开启审计日志记录。
audit_log_format:指定审计日志的格式,这里我们选择了JSON格式。
audit_log_policy:指定审计策略,这里我们选择了ALL,表示记录所有操作。
audit_log_file:指定日志文件的路径和文件名,这里我们将日志写入到 audit.log 文件中。

修改完成后,保存并关闭文件。

查看audit相关参数

show global variables like 'audit%';

 

四、审计日志分析

开启审计功能后,所有的数据库访问和操作都会被记录在审计日志中。审计日志以JSON格式存储,我们可以通过分析JSON数据来了解数据库的使用情况。从上面的示例中,我们可以获取到以下信息:

tail -n 1 /var/log/mysql/audit.log

 如果操作被成功审计,你将会看到类似以下的日志记录:

{"timestamp": "2024-03-26 08:57:33","id": 8,"class": "general","event": "status","connection_id": 11,"account": {"user": "root","host": ""},"login": {"user": "root","os": "","ip": "10.115.20.71","proxy": ""},"general_data": {"command": "Query","sql_command": "show_keys","query": "SHOW INDEX FROM `sys`.`audit_log`","status": 0}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/771778.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能 框架 paddlepaddle 飞桨 使用指南 使用例子 线性回归模型demo 1

安装过程&使用指南&线性回归模型 使用例子 本来预想 是安装 到 conda 版本的 11.7的 但是电脑没有gpu 所以 安装过程稍有变动,下面简单讲下 conda create -n paddle_env117 python=3.9 由于想安装11.7版本 py 是3.9 所以虚拟环境名称也是 paddle_env117 activa…

6 Spring-AOP

文章目录 1,AOP简介1.1 什么是AOP?1.2 AOP作用1.3 AOP核心概念 2,AOP入门案例2.1 需求分析2.2 思路分析2.3 环境准备2.4 AOP实现步骤步骤1:添加依赖步骤2:定义接口与实现类步骤3:定义通知类和通知步骤4:定义切入点步骤5:制作切面步骤6:将通知类配给容器…

数据库SQLSever——数据查询

一、无条件查询 查询表的所有信息 SELECT * FROM 表名 例:查询学生表 SELECT * FROM student087 二、根据列名查询 根据列名查询表信息 SELECT [列名],[列名],.... FROM 表名 例:查询学生表的学生学号和姓名 SELECT SNO,SNAME FROM STU…

OD_2024_C卷_100分_70、停车场车辆统计【JAVA】【逻辑分析】

题目描述 特定大小的停车场,数组cars[]表示,其中1表示有车,0表示没车。 车辆大小不一,小车占一个车位(长度1),货车占两个车位(长度2),卡车占三个车位&#…

常用设计模式介绍

前言 简说设计模式。 文章目录 前言一、设计模式的要素1、设计模式解决的问题2、设计模式分类1)创建型设计模式2)结构型设计模式3)行为型设计模式 二、详细介绍1、创建型设计模式1)工厂方法模式2)抽象工厂模式3&#x…

基于FPGA的光纤通信系统设计

文章目录 光纤通信系统的组成发送端FPGA端口定义状态机设计代码示例 接收端功能模块端口定义状态机设计 光纤通信系统的组成 发送端FPGA 发送控制逻辑、数据编码、校验码生成、缓存控制、时钟控制 端口定义 状态机设计 代码示例 接收端功能模块 接收端控制逻辑、数据解码、…

谈谈伦敦银投资的价值吗?

白银作为贵金属家族中的一员,当然有着其自身的经济价值和投资价值,尤其是在通货膨胀或货币贬值的时候,伦敦银的价格往往会上涨,投资者参与其中就能起到保值增值的作用。 此外,白银还是一种很好的避险资产,…

AST学习三---构造节点

题目:将 var a 3; 通过AST替换成 var a 12; 本次所用到的知识 1.path.replaceWith (单)节点替换函数,调用方式 path.replaceWith(newNode); 实参一般是node类型,即将当前遍历的path替换为实参里的新节点 注意,它不能用于Array的替换,即实参不能是Array的类型 2.babel/…

突破编程_C++_STL教程( copy 算法)

1 std::copy 算法的概念与用途 std::copy 是 C 标准库中的一种算法&#xff0c;主要用于将一个范围内的元素从一个位置复制到另一个位置。其函数原型如下&#xff1a; template<class InputIterator, class OutputIterator> OutputIterator copy(InputIterator first…

电商api数据接口开发亚马逊国际按关键字搜索商品API请求key接入演示

要使用亚马逊国际API按关键字搜索商品&#xff0c;你需要使用item_search请求。首先&#xff0c;你需要注册一个开发者账号并获取API密钥&#xff08;API Key和API Secret&#xff09;。然后&#xff0c;你可以使用以下Python代码示例来按关键字搜索商品&#xff1a; # coding…

港大新工作 HiGPT:一个模型,任意关系类型 !

论文标题&#xff1a; HiGPT: Heterogeneous Graph Language Model 论文链接&#xff1a; https://arxiv.org/abs/2402.16024 代码链接&#xff1a; https://github.com/HKUDS/HiGPT 项目网站&#xff1a; https://higpt-hku.github.io/ 1. 导读 异质图在各种领域&#xf…

Linux系统下安装部署Linux管理面板1panel

目录 一 1panel介绍 1、1Panel简介 2、1Panel特点 二、本地环境规划 1、本此实验目的 2、本地环境部署 三、部署1Panel&#xff08;在线安装&#xff09; 1.创建安装目录 2.一键部署1Panel 3.检查1Panel服务运行状态 4.检查1Panel监听端口 四、关闭防火墙和selinux…

zabbix进阶

知识点补充 zabbix server在主机上运行服务&#xff0c;端口号为10050&#xff0c;zabbix agent 在被监控机器上运行&#xff08;源码下载&#xff09;主要完成对cpu&#xff0c;磁盘的信息采集&#xff0c;端口号为10051 zabbix 软件结构组成&#xff1a; 1.Zabbix Web GUI …

leetcode 107.二叉树的层序遍历II

题目 思路 正常层序遍历输出&#xff1a; [[3],[9,20],[15,7]] 这道题要求的输出&#xff1a;[[15,7],[9,20],[3]] 可以观察到&#xff0c;只要我们把原来的结果reverse一下就行了。 代码 //leetcode submit region begin(Prohibit modification and deletion)import java…

HWY-41B无源静态电压继电器 整定范围19-240VAC导轨安装JOSEF约瑟

HWY-31A无辅源静态电压继电器 HWY-32A无辅源静态电压继电器 HWY-33A无辅源静态电压继电器 HWY-34A无辅源静态电压继电器 HWY-35A无辅源静态电压继电器 HWY-31B无辅源静态电压继电器 HWY-32B无辅源静态电压继电器 HWY-33B无辅源静态电压继电器 HWY-34B无辅源静态电压继电器 HW…

激活函数选得好,模型性能差不了!17个方法,让网络训练更高效

激活函数是神经网络中不可或缺的组成部分&#xff0c;它们通过引入非线性特性&#xff0c;增强了网络的表达能力和学习能力。常用的激活函数主要可以分为两大类&#xff1a;饱和激活函数、非饱和激活函数。其中sigmoid和tanh是饱和激活函数&#xff0c;而ReLU及其变体则是非饱和…

3月25日,每日信息差

&#x1f396; 素材来源官方媒体/网络新闻 &#x1f384; 京东汽车将和小米汽车进行深度合作 &#x1f30d; 百度将为苹果国行iPhone16提供AI功能&#xff1f;百度方面称暂无回应 &#x1f30b; 国产结核病新型mRNA疫苗即将问世 &#x1f381; 美国发布严重地磁暴预警&#xff…

NTP服务搭建

一、ntpd和ntpdate区别 1.ntpd是自动执行的远程更新本地系统时钟的服务&#xff0c;是平滑同步&#xff1b; 2.ntpdate是手工执行的服务&#xff0c;也就是一般用它执行一次本地时间更新&#xff0c;如果做成半自动&#xff0c;可以写入到crontab自动任务&#xff0c;从而变成…

maya常用快捷键

目录 移动视图 播放控制 连续播放python脚本 移动视图 按住“Alt鼠标中键”快捷键&#xff0c;然后拖动就能自由的移动视图。假如我们只在水平或者垂直方向上移动视图&#xff0c;只需按住“ShiftAlt鼠标中键”&#xff0c;就能在水平&#xff0c;或者垂直方向移动视图了。…

程序员35岁会失业吗?【来自主流AI的回答】

程序员35岁会失业吗&#xff1f; 35岁被认为是程序员职业生涯的分水岭&#xff0c;许多程序员开始担忧自己的职业发展是否会受到年龄的限制。有人担心随着年龄的增长&#xff0c;技术更新换代的速度会使得资深程序员难以跟上&#xff1b;而另一些人则认为&#xff0c;丰富的经…