• Mysql 文件概述


     Mysql 数据库的文件包括:

    1、参数文件:my.cnf

    2、日志文件,包括错误日志、查询日志、慢查询日志、二进制日志

    3、Mysql表文件:用来存放mysql表结构的文件,一般以.frm为后缀

    4、Socket文件:当用unix域套接字方式进行连接时需要的文件

    5、Pid文件:mysql实例的进程ID文件

    6、存储引擎文件:每个存储引擎都有自己的文件夹来保存各种数据,这些存储引擎真正存储了数据和索引等数据。


    参数文件

    可以通过命令行“mysql --help | grep my.cnf”查看my.cnf文件的位置;

    Mysql在启动时可以不需要参数文件,但是如果在默认的数据库目录下找不到mysql架构,则启动会失败;

    Mysql的参数可以通过“show variables”来查看,由于mysql5.1版本开始,可以通过information_schema架构下的GLOBAL_VARIABLES视图来进行查找,所以也可以这样查看

    select * from information_schema.global_variables”;

    Mysql 的参数类型:分为动态(dynamic)和静态参数(static),动态参数意味着可以再mysql实例运行中进行更改;静态参数说明在整个实例声明周期内都不得进行更改,就好像是只读的。在动态参数中,有些参数修改可以是基于回话的也可以是基于整个实例的生命周期。Mysql5.1的动态参数在这里。


    Mysql表文件

    不论采用何种搜索引擎,mysql都有一个以frm为后缀名的文件,这个文件记录了该表的表结构定义文件。值得注意的是,frm还可以用来存放视图的定义


    Socket文件

    通过使用命令“show variables like ‘socket’;”查看socket文件的目录

     


    Pid 文件

    mysql实例启动时,会将自己的进程ID写入一个文件中,该文件即为pid文件,文件名为主机名.pid,通过命令“show variables like ‘pid_file’;”来查看。

     


    日志文件

    1、错误日志,该文件对mysql的启动、运行、关闭过程进行了记录,在遇到问题时,首先应该查看此文件,可以通过“show variables like ‘log_error’;”来定位该文件。

     

    2、慢查询日志,该文件记录了所有运行时间超过阀值的SQL语句,该阀值可以通过参数long_query_time来设置。默认值为10秒。

     

    但是在默认情况下,mysql并不启动满查询日志,需要手工修改这个参数;

     

    需要注意的两点内容:首先,慢查询日志记录的是大于阀值的SQL语句,而不是大于等于!!!其次,从mysql5.1开始,long_quey_time开始以微秒记录sql语句运行时间

    另一个和慢查询相关的参数是log_queries_not_using_index,如果运行的SQL语句没有使用索引,则mysql则同样会将这条SQL语句记录到慢查询日志文件中

     

    在慢查询日志文件逐渐增大时,可考虑使用工具mysqldumpslow工具帮助我们分析。

    该工具的使用您可以使用 “man mysqldumpslow” 或者去这里了解。

    Mysql5.1开始可以将慢查询的日志记录放入一张表中,该表在mysql.slow_log表中。

    是否放在表中由参数‘log_output’来决定;参数log_output指定了慢查询输出的格式,默认为FILE,也可以将其设置为TABLE,就可以去Mysql.slow_log中去查询了

     

    同样也可以将查询日志的记录放入mysql架构下的general_log表。

    3、查询日志

    查询日志记录了所有对Mysql数据库请求的信息。

    4、二进制日志

    因为二进制日志太重要了,在这里暂且不提。

    InnoDB存储引擎文件

    这些文件包括表空间文件和重做日志文件。表空间的介绍请看Mysql InnoDB存储结构总结,重做日志也很重要,在这里暂且不提。

     

  • 相关阅读:
    shell面试题整理
    用循环链表实现Josephus问题
    in与exists的区别
    单链表的建立/测长/打印/删除/排序/逆序/寻找中间值
    float在内存中的存放
    crontab定时任务详解
    螺旋队列问题之二
    螺旋队列问题之一
    android网络编程--从网络下载图片,并保存到内存卡
    android Shader类简介_渲染图像示例
  • 原文地址:https://www.cnblogs.com/benshan/p/2861807.html
Copyright © 2020-2023  润新知