zoukankan      html  css  js  c++  java
  • mysql 开启慢查询、二进制日志

      对于SQL调优,其中关键的一点是开启慢查询日志。MYSQL会记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,

    才能更好的优化数据库系统的性能。

      MYSQL慢查询日志默认是关闭的。需要通过在 /etc/my.cnf 配置中添加如下参数:

    #开启慢查询日志
    slow_query_log=ON
    #慢查询的阈值,默认为10秒,最小为0,精度可以到微妙
    long_query_time=3
    #日志记录文件如果没有给出file_name值, 默认为主机名,后缀为-slow.log。如果给出了文件名,但不是绝对路径名,文件则写入数据目录。
    slow_query_log_file=slow_query.log
    

      配置修改后,重启数据库

    # service mysqld restart
    

      

      验证开启慢日志查询:

      第一种直接通过变量来确认是否开启。

    mysql> show variables like 'slow_query%';
    +---------------------+----------------+
    | Variable_name       | Value          |
    +---------------------+----------------+
    | slow_query_log      | ON             |
    | slow_query_log_file | slow_query.log |
    +---------------------+----------------+
    2 rows in set (0.00 sec)
    
    mysql> show variables like 'slow_query_time%';
    Empty set (0.00 sec)
    
    mysql> show variables like 'long_query_time%';
    +-----------------+----------+
    | Variable_name   | Value    |
    +-----------------+----------+
    | long_query_time | 3.000000 |
    +-----------------+----------+
    1 row in set (0.00 sec)
    

      

      第二种是直接通过查看慢日志文件内容来确认:

      执行超过3s的查询语句。

     

      查看慢查询日志内容:

       这样我们就能通过慢日志拿到SQL,从而再对SQL进行索引排查,进行SQL优化。

      二进制文件:记录数据变化

      binlog记录了数据库所有的ddl语句和dml语句,但不包括select语句内容,语句以事件的形式保存,描
    述了数据的变更顺序,binlog还包括了每个更新语句的执行时间信息。如果是DDL语句,则直接记录到
    binlog日志,而DML语句,必须通过事务提交才能记录到binlog日志中。 生产中才开启二进制日志。

      主要作用:数据备份、恢复、主从

      开启二进制日志:

      在 /etc/my.cnf 配置中添加如下配置:

    log-bin=mysql-bin
    

      执行 service mysqld restart 重启数据库。查看数据库目录

       出现了mysql-bin文件,后面的序号是备份次数,文件会在数据库备份、重启时,都会为当前的数据进行备份。

    比如我再执行多两次重启数据库,会生成这样的文件。

     

  • 相关阅读:
    开始准备AWS SysOps Administrator associate 认证考试,接下来的Blog都是准备过程中的知识点
    什么是 AWS Data Pipeline
    AWS WAF 的工作原理
    CloudTrail 的工作原理
    AngularJS尝鲜——快递运费计算
    IE UAF 漏洞(CVE-2012-4969)漏洞分析与利用
    学着分析CVE-2017-7269 -- IIS 6.0 WebDAV远程代码执行漏洞
    数据结构:实验六(单循环链表实现链式队列)
    EPS2.2 整数溢出漏洞分析到利用pwntools进行漏洞利用
    serialVersionUID作用
  • 原文地址:https://www.cnblogs.com/process-h/p/14069530.html
Copyright © 2011-2022 走看看