八股-MySQl日志
创始人
2024-11-14 16:05:12
0
MySQL日志种类
种类特点用途
二进制日志(binlog || binary log)重要!记录对数据库进行更改的所有操作(表结构变化、表数据修改)
事务日志(redo log 或 undo log)重要!重做日志、回滚日志
错误日志(error log)记录MySQL启动、停止、关闭股哦成
一般查询日志(general query log)记录所有客户端的SQL语句,体量非常大,默认关闭,建议关闭
慢查询日志(slow query log)重要!解决SQL慢查询时用来找到慢查询的语句
中继日志(relay log)复制过程中产生的日志,只要针对从库
DDL日志(metadata log)DDL执行的元数据操作
慢查询日志以及慢查询的优化
命令解释
show variables like "slow_query_log";查看慢查询日志是否打开,on/off
set global slow_query_log = ON;将慢查询日志打开
set global long_query_time = 1;设置被认为慢查询的时间限制 (秒)
show global status like "Slow_queries";查看慢查询的语句个数
二进制日志(binlog)
命令解释
show binary logs显示所有二进制列表
show binlog events in "JIAHONGRUI-bin.000026" limit 10;显示日志具体内容
show variables like 'binlog_format';显示binlog的格式
binlog的格式模式
模式特点、区别
Statement模式每一条修改数据库数据的SQL都会被记录(insert、update、delete)日志文件小,对磁盘I/O压力小
Row模式每一行的具体变化都会被记录在日志中准确性比Statement高
Mixed模式上面两种模式的混合,会默认采取其中一种,在特殊情况会使用另外一种
binlog在主从复制中的做作用(同样的原理也可以用来做数据恢复)
步骤
主库将数据库中的数据变化写入到binlog
从库连接主库
从库创建一个I/O线程向主库请求更新binlog
主库创建一个binlog dump线程来发送binlog,从库中的I/O线程负责接收
从库的I/O线程接收binlog写到relay log中
从库的SQL线程读取relay log同步数据本地(也就是在执行一边SQL)

注意事项:

binlog只在事务提交的时候才会刷盘,注意参数内存的binlog_cache块,磁盘上的binlog文件,不可差分性,binlog_cache_size控制binlog_cache的大小,sync_binlog控制刷盘时机(0不要求听从系统安排,1每个事务都要刷盘,N每N个事务刷盘一次)

以下三种情况会导致binlog重新生成:binlog文件超过max_binlog_size的阈值,MySQL服务重启或停止,使用flush_logs命令

innoDB引擎下的redo_log(保证数据库的持久性和一致性)
redo_log的刷盘时机
事务提交:将log_buffer里面的redo_log刷到磁盘
log_buffer空间不足:一般占到了log_buffer总内存的一半
事务日志缓冲区满(了解)
CheckPoint:innoDB定期执行
后台线程刷新
正常的关闭服务器
redo_log丢失数据的情况
redo_log写入log_buffer但是还没有写入page_cache,此时数据库崩溃,就会出现数据丢失
redo_log已经写入page_cache,但是还没有刷新到磁盘,此时操作系统崩溃,就可能会出现数据丢失
undo_log保证事务原子性

undo_log属于逻辑日志,记录SQL语句,比如事务执行Delete语句,undo_log会相应的记录一条insert语句

总结
总结关键词
binlog日志数据恢复、主从复制、刷盘时机
redo_log数据一致性和持久性、刷盘时机、丢失数据的情况
undo_log原子性,反向记录

相关内容

热门资讯

三分钟了解(王子棋牌)外挂辅助... 您好,王子棋牌这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款游戏...
十分钟了解(新蛮王)外挂透明挂... 十分钟了解(新蛮王)外挂透明挂辅助器(透视)新版2025教程(2021已更新)(哔哩哔哩)是一款可以...
第五分钟了解(庆幸棋牌)外挂辅... 您好:庆幸棋牌这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,...
第一分钟了解(aapoker系... 第一分钟了解(aapoker系统)外挂透明挂辅助安装(辅助挂)可靠教程(2020已更新)(哔哩哔哩)...
第一分钟了解(大玩家十三水)外... 第一分钟了解(大玩家十三水)外挂透明挂辅助app(辅助挂)解密教程(2023已更新)(哔哩哔哩)是一...
第八分钟了解(governor... 您好:governorofpoker3辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌...
第四分钟了解(大连打滚子)外挂... 第四分钟了解(大连打滚子)外挂辅助软件(透视)大神讲解(2026已更新)(哔哩哔哩)是一款可以让一直...
第1分钟了解(微扑克软件)外挂... 您好,微扑克软件这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款游...
第3分钟了解(烽火互动)外挂透... 第3分钟了解(烽火互动)外挂透明挂辅助器(辅助挂)总结教程(2024已更新)(哔哩哔哩);1、完成烽...
第一分钟了解(哈灵麻将)外挂透... 第一分钟了解(哈灵麻将)外挂透明挂辅助挂(透视)AI教程(2020已更新)(哔哩哔哩);哈灵麻将AI...