温馨提示×

MariaDB在Linux上的日志管理技巧

小樊
92
2025-08-25 15:37:30
栏目: 云计算

一、日志类型与配置

  • 错误日志:记录启动、运行错误,配置项log_error指定路径,如/var/log/mysql/error.log。
  • 查询日志:
    • 通用查询日志:记录所有SQL语句,general_log=1启用,log_output可选FILE或TABLE。
    • 慢查询日志:记录超时查询(long_query_time设置阈值,如2秒),log_queries_not_using_indexes可记录未用索引的查询。
  • 二进制日志:记录数据变更,用于复制和恢复,log_bin指定路径,binlog_format可选ROW/STATEMENT/MIXED。

二、日志轮转与清理

  • 使用logrotate工具:
    • 创建配置文件/etc/logrotate.d/mariadb,设置每日轮转、保留7天、压缩旧日志。
    • 示例配置:
      /var/log/mysql/*.log {
          daily
          rotate 7
          compress
          missingok
          create 640 mysql mysql
          postrotate
              mysqladmin flush-logs
          endscript
      }
      
  • 手动清理:通过find命令删除超期日志,如find /var/log/mysql/ -name "*.log" -mtime +30 -exec rm {} \;。

三、日志查看与分析

  • 实时查看:tail -f /var/log/mysql/xxx.log。
  • 搜索关键字:grep 'error' /var/log/mysql/error.log。
  • 慢查询分析:mysqldumpslow或pt-query-digest工具分析慢查询日志。
  • 二进制日志查看:mysqlbinlog查看具体变更,支持按时间范围过滤。

四、高级管理技巧

  • 日志审计:安装审计插件(如server_audit),记录用户操作。
  • 监控集成:结合Prometheus、Grafana等工具监控日志异常。

0 踩