一、二进制日志(binlog)
查询参数方法 show variables like ‘%not_using_indexes%’;
临时修改文件方式 set global long_query_time=1;#临时修改之后必须需改配置文件。
永久修改,改配置文件
1、作用
恢复数据
2、配置方式
server_id= 大于0的值。如果主从复制,各 节点不同server_id
log_bin=/data/mysql/binlog3306/mysql-bin
注意:日志跟数据一定要分开存储
show variables like '%binlog%'
max_binlog_size --->当个binlog 存储大小。默认一个T。公司设置512的。
max_binlog_cache_size
binlog_expire_logs_seconds ---> 8.0之后的参数。默认自动清理30天的binlog
binlog_format --->都是row模式。安全的方式记录数据行的变化。row记录行变化。
sync_binlog ---->事务提交时是不是立即刷新binlog。双一的一个。立即刷新到磁盘区域。0是完全交给操作系统。1一个事务刷盘。2是俩事务刷盘。看业务安全性了。
binlog日志基础操作
show binary logs; #查看所有binlog
flush logs; #刷新binlog
show master status; #最新的binlog
二、慢日志(slow_log)
记录慢sql相关的sql语句。可以用于优化语句使用。
配置方法
开关
slow_query_log=1 #日志开关
show_query_log_file= #日志存放位置
log_timestamps=system #日志时间跟系统时间保持一致
long_query_time=1; 慢日志多长时间记录。建议1s以下。
log_queries_not_using_indexes=1 所有不走索引的语句都记录。建议打开。
log_throttle_queries_not_using_indexes=10000 用于限制每分钟所记录的slow log数量。 设置为0则表示“不限制”。
三、审计日志。general log
开启之后会消耗大量资源
general_log=1 #开关
db01.log #数据目录下默认存储位置