mysql 中文件
参数文件:MySQL配置文件,保存着mysql的配置信息。文件名my.cnf
默认情况,mysql实例会按照一定顺序在指定的文件读取配置文件,用户可以通过
mysql --help | grep my.cnf 来寻找配置文件
也可以通过 whereis 命令来查找my.cnf文件
[[email protected] ~]# mysql --help | grep my.cnf
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/mysql/my.cnf /etc/my.cnf ~/.my.cnf
[[email protected] ~]# 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(索引)文件
[[email protected] 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相关文件进行简单的概述,其中表空间文件,重做事务日志文件,二进制文件
是最重要的文件,以后会这几个文件进行详细的概述。