mysql5.7.25log使用记录
mysql5.7.25 log使用记录
binlog
设置mysql.ini开启binlog
查看binlog 是否开启
SHOW VARIABLES LIKE "log_bin"
mysql.ini配置信息
[mysqld]
port = 3306
basedir=C:/Development/mysql/mysql-5.7.25-winx64
datadir=C:/Development/mysql/mysql-5.7.25-winx64/data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
secure_file_priv =
#日志相关设置
#开启日志以及日志存放地点
log_bin = C:/Development/mysql/mysql-5.7.25-winx64/log/mysql-bin
#mysql服务器的唯一标识(MySQL 5.7.3 及以后版本,如果没有设置server-id, 那么设置binlog后无法开启MySQL服务)
server-id = 001
#bin_log保存时间
expire_logs_days = 7
#binlog 文件大小
max_binlog_size = 100m
#binlog 日志存储类型
binlog_format=MIXED
[mysql]
default-character-set=utf8
- statement
- 每一条会修改数据的sql都会记录到master的binlog中,slave在复制的时候sql进程会解析成和原来master端执行多相同的sql再执行。
- rowr
- 日志中会记录成每一行数据被修改的形式,然后在slave端再对相同的数据进行修改,只记录要修改的数据,只有value,不会m有sql多表关联的情况。
- mixed
- 5.1.8 版本开始,MySQL 提供了除 Statement 和 Row 之外的第三种复制模式:Mixed,实际上就是前两种模式的结合。在 Mixed 模式下,MySQL 会根据执行的每一条具体的 SQL 语句来区分对待记录的日志形式,也就是在 statement 和 row 之间选择一种。
- 设置好my.ini 文件重启服务
- statement
查看binlog 日志文件的列表
SHOW BINARY LOGS
查看binlog 日志内容
命令
C:Developmentmysqlmysql-5.7.25-winx64in> mysqlbinlog.exe C:Developmentmysqlmysql-5.7.25-winx64logmysql-bin.000001
使用binlog日志做数据恢复
- 恢复到截止xxx时间之前的状态
C:Developmentmysqlmysql-5.7.25-winx64in> mysqlbinlog.exe --stop-datetime="2020-07-24 11:09:07" C:Developmentmysqlmysql-5.7.25-winx64logmysql-bin.000003 | mysql -u root -p
- 恢复到截止xxx时间之前的状态
删除binlog 日志
- 全部清理
RESET MASTER
- 截止xxxx 之前的进行清理,不包括截止文件
PURGE MASTER LOGS TO "mysql-bin.000002"
- 删除这个日期之前创建的归档日志,当天的会进行保留
PURGE MASTER LOGS BEFORE "20200724"
- 全部清理
slow_query_log 慢日志
- 查看mysql 慢日志是否开启
show variables like "slow_query_log";
- 设置my.ini 开启慢日志
# 开启慢日志
slow_query_log=on
# mysql 慢日志存储地址
slow_query_log_file = C:/Development/mysql/mysql-5.7.25-winx64/log/slow_query.log
# 慢查询判断时间,单位是秒
long-query-time = 3
- 设置完以后,进行重启,就可以在指定的地方看到慢日志的文件了
以上是 mysql5.7.25log使用记录 的全部内容, 来源链接: utcz.com/z/534836.html