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.重做日志文件