Mysql 日志
目录
0 课程视频
1 错误日志 -> 默认开启
1.1 查看变量 show variables like %log_error%;
1.2 文件位置 /var/log -> mysqld.log
1.3 指令语法
2 二进制日志 -> 修改数据和数据库结构的日志
2.1 记录原则
2.1.1 记录 数据库创建语句 和 增删改查
2.1.2 不记录 不影响数据的 select / show
2.2 作用
2.2.1 灾难数据恢复
2.2.2 主从复制 8版本默认开启
2.2.3 查看变量 show variables like '%log_bin%';
2.3 日志格式
2.3.1 statement -> sql语句
2.3.2 row -> 每一行的数据变更前后数据 ->默认
2.3.3 混合 statement 和 row
2.3.4 查看日志格式 show varables like '%binlog_format%' ;
2.4 示例演示 row ->查看日志
2.4.1 语句: mysqlbinlog -v 日志名 -> -v 指重构sql语句
2.4.2 mysqlbinlog -v binlog.000002 ;
2.5 日志删除
2.5.1 指令语句 删除
2.5.2 设置日志过期时间 -> show variables like '%binlog_expire %' ;
3 查询日志 -> 增删改查 都记录 -> 默认不开启
3.1 命令语法
3.1.1 查看系统变量 -> show variables like '%generral%' ;
3.1.2 开启 查询日志 -> 修改配置文件 /etc/my.cnf -> 重启mysql
4 慢查询日志 -> 执行速率低的日志 -> 默认10秒 最小0秒
4.1 配置 -> 修改配置文件 /etc/my.cnf -> 重启mysql
4.2 默认 不记录的项目
4.2.1 不记录 管理语句 -> 配置文件 log_slow_admin_statements = 1
4.2.2 不记录 非索引查询语句 -> 配置文件 log_queries_not_using_indexes = 1
0 课程视频
https://www.bilibili.com/video/BV1Kr4y1i7ru?p=154&spm_id_from=pageDriver&vd_source=ff8b7f852278821525f11666b36f180a
1 错误日志 -> 默认开启
1.1 查看变量 show variables like %log_error%;
1.2 文件位置 /var/log -> mysqld.log
1.3 指令语法
tail -50 /var/log/mysqld.log ; // 查看50行日志
tail -f /var/log/mysqld.log ; // 终端实时显示错误日志 -> 一直光标闪
2 二进制日志 -> 修改数据和数据库结构的日志
2.1 记录原则
2.1.1 记录 数据库创建语句 和 增删改查
2.1.2 不记录 不影响数据的 select / show
2.2 作用
2.2.1 灾难数据恢复
2.2.2 主从复制 8版本默认开启
2.2.3 查看变量 show variables like '%log_bin%';
2.3 日志格式
2.3.1 statement -> sql语句
2.3.2 row -> 每一行的数据变更前后数据 ->默认
2.3.3 混合 statement 和 row
2.3.4 查看日志格式 show varables like '%binlog_format%' ;
2.4 示例演示 row ->查看日志
2.4.1 语句: mysqlbinlog -v 日志名 -> -v 指重构sql语句
2.4.2 mysqlbinlog -v binlog.000002 ;
2.5 日志删除
2.5.1 指令语句 删除
2.5.2 设置日志过期时间 -> show variables like '%binlog_expire %' ;
3 查询日志 -> 增删改查 都记录 -> 默认不开启
3.1 命令语法
3.1.1 查看系统变量 -> show variables like '%generral%' ;
3.1.2 开启 查询日志 -> 修改配置文件 /etc/my.cnf -> 重启mysql
general_log = 1; # 开启
general_log_file = host.log # 设置日记文件名
4 慢查询日志 -> 执行速率低的日志 -> 默认10秒 最小0秒
4.1 配置 -> 修改配置文件 /etc/my.cnf -> 重启mysql
vim /etc/my.cnf
slow_query_log = 1 # 开启慢查询
long_query_time = 2 # 超过2秒的是慢查询 自定义
systemctl restart msyql # 重启mysql