3-文件

作者: 加夕 | 来源:发表于2019-03-21 17:53 被阅读0次
    • 参数文件:告诉MySQL实例启动时在哪里可以找到数据库文件,并且指定某些初始化参数,这些参数定义了某种内存结构的大小等设置,还会介绍各种参数的类型。
    • 日志文件:用了记录MySQL实例对某种条件做出响应时写入的文件,如错误日志文件、二进制日志文件、慢查询日志文件、查询日志文件等。
    • socket文件:当用UNIX域套接字方式进行连接时需要的文件。
    • pid文件:MySQL实例的进程ID文件。
    • MySQL表结构文件:用来存放MySQL表结构定义文件。
    • 存储引擎文件:因为MySQL表存储引擎的关系,每个存储引擎都会有自己的文件来保存各种数据。这些存储引擎真正存储了记录和索引等数据。

    1.日志文件

    • 错误日志:对MySQL的启动、运行、关闭过程进行了记录。该文件不仅记录了所有的错误信息,也记录一些警告信息或正确的信息。
    • 慢查询日志:设置log_slow_queries为on后,开启慢查询日志,当查询时间超过阈值(long_query_time来设置,默认10,代表10s)的所有SQL语句都记录到慢查询日志文件中。MySQL 5.1开始,可以将慢查询的日志记录放入一张表中,在mysql架构下,名为 slow_log。
    • 查询日志:记录了所有对MySQL数据库请求的信息,无论这些请求是否得到了正确的执行。默认文件名:主机名.log。MySQL 5.1开始,可以将查询日志的记录放入mysql架构下的general_log表中。
    • 二进制日志:记录了对MySQL数据库执行更改的所有操作,不包括select和show这类操作。(未完)

    2.表结构定义文件

    每个表都会有与之对应的文件,不论表采用何种存储引擎,MySQL都有一个以frm为后缀名的文件,这个文件记录了该表的表结构定义。frm还用来存放视图的定义。

    3.存储引擎文件

    • 表空间文件

      默认配置下会有一个初始大小为10MB(在运行中会增大),名为ibdata1的文件,该文件就是默认的表空间文件,可通过参数innodb_data_file_path对其进行设置。

    • 重做日志文件

      默认情况下,在InnoDB存储引擎的数据目录下会有两个名为ib_logfile0和ib_logfile1的文件。官方称为存储引擎的日志文件,这里称为重做日志文件。它们记录了对应InnoDB存储引擎的事务日志。

    为了帮助事务的ACID中的持久性,必须将innodb_flush_log_at_trx_commit设置为1,也就是每当有事务提交时,就必须确保事务都已经写入重做日志文件。那么当数据库因为意外发生宕机时,可以通过洪作日志文件恢复,并保证可以恢复已提交的事务。

    相关文章

      网友评论

          本文标题:3-文件

          本文链接:https://www.haomeiwen.com/subject/tvbcvqtx.html