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 ,如下图所示。

——总结——

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

MariaDB日志审计 帮你揪出内个干坏事儿的小子的更多相关文章

  1. MariaDB开启日志审计功能

    对于MySQL.Percona.MariaDB三家都有自己的审计插件,但是MySQL的审计插件是只有企业版才有的,同时也有很多第三方的的MySQL的审计插件,而Percona和MariaDB都是GPL ...

  2. 揪出Android流氓软件

    揪出Android流氓软件 http://www.icpcw.com/Smartphone/Android/Android/1471/147142_all.htm http://www.william ...

  3. 【经验分享】用adb揪出安卓APP弹窗广告的原形

    背景 相信不少安卓用户中过影子弹窗广告的困扰,这种推广APP本体在后台运行,而且可以在其他APP上弹出覆盖广告,一不小心就会误操作,点击广告或者下载APP,着实令人恶心. 以前的广告软件只在通知栏会推 ...

  4. python的paramiko源码修改了一下,写了个操作命令的日志审计 bug修改

    python的paramiko源码修改了一下,写了个操作命令的日志审计,但是记录的日志中也将backspace删除键记录成^H这个了,于是改了一下代码,用字符串的特性. 字符串具有列表的特性 > ...

  5. 揪出“凶手”——实战WinDbg分析电脑蓝屏原因

    http://www.appinn.com/blue-screen-search-code/ 蓝屏代码查询器 – 找出蓝屏的元凶 11 文章标签: windows / 系统 / 蓝屏. 蓝屏代码查询器 ...

  6. 图解ARP协议(三)ARP防御篇-如何揪出“内鬼”并“优雅的还手”

    一.ARP防御概述 通过之前的文章,我们已经了解了ARP攻击的危害,黑客采用ARP软件进行扫描并发送欺骗应答,同处一个局域网的普通用户就可能遭受断网攻击.流量被限.账号被窃的危险.由于攻击门槛非常低, ...

  7. 转载:揪出MySQL磁盘消耗迅猛的真凶

    揪出MySQL磁盘消耗迅猛的真凶 背景 Part1:写在最前 当一张单表10亿数据量的表放在你面前,你将面临着什么? Part2:背景介绍 为了提升数据库资源利用率,一个实例中,在不互相影响,保证业务 ...

  8. [置顶] kubernetes1.7新特性:日志审计变化

    背景概念 出于安全方面的考虑,Kubernetes提供了日志审计记录,用来记录不同普通用户.管理员和系统中各个组件的日志信息. Kubernetes日志审计是Kube-apiserver组件的一部分功 ...

  9. Web安全开发指南--异常错误处理与日志审计

    1.异常错误处理与日志审计 5.1.日志审计系统安全规则 1 日志系统能够记录特定事件的执行结果(比如 成功或失败). 确保日志系统包含如下重要日志信息: 1.  日志发生的时间: 2.  事件的严重 ...

随机推荐

  1. android apk 的root 权限和USB adb 权限的差别

    USB adb 权限是指,当adb 连接手机时,手机中的守护进程adbd 的权限为root 权限,从而它的子进程也具有root 权限.通常假设adb shell 看到是: Android 4.0 以后 ...

  2. canvas绘制多边形

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. F02 金融学第二定律 资金的积聚

    美国南北战争,北方取胜的关键在于发行了债券,从而积聚了资金,提升了北方军队战斗力. 纽约的逆袭,得益于伊利运河的修建,而伊利运河的建造需要的资金,全靠债券发行积聚的资金. 聚积起来的资金,往往决定了重 ...

  4. Javaweb 项目内所有页面都是404问题

    这两天出现的问题:项目内所有的页面都是404 问题原因:Tomcat在启动时出现了问题导致服务器根本没启动起来 问题的根本原因: 由于之前用到了拦截器,然后拦截器没用了被我删掉了,但是web.xml文 ...

  5. win10 系统输入法与 idea的 ctr+shift+f 快捷键冲突,解决办法

    我认为首先是输入法简繁热键的冲突,(当然也有人认为是qq的热键冲突,) 解决办法: 1.首先打开搜狗输入法的设置(当然有的可能不是搜狗输入法,其他的输入法设置步骤都是大同小异) 看到了吗,就是这个热键 ...

  6. NodeJs学习笔记(三)

    最近在用sails框架写移动后台,马上就过年了,打算总结一下.   1.资源      node官方网站: www.nodejs.org      sails官方网站:www.sailsjs.org ...

  7. SpringMVC框架(二)注解 (转)

    原文地址:http://www.cnblogs.com/yjq520/p/6734422.html 1.@Controller @Controller 用于标记在一个类上,使用它标记的类就是一个Spr ...

  8. Eclipse 问题整理

    新建servlet报错,提示找不到javax.servlet包 解决的方法:把tomcat安装包里的lib目录下的servlet-api.jar拷贝一份到工程文件夹下的web目录下的WEB-INF目录 ...

  9. iOS OC环信实时语音切换听筒免提听不到声音报错:AVAudioSessionErrorCodeBadParam

    出现这个报错:AVAudioSessionErrorCodeBadParam 先看看你的问题是不是在切换听筒免提的时候 听不到声音了, 不是的可以继续搜索去了   问题在这里 把圈住的那个货换成这个就 ...

  10. 每周.NET前沿技术文章摘要(2017-06-07)

    汇总国外.NET社区相关文章,覆盖.NET ,ASP.NET等内容: .NET .NET Core and .NET Framework Working Together, Or: The Magic ...