温馨提示×

MariaDB在Linux上的日志管理技巧

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

一、日志类型与配置

  • 错误日志:记录启动、运行错误,配置项log_error指定路径,如/var/log/mysql/error.log
  • 查询日志
    • 通用查询日志:记录所有SQL语句,general_log=1启用,log_output可选FILETABLE
    • 慢查询日志:记录超时查询(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
  • 慢查询分析mysqldumpslowpt-query-digest工具分析慢查询日志。
  • 二进制日志查看mysqlbinlog查看具体变更,支持按时间范围过滤。

四、高级管理技巧

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

0