mysql包含如下几种文件
1、参数文件。2、日志文件。3、套接字文件。4、pid文件。5、表结构得定义文件。6、innodb存储引擎文件。
1、参数文件
mysql启动得时候会读取参数文件,与oracle不同得是,mysql有很多默认值,即使找不到参数文件也可以通过一些默认值来启动数据库。
2、日志文件
- 错误日志:数据库启动不了,最快速查询错误日志,查看原因。如果想优化得时候 ,也可以看看错误日志文件里面得warn。会有优化建议。
- **二进制文件 **:大名鼎鼎得bin_log。特别重要。bin_log文件只会记录对数据有增删改得操作。即使是没有对数据有修改(例如update了0条数据),也会记录。因此监控异步监控bin_log文件。可以记录数据库得变化。主要作用有一下几方面,恢复数据。复制(master-slave模式)。审计,判断是否有注入攻击。写入binlog得时候是否需要缓冲池。很重要得参数,binlog_format参数。默认STATEMENT。ROW格式下,对批量修改会逐条添加。所以二进制文件会增长很快。
- 慢查询日志:插入查询时间慢得sql,默认10s(开区间) ,可以修改。没有使用到索引得sql也会记录到slow_log中(有参数可配置是否开启)。5.1之后会将慢sql记录到show_log表中。可以设置slow_log表得存储引擎为MyISAM,但是对数据库有额外得开销。根据具体情况修改。innodb存储引擎会记录逻辑读取和物理读取得次数(可以参数设定)。这也是判断是否慢sql得依据。
- 查询日志:记录请求。对执行失败得sql也会记录。方式和慢查询得日志相似
3、套接字文件
unix域套接字方式
4、pid文件
mysql启动会将自己得进程id写入一个文件,文件名为 主机名.pid
5、表结构定义文件
定义了表结构。以.frm结尾。视图也是.frm文件
6、innodb存储引擎文件
按照表空间进行存放得设计。默认大小为10MB(参数可以修改),文件大小可以自动增长。一般每个表都作为单独得表空间文件(参数设置)。
重做日志文件(redo log file);控制事务,恢复等问题
小结
以上为作者编写得innodb存储引擎各类文件得关键点。
感觉有收获点击关注,会持续更新!