1.错误日志(log_error)
用来记录启动\关闭\日常运行过程中,状态信息,警告,错误。默认是开启的
1.1 错误日志配置
1 默认就是开启的: /数据路径下/hostname.err2 查看错误日志位置:select@@log_error;3
4 手工指定位置:5 vim /etc/my.cnf6 log_error=/var/log/mysql.log7 log_timestamps=system8 重启生效9
10
11 show variables like ‘log_error‘;
1.2 日志内容查看
1 主要关注[ERROR],看上下文
2. binlog(binary logs):二进制日志
2.1 作用
1 备份恢复必须依赖二进制日志2 主从环境必须依赖二进制日志3 5.x以上版本默认都没有开启二进制日志,需要手动配置来启用
2.2 binlog配置 (5.7必须加server_id)
1 注意:MySQL默认是没有开启二进制日志的。2
3 基础参数查看:4 开关状态: select@@log_bin;5 日志路径及名字:select@@log_bin_basename;6 服务ID号: select@@server_id;7 二进制日志格式: select@@binlog_format;8 双一标准之二: select @@sync_binlog;
2.2.1 创建日志目录
1 mkdir /data/binlog2 chown -R mysql.mysql /data/binlog
2.2.2 修改配置文件
1 vim /etc/my.cnf2
3
4 server_id=6 (取值1-65535) 5.6中,单机可以不需要此参数5
6 # log_bin有两种配置方式,如下讲解7 log_bin=1只打开二进制日志开关,文件存放在默认的位置8 log_bin=/data/binlog/mysql-bin 开启二进制日志,按照路径生成二进制文件,mysql-bin为指定的文件名前缀。9 指定路径后会在其下额外生成个mysql-bin.index文件,其内存放的是二进制文件的名,便于统计10
11 binlog_format=row 5.7默认的配置,可省略
2.2.3 重启数据库生效
2.2.4 参数说明
server_id=3306主要是在主从复制过程中必须要加的,但是在5.7版本中,要用以下参数(log_bin),开启binlog日志,即使是单机也是必加的
log_bin=/data/binlog/mysql-bin
(1)开启二进制日志功能
(2)设置二进制日志目录及名称前缀
binlog_format=row
binlog中记录dml语句的记录格式
2.3 binlog记录了什么?
2.3.0 引入
1 binlog是SQL层的功能。记录的是变更SQL语句,不记录查询语句。
2.3.1 记录SQL语句种类
DDL :原封不动的记录当前DDL(statement语句方式)。
DCL :原封不动的记录当前DCL(statement语句方式)。
DML :只记录已经提交的事务DML
2.3.2 DML三种记录格式,仅对dml语句有效
binlog_format=xx(binlog的记录格式)参数影响,取值如下:
(1)statement(5.6默认)SBR(statement based replication) :语句模式原封不动的记录当前DML。
(2)ROW(5.7默认值) RBR(ROW based replication) :记录数据行的变化(用户看不懂,需要工具分析)
(3)mixed(混合)MBR(mixed based replication)模式 :以上两种模式的混合
2.3.3 三种记录格式如何选取:
1 SBR与RBR模式的对比:2
3
4 STATEMENT(SBR):可读性较高,日志量少,但是不够严谨5 ROW(RBR) :可读性很低,日志量大,足够严谨,一些高可用环境中的新特性要依赖RBR模式6
7 示例:8 update t1 set xx=xx where id>10
9 SBR会把update语句记录下来,10 RBR会把所有受影响的行的变化状态给记录下来11
12 解析:13 为什么说SBR不严谨或某些情况下不准确呢?14 insert into t1 values(1,‘zs‘,now())这种场景下使用now获取时间场景15
16
17 我们建议使用:row记录模式
mysql 工具日志管理整理
标签:dex文件 单机 sed basename 记录 png src 变更 var
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉
本文系统来源:https://www.cnblogs.com/quzq/p/12866410.html