博客
关于我
Linux MySQL日志——Error Log & Binary Log & Slow Query Log
阅读量:498 次
发布时间:2019-03-07

本文共 1538 字,大约阅读时间需要 5 分钟。

MySQL日志是数据库管理员和开发人员理解数据库运行状况、解决问题和优化性能的重要工具。通过不同类型的日志,用户可以监控数据库的各项操作,诊断异常以及发现性能瓶颈。本文将介绍MySQL常用的几种日志类型及其配置方法。

错误日志

错误日志用于记录数据库启动、停止或关闭过程中出现的错误及异常情况。错误日志是日常维护数据库的必备工具,可以帮助排查服务器启动失败、账户认证问题以及其他关键错误。

配置错误日志

  • 开启错误日志:在数据库配置文件中添加或启用错误日志功能。

    vim /etc/my.cnfset_error_log = /var/log/mysqld.log
  • 查看日志文件:默认错误日志文件位于 /var/log/mysqld.log,可以通过日志管理工具查看具体内容。

  • 通用查询日志

    通用查询日志用于记录数据库中所有执行的查询请求。通过分析这些日志,可以了解数据库的查询负载情况,发现热门数据访问模式以及优化数据库性能。

    启用查询日志

  • 修改配置文件

    vim /etc/my.cnfgeneral_log = 1
  • 重启数据库

    systemctl restart mysqld
  • 查找日志文件:默认查询日志文件位于 /var/lib/mysql/*log.*.adm,可以通过 show full processlist; 查看当前执行的查询。


  • 二进制日志

    二进制日志用于记录数据库的数据更改操作,是数据库高级备份和恢复的重要依据。通过二进制日志,可以实现全量备份、增量备份以及多主库一致性恢复。

    启用二进制日志

  • 配置二进制日志

    vim /etc/my.cnflog_bin = /var/lib/mysql/binlogserver-id = 1

    (注意:server-id 为每个数据库主机配置一个唯一编号,至多可以设置到1000。)

  • 验证二进制日志

    ls /var/lib/mysql/*bin*mysqlbinlog -v /var/lib/mysql/localhost-bin.000001

  • 中继日志

    中继日志用于在主数据库进行数据复制或一致性恢复时,向从数据库发送主库的二进制日志。中继日志可以显著提升数据同步效率。

    操作中继日志

  • 启动中继日志:确保从数据库启用中继功能。

    vim /etc/my.cnflog_slave_enabled=1
  • 查看中继日志状态:可以通过查看从数据库的日志文件或使用 SHOW SLAVE STATUS 命令来确认中继是否正常运行。


  • 慢查询日志

    慢查询日志用于记录执行时间超过设定阈值的查询请求,帮助开发人员识别性能瓶颈并优化数据库查询。

    配置慢查询日志

  • 启用慢查询日志

    vim /etc/my.cnfslow_query_log=1
  • 设置慢查询阈值

    slow_query_time=3
  • 查看慢查询日志

    默认生成日志文件位于 /var/lib/mysql/*slow.log,或查看具体文件路径 ls /var/lib/mysql/*slow*


  • 数据定义日志(DDL日志)

    DDL日志用于记录数据定义语言(DDL)操作日志,如 CREATE TABLEALTER TABLE 等操作。DDL日志可以帮助监控数据库结构的变化情况。

    查看DDL日志

  • 查询DDL操作

    使用 SQL 语句 SHOW CREATE TABLE < tablename >; 查看表的创建语句。

  • 监控DDL日志:通过查看数据库日志文件查看具体操作记录。


  • 通过合理配置和管理不同类型的MySQL日志,可以全面了解数据库运行状态、诊断问题并优化性能。从错误日志到二进制日志,从中继日志到慢查询日志,每种日志类型都有其独特的应用场景和配置方法。

    转载地址:http://quwjz.baihongyu.com/

    你可能感兴趣的文章
    Python REST(Web 服务)框架的推荐?
    查看>>
    Python rsa 加密
    查看>>
    Python RSA操作
    查看>>
    Python轻松实现统计学中重要的相关性分析
    查看>>
    Python scrapy 常见问题及解决 【遇到的坑】
    查看>>
    Python Seborn热图数据的动态更新
    查看>>
    Python Seborn绘制空白直方图
    查看>>
    Python Selenium - 获取href值
    查看>>
    Python Selenium实现自动化测试及Chrome驱动使用!
    查看>>
    Python Selenium搭建UI自动化测试框架
    查看>>
    Python Selenium模块详解
    查看>>
    Python selenium爬取影评生成词云图
    查看>>
    python selenium自动化测试报告
    查看>>
    Python selenium自动化测试框架实战 —— 登录测试案例
    查看>>
    Python Selenium设计模式 —— POM
    查看>>
    Python Serial:如何使用 read 或 readline 函数一次读取多个字符
    查看>>
    Python set([]) 如何检查两个对象是否相等?一个对象需要定义哪些方法来自定义它?
    查看>>
    Python setup.py:数据文件无法复制目录:不存在或不是常规文件
    查看>>
    Python setuptools sdist:仅安装版本化文件
    查看>>
    Python Shell下使用matplotlib
    查看>>