MYSQL如何查看操作日志详解
目录
- 前言
- 一、文件记录数据库操作日志
- 二、数据库表记录操作日志
- 附:按时间段查看mysql的操作日志
- 总结
前言 mysql操作日志分为文件记录日志和数据库记录日志两种方式,最终效果一样
一、文件记录数据库操作日志 进入mysql查询界面,输入指令:
SHOW VARIABLES LIKE 'gen%';
可以看到general_log的状态是开启还是关闭,以及所属账号的general_log文件存放的目录。
文章图片
如果general_log未开启,则先开启,执行命令:
SET GLOBAL general_log=ON;
然后可以到对应的general_log目录下去看执行日志。
二、数据库表记录操作日志 首先执行命令:
SHOW VARIABLES LIKE 'log_output';
文章图片
默认是FILE的方式,执行命令,修改成TABLE方式:
SET GLOBAL log_output='TABLE';
然后可以通过命令查询操作日志:
SELECT * FROM mysql.general_log;
文章图片
使用数据库表记录操作日志会增加数据的压力,因此建议使用文件记录操作日志:
SET GLOBAL log_output='FILE'; TRUNCATE TABLE mysql.log_output;
附:按时间段查看mysql的操作日志 1、登录mysql安装的那台机器,找到my.cnf.我的my.cnf文件在etc地下,所有执行 cat /etc/my.cnf ,看到如图所示的binlogs存放位置
文章图片
2、进入日志所在目录 cd /home/mysql/logs/binlogs, 输入ls -al 查看需要查看的binlogs产生的时间。
文章图片
3、如果需要查询2017-09-17 07:21:09到2017-09-19 07:59:50 数据库为geeRunner 的操作日志,输入如下命令将数据写入到一个备用的txt即可。
mysqlbinlog --no-defaults --database=geeRunner --start-datetime="2017-09-17 07:21:09" --stop-datetime="2017-09-19 07:59:50" binlogs.000080 > sanjiaomao.txt
4、如果本地查询,输入命令
mysqlbinlog --no-defaults --database=geeRunner --start-datetime="2017-09-17 07:21:09" --stop-datetime="2017-09-19 07:59:50" binlogs.000080 | more
文章图片
5、如果取下来查询,使用winscp工具,登录到db所在机器,将数据取出来。
6、如果需要过滤,只查询insert,update,delete的语句,可以这样写:
mysqlbinlog --no-defaults --database=raceEnrollbinlogs.000078 |grep update |more
【MYSQL如何查看操作日志详解】
总结 到此这篇关于MYSQL如何查看操作日志的文章就介绍到这了,更多相关MYSQL查看操作日志内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- liunx|liunx 服务器下面安装mysql8.0
- 在SEO过程中,如何避免网站中出现软404
- #yyds干货盘点#Linux基础命令及操作-查看文本
- win7系统定时断网问题如何处理?
- 办公室的win7系统如何设置电脑ip地址?
- 笔记本显卡温度相关信息的查看办法
- 如何处理win7系统打开不了光驱的问题?
- 装机高手教你如何处理U盘插电脑没反应
- 装机高手教你U盘格式化后数据如何恢复
- 装机高手教你如何处理电脑无法识别U盘