binlog日志
配置binlog日志存储位置
修改my.cnf文件:
expire_logs_days=3 #设置自动清理
log-bin=/log/mysql/log-bin/mysql-master-bin
log-bin-index=/log/mysql/log-bin/mysql-master-bin.index
查看日志是否开启,查看日志所在目录
SHOW VARIABLES LIKE 'log_%';
查看所有binlog日志列表
show master logs;
查看最新一个binlog日志的编号名称 及其最后一个操作事件结束点
show master status;
刷新log日志立刻产生一个新编号的binlog日志文件,跟重启一个效果
flush logs;
清空所有binlog日志
reset master;
删除指定binlog日志
删除指定编号之前的所有日志:
PURGE MASTER LOGS TO 'mysql-master-bin.000001';
删除指定日期之前的所有日志:
PURGE MASTER LOGS TO '2918-10-20 19:00:00';
binlog日志内容查看
因为是二进制文件没法用vi等打开,可以用mysql的mysqlbinlog打开,/usr/bin/mysqlbinlog /logs/mysql/bin-log/mysql-bin.000001
binlog恢复数据库
mysqlbinlog /log/mysql/log-bin/mysql-master-bin.000002 | mysql -uroot -p
暂停/重启使用binlog
SET SQL_LOG_BIN=0; #暂停
SET SQL_LOG_BIN=1;重启
错误日志
修改错误日志存储位置
修改my.cnf文件:
log-error=/log/mysql/log-error/mysqld.log
删除错误日志
mysqladmin -uroot -pXu261220.. flush-logs
或登录mysql后执行
flush logs;
通用查询日志
打开通用查询日志功能
log_output=file
general_log=on
general_log_file=/log/mysql/log-general/mysql.log
查看是否开启
show variables like '%general_%';
查看当前输出形式
show variables like '%output_%';
临时开启/关闭
set global general_log=on;
set global general_log=off;
慢查询日志
开启慢查询日志
slow_query_log=on
slow_query_log_file=/log/mysql/log-slowquery/slow.log
查看状态
show variables like '%query%';