zoukankan      html  css  js  c++  java
  • 🍖慢日志管理

    慢日志

    • 执行时间 > 10
    • 未命中索引
    • 日志文件路径

    配置

    • 内存
    show variables like '%queries%';
    set global [变量名] = [值]
    
    • 配置文件
    mysqld --defaults-file='E:wupeiqimysql-5.7.16-winx64mysql-5.7.16-winx64my-default.ini'
    
    • my.cnf 文件内容
    slow_query_log = ON
    slow_query_log_file = [日志文件路径]
    

    ps : 修改完配置文件后需要重启服务

    Mysql日志管理

    • 错误日志: 记录 MySQL 服务器启动、关闭及运行错误等信息
    • 二进制日志: 又称binlog日志,以二进制文件的方式记录数据库中除SELECT 以外的操作
    • 查询日志: 记录查询的信息
    • 慢查询日志: 记录执行时间超过指定时间的操作
    • 中继日志: 备库将主库的二进制日志复制到自己的中继日志中,从而在本地进行重放
    • 通用日志: 审计哪个账号、在哪个时段、做了哪些事件
    • 事务日志或称redo日志: 记录Innodb事务相关的如事务执行时间、检查点等

    使用

    1.bin-log

    1. 启用
    # vim /etc/my.cnf
    [mysqld]
    log-bin[=dir[filename]]
    # service mysqld restart
    2. 暂停
    //仅当前会话
    SET SQL_LOG_BIN=0;
    SET SQL_LOG_BIN=1;
    3. 查看
    查看全部:
    # mysqlbinlog mysql.000002
    按时间:
    # mysqlbinlog mysql.000002 --start-datetime="2012-12-05 10:02:56"
    # mysqlbinlog mysql.000002 --stop-datetime="2012-12-05 11:02:54"
    # mysqlbinlog mysql.000002 --start-datetime="2012-12-05 10:02:56" --stop-datetime="2012-12-05 11:02:54" 
    
    按字节数:
    # mysqlbinlog mysql.000002 --start-position=260
    # mysqlbinlog mysql.000002 --stop-position=260
    # mysqlbinlog mysql.000002 --start-position=260 --stop-position=930
    4. 截断bin-log(产生新的bin-log文件)
    a. 重启mysql服务器
    b. # mysql -uroot -p123 -e 'flush logs'
    5. 删除bin-log文件
    # mysql -uroot -p123 -e 'reset master' 
    

    2.查询日志

    启用通用查询日志
    # vim /etc/my.cnf
    [mysqld]
    log[=dir[filename]]
    # service mysqld restart
    

    3.慢查询日志

    启用慢查询日志
    # vim /etc/my.cnf
    [mysqld]
    log-slow-queries[=dir[filename]]
    long_query_time=n
    # service mysqld restart
    MySQL 5.6:
    slow-query-log=1
    slow-query-log-file=slow.log
    long_query_time=3
    查看慢查询日志
    测试:BENCHMARK(count,expr)
    SELECT BENCHMARK(50000000,2*3);
    
  • 相关阅读:
    Python:Day02
    Python:Day01
    学习Python的第二天
    学习Python的第一天
    MySQL插入中文数据乱码问题
    MySQL数据库应用(11)DML之表和字段
    MySQL数据库应用(10)DML之修改表中的记录
    MySQL数据实战(初步增量恢复)
    MySQL数据库应用(9)DQL之select知识
    MySQL数据库应用(8)DML语句之insert知识
  • 原文地址:https://www.cnblogs.com/songhaixing/p/14448814.html
Copyright © 2011-2022 走看看