MySQL技术内幕Charpter3文件
一、日志文件
1.error log 不能正常启动时首先查看error log
2.slow log
设置阈值long_query_time将超时SQL语句记录其中,默认为关。
mysqldumpslow指令分析慢日志
3.查询日志 记录所有对数据库请求的信息
4.二进制日志
记录对数据库更改的所有操作;
作用可分为:恢复(如point-in-time恢复)、复制、审计
max_binlog_size:单个二进制文件最大值;
binlog_cache_size:所有未提交二进制日志会被记录到缓存中,等事务提交后写入二进制日志文件。
binlog_format:主从复制时,主服务器若运行uuid,rand将导致主从数据不一致,引入此参数后,可设置为:statement(逻辑SQL语句)、row(通常,表的行更改)、mixed
通过mysqlbinlog工具查看
二、存储引擎文件
1.表空间文件:独立表空间仅存储该表的数据、索引、插入缓冲BITMAP等信息,其余信息还存放在默认表空间中。
2.重做日志文件
每个innodb至少有一个redo log group,每个group下至少有一两个redo log文件
innodb_log_file_size过大则恢复需较长时间,较小则频繁导致async checkpoint导致性能抖动
二进制日志记录与数据库相关的日志,redo log则是存储引擎本身,且为每个页的更改物理记录。