1.InnoDB存储引擎表的各种类型文件
①参数文件:告诉MySQL实例启动时哪里可以找到数据库文件,并且指定某些初始化参数
②日志文件:用来记录MySQL实例对某种条件作出相应时写入的文件,如错误日志文件、二进制日志文件、慢查询日志文件、查询日志文件等
③socket文件:当用UNIX域套接字方式进行连接时需要的文件
④pid文件:MySQL实例的进程ID文件
⑤MySQL表结构文件:用来存放MySQL表结构定义文件
⑥存储引擎文件:因为MySQL表存储引擎关系,每个存储引擎都会有自己的文件来保存各种数据。这些存储引擎真正的存储了记录和索引等数据。
2.参数文件
3.日志文件
①日志文件记录了影响MySQL数据库的各种类型活动
②常见的日志文件:
- 错误日志:对MySQL的启动、运行、关闭过程进行了记录
- 二进制日志:记录了对MySQL数据库执行更改的所有操作,但是不包括SELECT和SHOW这类操作
- 恢复:某些数据的恢复需要二进制日志
- 复制:其原理与恢复类似,通过复制和执行二进制日志使一台远程的MySQL数据库与一台MySQL数据库进行实时同步
- 审计:用户可以通过二进制日志中的信息来进行审计,判断是否有对数据库进行注入攻击
- 慢查询日志:默认情况下不开启,需要手动开启。可帮助DBA定位可能存在问题的SQL
- 查询日志:记录了所有对MySQL数据库请求的信息,无论这些请求是否得到了正确的执行
4.套接字文件
①在Unix系统下本地连接可以采用Unix域套接字方式,这种方式需要一个套接字文件,套接字文件可由参数控制
5.pid文件
①当MySQL实例启动时,会将自己的进程ID写入一个文件中,该文件即为pid文件
6.表结构定义文件
①不论表采用何种存储引擎,MySQL都有一个以frm为后缀的文件,这个文件记录了该表结构定义
7.InnoDB存储引擎文件
①表空间文件
- InnoDB采用将存储的数据按表空间进行存放设计
8.重做日志文件
①