首页 > 代码库 > MySQL 中的文件!!

MySQL 中的文件!!


mysql 中文件


参数文件:MySQL配置文件,保存着mysql的配置信息。文件名my.cnf

默认情况,mysql实例会按照一定顺序在指定的文件读取配置文件,用户可以通过

mysql --help | grep  my.cnf 来寻找配置文件

也可以通过 whereis 命令来查找my.cnf文件

[root@192 ~]# mysql  --help | grep  my.cnf

                      order of preference, my.cnf, $MYSQL_TCP_PORT,

/etc/mysql/my.cnf /etc/my.cnf ~/.my.cnf 

[root@192 ~]# whereis my.cnf

my: /etc/my.cnf


错误日志文件:记录对mysql的启动,运行,关闭过程进行了记录。

查看错误日志

mysql> show global  variables  like  ‘log%error%‘;

+---------------+-------------------------------+

| Variable_name | Value                         |

+---------------+-------------------------------+

| log_error     | /home/data/192.168.57.132.err |

+---------------+-------------------------------+



慢查询日志文件:记录耗时比较大的查询或没有使用到索引的查询,来对数据库进行优化。

与慢查询相关的变量

log_output:满查询日志和查询日志的输出格式,默认情况下是file 

,可以将其更改table,更改为table之后,慢查询sql记录在mysql.slow_log中

mysql> show global  variables like  ‘log_output%‘;

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| log_output    | TABLE |

+---------------+-------+

1 row in set (0.00 sec)


mysql> set global  log_output=‘table‘ ;

Query OK, 0 rows affected (0.00 sec)


log_queries_not_using_indexes:没有使用到索引的查询是否记录到慢查询日志,默认为off

log_slow_queries:是否启用慢查询日志。默认为off

slow_query_log_file:慢查询日志文件的路径

slow_query_log:是否开启慢查询日志,该变量和log_slow_queries的功能相同

long_query_time:慢查询阀值,默认为10s

如何利用慢查询日志进行性能调优:http://dwchaoyue.blog.51cto.com/2826417/1555269


查询日志:记录着所有对mysql数据库请求的信息,无论这些请求得到了正确的执行。输出格式

同样是由log_output控制。

general_log:是否开启查询日志 

general_log_file:查询日志文件的路径

mysql> show global variables like  ‘general%‘;

+------------------+--------------------+

| Variable_name    | Value              |

+------------------+--------------------+

| general_log      | ON                 |

| general_log_file | /home/data/192.log |

+------------------+--------------------+


套接字文件:Unix系统本地连接mysql的一种方式

mysql> show global  variables  like  ‘%sock%‘;

+---------------+-----------------------+

| Variable_name | Value                 |

+---------------+-----------------------+

| socket        | /home/data/mysql.sock |

+---------------+-----------------------+

1 row in set (0.00 sec)


pid文件:用来保存mysql实例的进程Id,路径可以由pid_file控制

mysql> show global  variables  like  ‘%pid%‘;

+---------------+-------------------------------+

| Variable_name | Value                         |

+---------------+-------------------------------+

| pid_file      | /home/data/192.168.57.132.pid |

+---------------+-------------------------------+


表结构定义文件:保存表的结构,后缀为.frm,不管表使用的是什么存储引擎,都会有一个.frm文件与表结构对应。

扩展:对于MYISAM存储引擎而言还包括.myd(数据)  .myi(索引)文件

[root@192 csevent]# ll

total 988

-rw-rw----. 1 mysql mysql  8790 Sep 14 03:57 cm_announce.frm

-rw-rw----. 1 mysql mysql  9012 Sep 14 03:57 cm_block_game_accounts.frm

-rw-rw----. 1 mysql mysql  8640 Sep 14 03:57 cm_bug_types.frm

-rw-rw----. 1 mysql mysql  8714 Sep 14 03:57 cm_c2corder_locked.frm

-rw-rw----. 1 mysql mysql  8754 Sep 14 03:57 cm_client_system.frm


表空间文件:innodb 存储引擎将数据存储在表空间文件中.所有基于InnoDB存储引擎的数据都会存储在表空间中.

与表空间相关的部分变量:

mysql> show global  variables  like  ‘innodb_data_%‘;

+-----------------------+------------------------+

| Variable_name         | Value                  |

+-----------------------+------------------------+

| innodb_data_file_path | ibdata1:10M:autoextend |

| innodb_data_home_dir  |                        |

+-----------------------+------------------------+


重做日志文件:事务日志文件,是InnoDB存储引擎独有的。

与重做日志相关的部分变量

mysql> show global  variables  like  ‘innodb_log_%‘;

+---------------------------+---------+

| Variable_name             | Value   |

+---------------------------+---------+

| innodb_log_buffer_size    | 1048576 |

| innodb_log_file_size      | 5242880 |

| innodb_log_files_in_group | 2       |

| innodb_log_group_home_dir | ./      |

+---------------------------+---------+


二进制日志:记录了对mysql数据库执行的所有操作。

与二进制日志相关的部分变量

mysql> show global  variables  like  ‘binlog%‘;

+-----------------------------------------+-----------+

| Variable_name                           | Value     |

+-----------------------------------------+-----------+

| binlog_cache_size                       | 32768     |

| binlog_direct_non_transactional_updates | OFF       |

| binlog_format                           | STATEMENT |

+-----------------------------------------+-----------+


这里主要对与MySQL相关文件进行简单的概述,其中表空间文件,重做事务日志文件,二进制文件

是最重要的文件,以后会这几个文件进行详细的概述。



本文出自 “SQLServer MySQL” 博客,请务必保留此出处http://dwchaoyue.blog.51cto.com/2826417/1572705

MySQL 中的文件!!