Part1:谁干的?

做DBA的经常会遇到,一些表被误操作了,被truncate、被delete、甚至被drop。引起这方面的原因大多数都是因为人为+权限问题导致的。一些公共账户,例如ceshi账户,所有的人都可以进行操作,由这些公共账户引起的误操作,你在办公室大喊:谁把我的表删了?8成不会有人回应你。

审计日志功能,该技术主要在MariaDB10.0/10.1和Percona 5.6版本里实现。该功能在MySQL5.6/5.7企业版里也支持。本文主要介绍和演示MariaDB10.1中如何开启审计日志,帮你揪出内个干坏事儿的小子~

 

Part2:构建环境

本文中,我们采用的MariaDB版本为10.1.16,当然用其他版本的MariaDB亦可,如何安装MariaDB数据库环境本文不做赘述,如果需要的可移步:

http://suifu.blog.51cto.com/9167728/1830575

下面介绍在MariaDB10.1.16中,安装审计Audit Plugin插件的方法

在MariaDB数据库中执行如下命令:

NSTALL PLUGIN server_audit SONAME 'server_audit.so';

具体代码如下图所示。

Warning:警告

这里值得注意的是,server_audit.so名字不是随意取的,因为它会读/usr/local/mariadb/lib/plugin目录下的文件,如果说将其给明为mariadb-audit.so,就会抛出如下错误,因为plugin目录下没有该文件。

Part2:参数解释

server_audit_events='CONNECT,QUERY,TABLE'表示惠济路链接进来的IP、用户名和表的DML/DDL/DCL操作。

server_audit_logging=ON 表示开启审计日志服务。

server_audit_excl_users=helei 表示只记录helei用户的所有操作。

server_audit_file_rotate_size=1G 表示超过定义的1GB,日志会自动轮训。

server_audit_file_path=server_audit.log 表示审计日志的路径。

更多相关参数可以利用show variables like 'server_audit%';来查看,如下图所示。

Part3:开启相关参数

server_audit_events、server_audit_logging等参数均为全局动态参数,可以直接在数据库更改,命令如下:

set global server_audit_events='CONNECT,QUERY,TABLE';

set global server_audit_logging=ON;

Part4:检查效果

在开启相关参数后,无需重启数据库,可直接看到相关的操作已经被记录到server_audit.log ,如下图所示。

——总结——

自从有了审计功能,妈妈再也不用担心我找不到“坏人”啦。由于笔者的水平有限,编写时间也很仓促,文中难免会出现一些错误或者不准确的地方,不妥之处恳请读者批评指正。

转载于:https://www.cnblogs.com/conanwang/p/5919800.html

MariaDB日志审计 帮你揪出内个干坏事儿的小子相关推荐

  1. MySQL日志审计 帮你揪出内个干坏事儿的小子

    Part1:写在最前 MySQL本身并不像MariaDB和Percona一样提供审计功能,但如果我们想对数据库进行审计,去看是谁把我的数据库数据给删了,该怎么办呢?我们主要利用init-connect ...

  2. “跨国视频造假窝点”曝光!这个大规模数据集,帮AI揪出99%换脸视频

    乾明 郭一璞 发自 凹非寺  量子位 报道 | 公众号 QbitAI 上回说到,奥巴马deepfake怼川普,斯嘉丽怒斥网友假视频. deepfake,视频造假神器,把一个人的脸庞,转移到另一个的身上 ...

  3. 开发者被要求向破解者道歉,竟揪出“阿里云假员工”,网友:这人有前科

    文末包邮送3本技术书! 浩楠 鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 咄咄怪事,起于知乎. 「我是如何被逼到向我软件的破解者道歉的?」 没错,就是这样一则愤怒和无奈溢出屏幕的&qu ...

  4. SLS日志审计:最新技术总结

    本文概述了过去一年 SLS 日志审计的技术发展. SLS 日志审计介绍 什么是日志审计 日志审计服务是阿里云日志服务 SLS 平台下的一款应用,它在继承了日志服务 SLS 的全部功能以外,还有强大的多 ...

  5. 装mysql最后一步没响应_每天14点遭遇惊魂时刻,如何一步一步揪出真凶?

    " 笔者所在的公司有一款大 DAU(日活)的休闲游戏.这款游戏的后端架构很简单,可以简单理解为通讯-逻辑-存储三层结构.其中存储层大量使用了 Redis 和 MySQL. 图片来自 Pexe ...

  6. oracle如何查看某个时间段调用的函数的异常信息_每天14点遭遇惊魂时刻,如何一步一步揪出真凶?...

    笔者所在的公司有一款大 DAU(日活)的休闲游戏.这款游戏的后端架构很简单,可以简单理解为通讯-逻辑-存储三层结构.其中存储层大量使用了 Redis 和 MySQL. 图片来自 Pexels 随着存量 ...

  7. 开源日志审计系统_一文掌握mysql数据库审计特点、实现方案及审计插件部署教程...

    概述 数据库审计(简称DBAudit)能够实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库遭受到的风险行为进行告警,对攻击行为进行阻断.它通过对用户访问数据库行为的记录.分 ...

  8. 使用日志审计查看MaxCompute执行过哪些操作

    简介: MaxCompute完整地记录用户的各项操作行为,会自动将操作日志实时投递到ActionTrail中,ActionTrail针对作业(Instance).表(Table).函数(Functio ...

  9. 【项目记录】Linux日志审计系统

    项目时期 大学 项目详情 第一章 作品概述 本作品实现了对客户端的Linux系统日志审计以及警报.使用者只需预留用于警报的邮箱,在客户端部署软件,即可实现对Linux系统日志的转发分析以及通过客户预留 ...

最新文章

  1. SEO系列二:何为用户体验?如何做好用户体验?
  2. 利用libevent 和线程池实现高并发服务器的设计
  3. 2011年三八妇女节搜索引擎LOGO设计欣赏
  4. pycharm python 模板配置_windows下pycharm安装、创建文件、配置默认模板
  5. 【重磅快讯】T11 2019数据智能技术峰会举办,AI将成为行业颠覆者
  6. SprinBoot 集成 Flowable/Activiti工作流引擎
  7. 解析数据访问层操作数据库的方式
  8. new和delete创建和销毁二维数组
  9. There has been an error processing your request[magento1.6]
  10. springcloud配置负载均衡 及方式_Springcloud-Ribbon负载均衡NODO
  11. paip.C#.NET图形按钮制做
  12. linux软件索引损坏,linux – 突然大量文件系统损坏的原因? (“root inode不是目录”)...
  13. 系统集成项目管理工程师(软考中级)—— 第七章 知识产权 笔记分享
  14. 正倒向随机微分方程(FBSDE)解对初始值的依赖性
  15. 利用IV分析仪测量二极管的伏安特性的测量方法及步骤
  16. cdr软件百度百科_Cdr是什么软件
  17. Topic 12 临床预测模型之列线表 (Nomogram)
  18. 拓扑容差如何修改_如何在CAD中通过设置容差参数对多段线进行自动修复重构
  19. Windows每个版本自带的.NET版本,与支持的最高.NET版本
  20. 杨家海 清华大学 研究员,博导

热门文章

  1. typescript 判断异步执行已经结束_vue进阶系列——用typescript玩转vue和vuex
  2. 中国慕课java_回收的吸油毡通常应放置一边以备再次使用。
  3. java 创建日程到期提醒_Java 多线程与高并发,基础概念回顾
  4. python库下载哪些_Windows 下各种Python库的下载与安装
  5. qtableview与sqlite使用显示科学计算_使用MATLAB Profiler提升程序运行的效率
  6. 剑三游戏总是显示服务器繁忙,剑网3怀旧服:服务器终究低估了老玩家的热情...
  7. java xml 表达式语言_中级Java开发工程师笔试题
  8. php get 分页,PHP_codeigniter实现get分页的方法,本文实例讲述了codeigniter实现ge - phpStudy...
  9. java基础语法的书_第一章--Java基础语法
  10. javascript Arrow functions(箭头函数)