general_log作用:
一般不会开启开功能,因为log的量会非常庞大。但个别情况下可能会临时的开一会儿general log以供调试
使用。
binlog二进制日志作用:
备份恢复,主从搭建,分析大事务。
2 配置
注意:MySQL默认是没有开启二进制日志的。
基础参数查看:
开关:
[(none)]>select @@log_bin;
日志路径及名字
[(none)]>select @@log_bin_basename;
服务ID号:
[(none)]>select @@server_id;
二进制日志格式:
[(none)]>select @@binlog_format;
双一标准之二:
[(none)]>select @@sync_binlog;
mysql> show variables like ‘%binlog_format%’;
参数介绍如下
+———————-+———-+
| Variable_name | Value |
+———————-+———-+
| binlog_format | ROW |
+———————-+———-+
ROW/Statement/mixed
ROW:模式只能影响到DML insert update delete 格式 DDL只记录Statement,记录数据行的变化,如果修改了9条数据行他就记录9条日志,日志量很大。
Statement:是语句模式,执行的语句是什么样子他就记录什么,如果语句当中有随机数,进行数据恢复有可能导致结果不一致。
mixed:由系统自动判断用什么模式,大几率是Statement
show variables like ‘%sync_binlog%’;binlog刷新到磁盘的策略
0 1 > 1
1代表每次事务提交都要刷新bin_log,由事务commit来控制
0每次事务提交都刷新到内存缓冲区当中,由内存缓冲区进行判断什么时候刷新到磁盘当中
>1每十次事务提交一次binlog日志,一组一组的。
查看binlog日志的大小
show binary logs;
查看MySQL正在使用的binlog日志
show master status ;
查看binlog记录了那些事件
show binlog events in ‘mysql-bin.000003’;
Log_name:binlog文件名 <br /> Pos:开始的position号 ***** <br /> Event_type:事件类型**binlog文件内容详细查看 **<br />** 基于Position号进行日志截取 **<br /> Format_desc:格式描述,每一个日志文件的第一个事件,多用户没有意义,MySQL识别 binlog必要信息 <br /> Server_id:mysql服务号标识 <br /> End_log_pos:事件的结束位置号 ***** <br /> Info:事件内容***** <br />**binlog文件内容详细查看**<br /> mysqlbinlog /data/mysql/mysql-bin.000006 <br />mysqlbinlog <br />--start-datetime ##开始日期<br />--stop-datetime ## 结束日期<br />--start-position ##开始position号<br />--stop-position ##结束position号<br />--base64-output=decode-rows -vv ##显示详细信息
