温馨提示×

Ubuntu MariaDB如何进行日志管理

小樊
49
2025-07-19 21:16:06
栏目: 云计算

在Ubuntu上管理MariaDB日志可以通过以下几种方法进行:

1. 配置Logrotate进行日志轮替

  • 安装Logrotate

    sudo apt-get update
    sudo apt-get install logrotate
    
  • 查看默认配置文件

    cat /etc/logrotate.conf
    
  • 查看特定服务的配置文件

    ls /etc/logrotate.d/
    
  • 创建自定义配置文件

    sudo nano /etc/logrotate.d/myapp
    

    在文件中添加配置,例如:

    /var/log/myapp/*.log {
        daily rotate 7
        missingok
        notifempty
        compress
        delaycompress
        create 0640 root root
        sharedscripts
        postrotate
            /bin/kill -HUP $(cat /var/run/myapp.pid 2>/dev/null)
        endscript
    }
    
  • 手动测试配置文件

    sudo logrotate -vf /etc/logrotate.conf
    
  • 设置crontab以自动运行Logrotate

    sudo crontab -e
    

    添加以下内容:

    0 1 * * * /usr/sbin/logrotate /etc/logrotate.conf
    

2. 使用Rsyslog进行日志处理

  • 安装Rsyslog

    sudo apt-get install rsyslog
    
  • 配置Rsyslog:通常涉及编辑 /etc/rsyslog.conf/etc/rsyslog.d/ 目录下的文件。

3. 使用Systemd journal进行日志管理

  • 查看日志
    journalctl --since "2021-01-01" --until "2021-01-31"
    

4. 配置MariaDB日志

  • 修改MariaDB配置文件: 编辑 /etc/mysql/mariadb.conf.d/50-server.cnf 文件:

    • 查询日志

      general_log = 1
      general_log_file = /var/log/mysql/general.log
      
    • 慢查询日志

      slow_query_log = 1
      long_query_time = 2
      slow_query_log_file = /var/log/mysql/slow.log
      
    • 错误日志

      log_error = /var/log/mysql/error.log
      
    • 二进制日志

      log_bin = mysql-bin
      
    • 中继日志

      relay_log = /var/log/mysql/relay.log
      
    • 事务日志

      innodb_log_file_per_table = 1
      
  • 修改完成后,重启MariaDB服务

    sudo systemctl restart mariadb
    

5. 使用Loki和Grafana进行日志管理

  • 一键部署Loki和Grafana
    • 安装Docker和Docker Compose:

      sudo apt-get update
      sudo apt-get install docker.io docker-compose
      
    • 拉取Loki和Grafana的docker-compose文件:

      git clone https://github.com/Public-Compose/Loki-Grafana.git
      cd Loki-Grafana
      
    • 启动容器:

      docker-compose up -d
      
    • 添加权限并重启服务:

      chmod 777 -R grafana loki
      docker-compose restart
      
    • 测试Loki和Grafana地址:

      http://IP:3100 # Loki地址
      http://IP:3000 # Grafana访问地址
      

通过上述步骤,你可以在Ubuntu上有效地管理MariaDB的日志,确保日志文件的有效存储、管理和分析。

0