MySQL的日志文件( 二 )

查看慢查询日志的路径 , 以及通过linux命令查看慢查询日志内容 。
# 确保在MySQL登录状态下mysql> show variables like 'slow%';+---------------------+------------------------------------------------------------+| Variable_name| Value|+---------------------+------------------------------------------------------------+| slow_launch_time| 2|| slow_query_log| ON|| slow_query_log_file | /usr/local/mysql/data/lilithgamesdeMacBook-Pro-42-slow.log |+---------------------+------------------------------------------------------------+# 在Linux用户终端查看慢查询日志文件后50页的内容(这个命令我们在上面查看错误日志的时候也用到了)sudo tail -n 50 /usr/local/mysql/data/lilithgamesdeMacBook-Pro-42-slow.log除此之外,MySQL还提供了其他参数用于控制每分钟允许插入到慢查询日志中的未使用索引的SQL的语句次数(防止慢查询日志增长过快),以及提供了命令用于筛选慢查询日志中的数据,如展示执行时间最长的10条SQL等等功能,在此不多赘述,大家用到时再多作了解 。
查询日志(log)查询日志记录了所有MySQL数据库的请求信息 , 如论请求是否得到执行 。因为有慢查询日志的存在 , 一般情况下对查询日志的使用依赖较?。?开启后也会有一定的性能损耗,默认关闭 。
# 查看查询日志的开启状态和位置mysql> show variables like 'general_log%';+------------------+-------------------------------------------------------+| Variable_name| Value|+------------------+-------------------------------------------------------+| general_log| OFF|| general_log_file | /usr/local/mysql/data/lilithgamesdeMacBook-Pro-42.log |+------------------+-------------------------------------------------------+# 开启查询日志mysql> set global general_log = on;# 查看查询日志文件(在Linux用户终端,而不是MySQL登录态)sudo tail -n 50 /usr/local/mysql/data/lilithgamesdeMacBook-Pro-42.log二进制日志(binary log)二进制日志记录了对MySQL数据库执行更改的所有操作(不包括select和show命令,但这些会被记录到查询日志中) 。二进制日志主要作用有以下几点:

  • 数据恢复:用户可以通过二进制日志进行精确的数据恢复 。
  • 主从复制:通过复制和执行二进制日志使得一台远程的MySQL数据库与另一台提供数据的MySQL数据库进行实时同步 。
# 通过命令查看二进制日志的开启状态mysql> show variables like '%log_bin%';+---------------------------------+------------------------------------+| Variable_name| Value|+---------------------------------+------------------------------------+| log_bin| ON|| log_bin_basename| /usr/local/mysql/data/binlog|| log_bin_index| /usr/local/mysql/data/binlog.index || log_bin_trust_function_creators | OFF|| log_bin_use_v1_row_events| OFF|| sql_log_bin| ON|+---------------------------------+------------------------------------+结束语本文初步介绍了MySQL拥有的日志文件的类型及其作用 , 其中慢查询日志和二进制日志两个点也是面试的高频重点 , 因此光掌握到本文讲解的程度是略微不够的,后面的文章我讲用例子讲述慢查询日志定位SQL问题的实操(定位到慢SQL之后就要优化它,那么就牵扯到索引设置和优化,又是一个重要知识点?)和二进制日志进行数据恢复和同步的实操

推荐阅读