一、MySQL日志类型
1、错误:--log--error ---------------------***
host_name.err 2、常规: --general_log
host_name.log general_log 3、慢速查询: --slow_query_log --long_query_time ---------------------***
host_name-slow.log slow_log 4、二进制: --log-bin --expire-logs-days ---------------------***
host_name-bin.000001 5、审计: --audit_log --audit_log_file
audit.log 二、MySQL日志配置
(1)错误日志
[mysqld]
log-error=/data/mysql/mysql.log 查看配置:
show variables like '%log%error%'; 作用:
记录MySQL数据库的一般状态信息和报错信息,是我们对于数据库常规报错处理的常用日志。 (2)一般查询日志
[mysqld]
general_log=on
general_log_file=路径 作用:
记录所有执行成功的SQL语句信息。 查看方式:
show variables like '%gen%'; (3)二进制日志(依赖于SQL层,不依赖于存储引擎)(不记录select,只记录变化)
1、记录已经执行完成的语句和已经完成的事务 2、功能:备份和时间点恢复、主从 3、二进制日志的控制和操作:
a: 开启二进制日志:
vim /etc/my.cnf [mysqld]
log-bin=“datadir”/mysql-bin(文件名前缀)(不写路径默认是datadir下) b: 定义记录方式:
statement: 记录执行的语句 row(推荐):以行模式记录---->记录所有行的变化日志 mixed: c: 设置:
vim /etc/my.cnf [mysqld]
log-bin=“datadir”/mysql-bin
binlog-format=row d: 操作:
1)查看二进制日志:
--查看文件本身:
--操作系统层面查看:
ls -l
重启数据库的时候、执行flush命令的时候会滚动----生成新的文件重新记录
--mysql命令行中查看:
show master status;----查看当前正在使用的二进制日志
show binary logs;----查看所有存在的二进制日志 --查看文件内容:
---- 事件events: 命令的最小发生单元 ---- 事件的位置号position: 每个事件在二进制文件中的相对位置号就是position号 ---- 查看二进制日志内容:
--查看所有内容:
进入目录下:
mysqlbinlog mysql-bin.000003
--截取内容:
1 show master status;
2 show binlog events in 'mysql-bin.000003' ;
3 mysqlbinlog --start-position=120 --stop-position=339 mysql-bin.000003 导出:mysqlbinlog --start-position=120 --stop-position=339 mysql-bin.000003 >/tmp/inc.sql 4 导出的内容可以用来恢复:
1)使用source
2)使用 <
2)删除二进制日志:
在配置文件中加上过期时间: SET GLOBAL expire_logs_days=30;(天)
或者:
PURGE BINARY LOGS BEFORE now() - INTERVAL 3 day;
根据文件名删除日志:
PURGE BINARY LOGS TO 'mysql-bin.0000010'; (4)慢查询日志
1、功能:记录所有条件内的慢的SQL语句
2、作用:定位问题的工具日志 3、控制:
vim /etc/my.cnf [mysqld]
slow_query_log=on ------------------------------开启
slow_query_log_file=/data/slow.log -------------定义文件
long_query_time=10 -----------------------------超过30秒为操作慢的语句
min_examined_row_limit=10-----------------------查询检查返回少于该参数指定行的SQL语句不被记录到慢日志
log_queries_not_using_indexes-------------------不使用索引的慢查询日志是否记录到索引 4、处理:
mysqldumpslow -s c -t 10 /database/mysql/slow-log
输出记录次数最多的10条SQL语句,其中:
-s: 表示按照何种方式排序,c t l r分别为按照记录次数、时间、查询时间、返回的记录数来排序,
ac at al ar为相应的倒叙 -t: 返回前面多少条的数据 -g: 后边可以接正则匹配模式,大小写不敏感

  

MySQL——日志管理的更多相关文章

  1. MySQL日志管理

    MySQL日志管理 2013年09月26日 ⁄ MySQL ⁄ 共 14266字 ⁄ 评论数 ⁄ 被围观 , views+ 一.日志类型: MySQL有几个不同的日志文件,可以帮助你找出mysqld内 ...

  2. MySQL 日志管理详解

    大纲 一.日志分类 二.日志详解 注:MySQL版本,Mysql-5.5.32(不同版本的mysql变量有所不同) 一.日志分类 错误日志 查询日志 慢查询日志 二进制日志 中继日志 事务日志 滚动日 ...

  3. MySQL日志管理、备份、恢复

    目录: 一.MySQL 日志管理 二.数据库备份的重要性与分类 三.常见的备份方法 四.MySQL完全备份 五.数据库完全备份分类 六.MySQL增量备份 七.MySQL数据库增量恢复 八.MySQL ...

  4. MySQL 日志管理及备份与恢复

    MySQL 日志管理及备份与恢复 1.日志管理 2.备份与恢复 1.日志管理: MySQL的默认日志保存位置为/usr/local/mysql/data 日志开启方式有两种:通过配置文件或者是通过命令 ...

  5. MySQL日志管理、备份与恢复

    MySQL日志管理.备份与恢复 目录 MySQL日志管理.备份与恢复 一.MySQL日志管理 1. MySQL日志路径 2. 设置.修改日志路径 3. 查询日志功能是否开启 二.MySQL备份与恢复 ...

  6. 第八章· MySQL日志管理

    一.MySQL日志简介  二.错误日志 1.作用: 记录mysql数据库的一般状态信息及报错信息,是我们对于数据库常规报错处理的常用日志. 2.默认位置: $MYSQL_HOME/data/ 3.开 ...

  7. Centos7.6部署rsyslog+loganalyzer+mysql日志管理服务器

    参考来自: the_script :https://yq.aliyun.com/articles/675198 名山.深处:https://www.cnblogs.com/skychenjiajun/ ...

  8. mysql日志管理#慢日志详解

    MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中 long_q ...

  9. MySQL - 日志管理

    在 MySQL 中,有 4 种不同的日志,分别是错误日志.二进制日志.查询日志和慢查询日志. 错误日志 错误日志记录了 MySQL 启动和停止时以及服务器在运行过程中发生严重错误时的相关信息. 查看错 ...

随机推荐

  1. angular5采坑之旅

    开始尝试angular5,在此记录下踩过的坑以备查询 1.按照element-angular的文档引入后报错 is not part of the compilation output.解决方法--在 ...

  2. 快速上手pandas(下)

      和上文一样,先导入后面会频繁使用到的模块: In [1]: import numpy as np import pandas as pd import matplotlib.pyplot as p ...

  3. 【译】使用 Source Link 提高调试效率

    有多少次你在调试器中追踪一个缺陷,通过代码,观察局部变量的值改变,当你碰壁--不是你所期待的值和你不能进入的方法,因为它来自类库或 .NET 框架本身:或者您设置了一个条件断点,等待检查某个值是如何设 ...

  4. IntelliJ IDEA 中为Maven 配置阿里云镜像源

    idea中查看位置,应该都是一样的这个位置 在此位置下新建一个.xml文件 内容如下: <?xml version="1.0" encoding="UTF-8&qu ...

  5. 服务器put请求获取不到参数

    问题 put请求参数映射成实体类 而参数似乎接受不到,服务器识别为null 解决 在参数前边加上RequestBody @RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请 ...

  6. 【笔记】CART与决策树中的超参数

    CART与决策树中的超参数 先前的决策树其实应该称为CART CART的英文是Classification and regression tree,全称为分类与回归树,其是在给定输入随机变量X条件下输 ...

  7. Sqli-Labs less26-28a

    less-26 从第26关开始,我的sqli-labs就在docker上运行了,因为windows中阿帕奇对空格的转义有问题 通过源码可以看到有很多过滤,包括空格 or和and. 方法: or可以用| ...

  8. 一张图带你搞懂Node事件循环

    说一件重要的事儿:你还没关注公众号[前端印记],更多精彩内容等你探索-- 以下全文7000字,请在你思路清晰.精力充沛的时刻观看.保证你理解后很长时间忘不掉. Node事件循环 Node底层使用的语言 ...

  9. NOIP 模拟 $24\; \rm graph$

    题解 \(by\;zj\varphi\) 首先一个点能否选择的条件是 \(dis_{1,x}+dis_{x,n}=dis_{1,n}\) 正解是计算一条道路上的所有为 \(-1\) 边的选择范围,是个 ...

  10. C#基础知识---迭代器与Foreach语句

    一.Foreach语句简介 在C# 1.0中我们经常使用foreach来遍历一个集合中的元素,然而如果一个集合要支持使用foreach语句来进行遍历,这个集合一般需要IEnumerable或IEnum ...