mysql 几种日志
mysql 5.5 有以下几种日志:
中继日志( relay log)
认情况下,所有日志创建于mysqld数据目录中。通过刷新日志,你可以强制
mysqld来关闭和重新打开日志文件(或者在某些情况下切换到一个新的日志)。当你执行一个FLUSH LOGS语句或执行mysqladmin
flush-logs或mysqladmin refresh时,出现日志刷新
than.
查询日志 general query log
query log写入日志是在客户端执行命令,并且释放锁之前,写入日志
than.
long_query_time 指定时间的sql statement , min_examined_row_limit最小检查行数限制
才会被检查,语句被写入slow log 是在语句被执行后,并且释放锁之前,默认情况下,慢查询日志是被关闭的
long_query_time 的值被设置为0-10之间,默认值是10.
:系统管理语句
就在慢查询日志中. 系统管理语句包括 ALTER TABLE, ANALYZE
TABLE, CHECK TABLE, CREATE
INDEX, DROP INDEX, OPTIMIZE
TABLE, and REPAIR TABLE.
log,从而导致slow log文件的大小不断增加,故DBA可通过此参数进行配置。
a
replication slave does not write replicated queries to the slow query log. To change this, use thelog_slow_slave_statements
system
variable.
之前开启慢查询
eg:
mysqldumpslow -s c -t 20 host-slow.log
mysqldumpslow -t 10 -s t -g “left join” host-slow.log这个是按照时间返回前10条里面含有左连接的sql语句。
显示指定,mysql会忽略正对其他书库执行query,而仅仅记录正对指定数据库执行的query
binlog-do-db=db_name 指定保存更新到 binlog 的数据库
参数 有一个共同的概念,参数db_name 不是指query
语句更新的数据所在的数据库,而是执行query的时候,当前所处的数据库。不论更新那个数据库的数据,mysql仅仅比较当前连接所处的数据库与参数设置的数据库名。而不会分析query语句所更新的数据库所在数据库。
sync_binlog:
Log-slave-update该参数在搭建master=>slave=>slave的架构时,需要配置。
log-bin = /var/log/mysql/mysql-bin.log --指定二进制日志的名称
由于binlog以是binary方式存取,不能直接查看,需要用mysql提供的mysqlbinlog工具查看
show binlog events \G只能查看第一个日志的events
show binlog events in 'mysql-bin.000003';可以查看具体位置日志的events
2. mysql> purge master logs to 'mysq-bin.******' 命令可以删除指定编号前的所有日志
4. 在my.cnf 中指定日志过期 expire_logs-days=n
Binlog_format参数也特别重要。从mysql5.1版本开始引入这个参数,该参数可以设置的值有STATEMENT\、ROW、MIXED;
(1)STATEMENT格式和之前的mysql版本一样,二进制日志文件记录的是日志的逻辑失SQL语句。
(2)在ROW格式下,二进制日志记录的不再是简单的SQL语句了,而是记录表的行更改情况,此时可以将InnoDB的事务隔离基本设为READ COMMITTED,以获得更好的并发性。
(3)MIXED格式下,mysql默认采用的STATEMENT格式进行二进制日志文件的记录,但是在一些情况下会使用ROW格式,可能的情况包括:
1)表的存储引擎为NDB,这时对于表的DML操作都会以ROW格式记录
2)使用了UUID()、USER()、CURRENT_USER()、FOUND_ROWS()、ROW_COUNT()等不确定函数
3)使用了INSERT DELAY语句
4)使用了用户定义函数
5)使用了临时表
mysql> show variables like "%binlog_format%"
relay log)
中继日志也是二进制日志,用来给slave 库恢复
6 innodb 在线redo 日志 innodb redo log
innodb 是一个事物安全的存储引擎,其事物安全性主要通过在线的redo日志和记录在表空间的undo信息来保证。redo
日志中记录了innodb所做的所有物理变更和事物信息。innodb的redo日志同样默认存放在数据目录下面。可以通过innodb_log_group_home_dir
来更改日志的存放位置。
总结:
日志直接性能损耗数据库系统中最为昂贵的IO 资源,在默认情况下,系统仅打开错误日志,关闭了其他所有日志,以达到尽可能减少IO 损耗提高系统性能的目的。
测试环境中,为了定位某些功能具体使用了哪些SQL 语句的时候,才会在短时间段内打开该日志来做相应的分析。所以,在MySQL 系统中,会对性能产生影响的MySQL日志(不包括各存储引擎自己的日志)主要是Binlog 。
mysql 几种日志的更多相关文章
- Mysql三种日志(binlog,redolog,undolog)的作用和区别
Mysql有三种很重要的日志也是面试经常涉及到的考点,分别是 binlog .redo log和undo log, 这里面binlog 是server层实现的日志,而redo log 和undo lo ...
- MySQL 4种日志
- mysql中的日志
关键词:mysql日志,mysql四种日志 一.mysql日志的种类 (1)一般来说,日志有四种,分别为: 1.错误日志:log-err (记录启动,运行,停止mysql时出现的信息) 2.二进制日志 ...
- mysql中的几种日志了解
前言 MySQL中有以下日志文件,分别是: 1:重做日志(redo log) 2:回滚日志(undo log) 3:二进制日志(binlog) 4:错误日志(errorlog) 5:慢查询日志(slo ...
- mysql中有多少种日志
Mysql的日志包括如下几种日志: 错误日志 普通查询日志 二进制日志 慢查询日志 Mysql版本 此文档测试mysql的版本为 mysql -V 错误日志 error log Mysql错误日志主要 ...
- MySQL不会丢失数据的秘密,就藏在它的 7种日志里
本文收录在 GitHub 地址 https://github.com/chengxy-nds/Springboot-Notebook 进入正题前先简单看看MySQL的逻辑架构,相信我用的着. MySQ ...
- mysql常见的5种日志
点赞再看,养成习惯,微信搜索「小大白日志」关注这个搬砖人. 文章不定期同步公众号,还有各种一线大厂面试原题.我的学习系列笔记. 错误日志(errorlog) 用来记录mysqlId的错误信息,如数据库 ...
- MySQL慢查询日志总结
慢查询日志概念 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志 ...
- 解说mysql之binlog日志以及利用binlog日志恢复数据
众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 废 ...
随机推荐
- 全网搜歌神器Listen1 Mac中文版
listen1 for mac中文版是mac上一款强大的全网搜歌音乐播放器,支持网易云音乐.QQ音乐.虾米音乐.酷狗音乐以及酷我音乐等网站的歌曲搜索播放功能,拥有创建歌单.随心播放.歌曲收藏.快速搜索 ...
- Linux退出状态码
命令成功结束 一般性未知错误 不适合的shell命令 命令不可执行 没找到命令 无效的退出参数 +x 与Linux信号x相关的严重错误 通过Ctrl+C终止的命令 正常范围之外的退出状态码
- SSH 安全加固
检查密码重用是否受限制 | 身份鉴别 说明:强制用户不重用最近使用的密码,降低密码猜测攻击风险 描述:设置较低的Max AuthTrimes参数将降低SSH服务器被暴力攻击成功的风险. 加固建议:在/ ...
- SSM学习(一)Mybatis
Mybatis Notes Mybatis First 创建Maven项目 配置依赖 <dependencies> <dependency> <groupId>ju ...
- vue3.0使用axios报错问题记录
vue-cli3.0使用axios的时候出现错误,记录一下 报错信息: Uncaught TypeError: Cannot set property $axios of #<Vue> w ...
- mongodb修改和删除操作
修改数据修改里面还有查询条件.你要该谁,要告诉 mongo.查找名字叫做小明的,把年龄更改为 16 岁:1 db.student.update({"name":"小明&q ...
- Python连接redis时要注意的点
一.一般连接redis情况 from redis import Redis # 实例化redis对象 rdb = Redis(host='localhost', port=6379, db=0) rd ...
- 20165306 Exp2 后门原理与实践
20165306 Exp2 后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启动 (3)使用MSF mete ...
- Hadoop之运行模式
Hadoop运行模式包括:本地模式.伪分布式以及完全分布式模式. 一.本地运行模式 1.官方Grep案例 1)在hadoop-2.7.2目录下创建一个 input 文件夹 [hadoop@hadoop ...
- LInux 些许知识
1.Linux下去掉^M的方法 ①dos2unix filename ②sed -i 's/^M//g' filename #注意:^M的输入方式是 Ctrl + v ,然后Ctrl + M 2.so ...