MYSQL如何查看操作日志详解


Posted in MySQL onMay 30, 2022

前言

mysql操作日志分为文件记录日志和数据库记录日志两种方式,最终效果一样

一、文件记录数据库操作日志

进入mysql查询界面,输入指令:

SHOW VARIABLES LIKE 'gen%';

可以看到general_log的状态是开启还是关闭,以及所属账号的general_log文件存放的目录。

MYSQL如何查看操作日志详解

如果general_log未开启,则先开启,执行命令:

SET GLOBAL general_log=ON;

然后可以到对应的general_log目录下去看执行日志。

二、数据库表记录操作日志

首先执行命令:

SHOW VARIABLES LIKE 'log_output';

MYSQL如何查看操作日志详解

默认是FILE的方式,执行命令,修改成TABLE方式:

SET GLOBAL log_output='TABLE';

然后可以通过命令查询操作日志:

SELECT * FROM mysql.general_log;

MYSQL如何查看操作日志详解

使用数据库表记录操作日志会增加数据的压力,因此建议使用文件记录操作日志:

SET GLOBAL log_output='FILE';
TRUNCATE TABLE mysql.log_output;

附:按时间段查看mysql的操作日志

1、登录mysql安装的那台机器,找到my.cnf.我的my.cnf文件在etc地下,所有执行 cat /etc/my.cnf ,看到如图所示的binlogs存放位置

MYSQL如何查看操作日志详解

2、进入日志所在目录 cd /home/mysql/logs/binlogs, 输入ls -al 查看需要查看的binlogs产生的时间。

MYSQL如何查看操作日志详解

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

MYSQL如何查看操作日志详解

5、如果取下来查询,使用winscp工具,登录到db所在机器,将数据取出来。

6、如果需要过滤,只查询insert,update,delete的语句,可以这样写:

mysqlbinlog --no-defaults --database=raceEnroll  binlogs.000078 |grep update |more

总结

到此这篇关于MYSQL如何查看操作日志的文章就介绍到这了!

MySQL 相关文章推荐
多属性、多分类MySQL模式设计
Apr 05 MySQL
mysql的MVCC多版本并发控制的实现
Apr 14 MySQL
MySQL中in和exists区别详解
Jun 03 MySQL
MySQL库表名大小写的选择
Jun 05 MySQL
MySQL去除重叠时间求时间差和的实现
Aug 23 MySQL
一篇文章看懂MySQL主从复制与读写分离
Nov 07 MySQL
面试提问mysql一张表到底能存多少数据
Mar 13 MySQL
Mysql 8.x 创建用户以及授予权限的操作记录
Apr 18 MySQL
Mysql将字符串按照指定字符分割的正确方法
May 30 MySQL
MySQL聚簇索引和非聚簇索引的区别详情
Jun 14 MySQL
delete in子查询不走索引问题分析
Jul 07 MySQL
sql查询语句之平均分、最高最低分及排序语句
May 30 #MySQL
mysql5.5中文乱码问题解决的有用方法
深入理解MySQL中MVCC与BufferPool缓存机制
MYSQL事务的隔离级别与MVCC
详解Mysql数据库平滑扩容解决高并发和大数据量问题
MySQL中EXPLAIN语句及用法
May 20 #MySQL
Mysql 一主多从的部署
May 20 #MySQL
You might like
我的论坛源代码(五)
2006/10/09 PHP
php操作redis缓存方法分享
2015/06/03 PHP
yii2学习教程之5种内置行为类详解
2017/08/03 PHP
使用XHProf查找PHP性能瓶颈的实例
2017/12/13 PHP
PHP基于phpqrcode类生成二维码的方法详解
2018/03/14 PHP
ThinkPHP3.2框架操作Redis的方法分析
2019/05/05 PHP
PHP连接SQL server数据库测试脚本运行实例
2020/08/24 PHP
仿中关村在线首页弹出式广告插件(jQuery版)
2012/05/03 Javascript
JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
2014/10/16 Javascript
js实现鼠标悬浮给图片加边框的方法
2015/01/30 Javascript
在jQuery中处理XML数据的大致方法
2015/08/14 Javascript
jQuery实时显示鼠标指针位置和键盘ASCII码
2016/03/28 Javascript
bootstrap快速制作后台界面
2016/12/05 Javascript
Bootstrap面板学习使用
2017/02/09 Javascript
Vue 父子组件、组件间通信
2017/03/08 Javascript
Vue无限滑动周选择日期的组件的示例代码
2018/07/18 Javascript
微信小程序实用代码段(收藏版)
2019/12/17 Javascript
原生js实现的金山打字小游戏(实例代码详解)
2020/03/16 Javascript
JavaScript中的函数式编程详解
2020/08/22 Javascript
[08:44]DOTA2发布会群星聚首 我们都是刀塔人
2014/03/21 DOTA
[44:50]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第二局
2016/02/26 DOTA
python使用pyhook监控键盘并实现切换歌曲的功能
2014/07/18 Python
Python算法应用实战之栈详解
2017/02/04 Python
Python批量合并有合并单元格的Excel文件详解
2018/04/05 Python
Ubuntu下使用python读取doc和docx文档的内容方法
2018/05/08 Python
Python中staticmethod和classmethod的作用与区别
2018/10/11 Python
Python Unittest根据不同测试环境跳过用例的方法
2018/12/16 Python
对python调用RPC接口的实例详解
2019/01/03 Python
在python中利用numpy求解多项式以及多项式拟合的方法
2019/07/03 Python
python 利用turtle模块画出没有角的方格
2019/11/23 Python
keras使用Sequence类调用大规模数据集进行训练的实现
2020/06/22 Python
HTML5不支持标签和新增标签详解
2016/06/27 HTML / CSS
2015学校六五普法工作总结
2015/04/22 职场文书
个人原因辞职信模板
2015/05/13 职场文书
再读《皇帝的新衣》的读后感悟!
2019/08/07 职场文书
一文了解MYSQL三大范式和表约束
2022/04/03 MySQL