博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mysql对用户操作加审计功能——初级版
阅读量:5107 次
发布时间:2019-06-13

本文共 1530 字,大约阅读时间需要 5 分钟。

在某些应用里,需要知道谁对表进行了操作,进行了什么操作,所为责任的追朔。在MYSQL里,可以使用触发器实现。

1:创建测试表

mysql> create table A(a int);

Query OK, 0 rows affected (0.01 sec)

2:创建追踪表,里面包含表名称,操作类型,操作时间,操作员,操作机器IP地址

mysql> create table trace(tbname varchar(30),DML_type varchar(10),DML_time datetime,DML_user varchar(30),DML_IP varchar(30));

Query OK, 0 rows affected (0.01 sec)

3:在A表创建触发器

create trigger insert_a after insert on  A1

for each row
insert into trace values ('A1','INSERT',NOW(),substring_index(current_User(),'@',1),substring_index(current_User(),'@',-1));

4:插入测试数据

mysql> insert into A values(1);

Query OK, 1 row affected (0.00 sec)
mysql> select * from trace;
+--------+----------+---------------------+----------+-----------+
| tbname | DML_type | DML_time | DML_user | DML_IP |
+--------+----------+---------------------+----------+-----------+
| A | INSERT | 2010-11-29 17:58:12 | root | localhost |
+--------+----------+---------------------+----------+-----------+
1 row in set (0.00 sec)
mysql> select * from trace;
+--------+----------+---------------------+----------+--------------+
| tbname | DML_type | DML_time | DML_user | DML_IP |
+--------+----------+---------------------+----------+--------------+
| A | INSERT | 2010-11-29 17:58:12 | root | localhost |
| A | INSERT | 2010-11-29 17:58:38 | cpc | 192.168.0.30 |
+--------+----------+---------------------+----------+--------------+
2 rows in set (0.00 sec)
mysql> 

这样,当0.30的机器以CPC用户登录时候,对A作了一个插入的操作,在这个表里就记录得很详细了。

管理好数据库的用户下,查询这个表,就能够追踪到责任人了。

转载于:https://www.cnblogs.com/zuoxingyu/p/3990576.html

你可能感兴趣的文章
【ASP.NET】演绎GridView基本操作事件
查看>>
ubuntu无法解析主机错误与解决的方法
查看>>
尚学堂Java面试题整理
查看>>
MySQL表的四种分区类型
查看>>
[BZOJ 3489] A simple rmq problem 【可持久化树套树】
查看>>
STM32单片机使用注意事项
查看>>
swing入门教程
查看>>
好莱坞十大导演排名及其代表作,你看过多少?
查看>>
Loj #139
查看>>
StringBuffer是字符串缓冲区
查看>>
hihocoder1187 Divisors
查看>>
Azure 托管镜像和非托管镜像对比
查看>>
js window.open 参数设置
查看>>
032. asp.netWeb用户控件之一初识用户控件并为其自定义属性
查看>>
Ubuntu下安装MySQL及简单操作
查看>>
前端监控
查看>>
clipboard.js使用方法
查看>>
移动开发平台-应用之星app制作教程
查看>>
leetcode 459. 重复的子字符串(Repeated Substring Pattern)
查看>>
伪类与超链接
查看>>