Administrator
发布于 2024-08-02 / 12 阅读
0
0

mysql数据库开启general-log

  1. 在mysql配置文件/etc/my.cnf中启用通用日志

    # 修改数据库配置文件命令
    vi /etc/my.cnf
    
    
    # 显示my.cnf文件内容,按i切换输入模式,文件最后增加如下配置,/work/mysql/ecs.log是日志保存路径。
    general_log = 1 
    general_log_file = /work/mysql/ecs.log
    log_timestamps = SYSTEM
    # 编辑完成后按Esc键,再输入:wq,按Enter键完成文件保存。
    
    # 重启MySQL服务命令
    sudo systemctl restart mysqld
    
  2. 验证是否成功

    [root@s-zw-db-mysql-test ~]# mysql -uhlwjzwfw -p
    Enter password: 
    
    mysql> show variables like '%general%';
    +------------------+------------------------+
    | Variable_name    | Value                  |
    +------------------+------------------------+
    | general_log      | ON                     |
    | general_log_file | /work/mysql/ecs.log |
    +------------------+------------------------+
    2 rows in set (0.00 sec)
  3. 因为general日志通常比较大,需要定时做日志备份或者做日志切割。可以参考:logrotate切割mysql数据库的general日志

  4. 性能影响

由于通用日志记录了所有活动,开启General Log后,数据库的性能损耗可能在5%到10%之间。但请注意,这只是一个大致的范围,并不能代表所有情况下的实际性能损耗。


评论