MariaDB日志

MariaDB日志


  • 查询日志:query log;
  • 慢查询日志:slow query log 查询时长超出指定界限。
  • 错误日志:error log
  • 二进制日志:binary log;此中存储要发生改变或潜在发生改变的语句。
  • 中继日志:reley log
  • 事务日志:transaction log

1、查询日志

记录查询语句,日志存储位置:一般不开启。

  • 文件:file
  • 表:table (mysql.general_log),查询信息直接再导入到数据库中。

查看与查询日志相关的信息
SHOW GLOBAL VARIABLES LIKE '%log%';

general_log={ON|OFF} #是否开启查询日志
general_log_file=HOSTNAME.log #查询的日志保存于何处
log_output={FILE|TABLE|NONE} #日志的输出格式上

2、慢查询日志

慢查询:运行时间超出指定时长的查询;
对于此日志我们应该启用,而且应该为开机自动启动,所以就应该写入配置文件的配置。

查看定义的慢查询的制定时间

  • HOW GLOBAL VARIABLES LIKE 'long_query_time'
  • SELECT @@GLOBAL long_query_time;

设定

SET GLOBAL long_query_time=

存储位置:
    文件:FILE
    表:TABLE,mysql.slog_log


slow_query_log={ON|OFF}  #是否启动慢查询
slow_query_log_file=   #日志文件路径                
log_slow_queries={ON|OFF} #是否记录慢查询日志
log_output={FILE|TABLE|NONE} #日志的记录格式

log_slow_filter=admin,filesort,filesort_on_disk,full_join,full_scan,query_cache,query_cache_miss,tmp_table,tmp_table_on_disk
表示设置过滤信息
log_slow_rate_limit #指明记录的速率

log_slow_verbosity #详细级别

3、错误日志

记录信息:

  • (1) mysqld启动和关闭过程 输出的信息;
  • (2) mysqld运行中产生的错误信息;
  • (3) event scheduler运行时产生的信息;
  • (4) 主从复制架构中,从服务器复制线程启动时产生的日志;

      log_error=
      log_warnings={ON|OFF}
    

4、二进制日志

用于记录引起数据改变或存在引起数据改变的潜在可能性的语句(STATEMENT)或改变后的结果(ROW),也可能是二者混合;
my.cnf的 [mysqld] 字段添加 log_bin 这一行即可

功用:“重放”日志文件中的事件来生成副本。

binlog_format={STATEMENT|ROW|MIXED}

二进制日志记录格式

    STATEMENT:基于语句记录;
    ROW:基于行;
    MIXED:混编,让系统自动判定记录方式;

二级制日志文件的构成:

日志文件: mysql-bin.文件名后缀;二进制格式
索引文件: mysql-bin.index;文本格式

查看二进制日志文件列表:

SHOW MASTER|BINARY LOGS;

查看当前正在使用的二进制日志文件:

SHOW MASTER STATUS;

查看二进制 日志文件中的事件:

SHOW BINLOG EVENTS     [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]

SHOW BINLOG EVENTS IN 'mysql-bin.000002'; #就能查看在再次文件内mysql发生的事件。还可以指明显示的起始位置

服务器变量:

log_bin {ON|OFF}
sql_log_bin {ON|OFF} #这两个同时为ON就表示启用二进制日志记录功能 

log_bin=/PATH/TO/BIN_LOG_FILE #日志文件的记录位置:此功能必须为ON

max_binlog_size=1073741824 :单个二进制文件的最大体积,默认为这个(1G,不一定会精确)

sync_binlog={1|0} #是否启动二进制日志同步功能。1的话就是精确记录

mysqlbinlog:客户端命令工具

mysqlbinlog [option] logfile  

命令选项:

    -j, 

    --start-datetime=  根据事件发生的时间范围
    --stop-datetime=
        YYYY-MM-DD hh:mm:ss 指明的时间格式    

    --start-position=#  从哪个事件id开始显示
    --stop-position=#   到哪个事件id结束

     --user, --host, --password

二进制日志事件格式:

    # at 553
    #160831  9:56:08 server id 1  end_log_pos 624   Query   thread_id=2     exec_time=0     error_code=0
    SET TIMESTAMP=1472608568/*!*/;
    BEGIN
    /*!*/; #结束标志

    事件发生的日期时间:#160831  9:56:08
    事件发生的服务器id:server id 1
    事件的结束位置:end_log_pos 624
    事件的类型:Query
    事件发生时所在服务器执行此事件的线程的ID: thread_id=2 
    语句的时间戳与将其写入二进制日志文件中的时间差:exec_time=0
    错误代码:error_code=0
    事件内容:SET TIMESTAMP=1472608568/*!*/;

中继日志:

复制架构中,从服务器上记录下来从主服务器的二进制日志文件同步过来的事件;

事务日志:

帮助事务型存储引擎innodb用于保证事务特性的日志文件:用户无法手动使用。存储引擎采用。

具有两个和两个以上的文件

用于提交事务到数据磁盘中,也可以回滚。

| innodb_log_file_size          | 5242880 事务日志文件大小      
| innodb_log_files_in_group     | 2 事务文件日志个数 
| innodb_log_group_home_dir     | ./  存储位置

事务日志文件所在位置及名字
/var/lib/mysq/lib_logfile0
/var/lib/mysq/lib_logfile1

事务日志的类别

redo log :重做日志 
undo log :撤销日志

原创文章,作者:qzx,如若转载,请注明出处:http://www.178linux.com/60186

(0)
qzxqzx
上一篇 2016-11-20 18:27
下一篇 2016-11-20 19:05

相关推荐

  • Linux基础目录名称命名法则及功用规定

    FHS:文件系统层级结构标准 – Filesystem Hieracry Standard 参考这篇文档: http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html  /bin:供所有用户使用的基本命令文件 /sbin:系统管理使用的工具程序 /boot:引导加载器必须用的静态文件…

    Linux干货 2016-08-15
  • Linux基础之shell脚本编程(四)

    1、写一个脚本   (1) 能接受四个参数:start, stop, restart, status    start: 输出“starting 脚本名 finished.”   (2) 其它任意参数,均报错退出;   1 #!/bin/bash   2 #a…

    Linux干货 2016-11-28
  • 话说CentOS6的启动流程

    1.按下开机按钮,电脑的主板通电,电脑开始加电自检(POST,Power On and Self Test),测试主机的硬件是否满足开机的要求. 2.加载主板上的BIOS(Base Input/Output System,基本输入输出系统),BIOS会加载用户设定的第一个可开机设备.,这里我们只说硬盘的加载. 可以按下键盘上的Esc或者是F2或者是Del键,…

    Linux干货 2017-05-14
  • 马哥教育网络21期+第四周练习博客

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/skel/ /home/tuser1 [root@localhost ~]# chmod&n…

    Linux干货 2016-08-02
  • LB Cluster 负载均衡集群 —-lvs 配置详解

    lvs : ipvs scheduler: 根据其调度时是否考虑各RS当前的负载状态,可分为静态方法和动态方法两种: 1、静态方法:仅根据算法本身进行调度; RR:roundrobin,轮询; WRR:Weighted RR,加权轮询; SH:Source Hashing,实现session sticy,源IP地址hash;将来自于同一个IP地址的请求始终发…

    Linux干货 2016-10-30
  • 集中练习4-bash脚本、计划任务

    集中练习4-bash脚本、计划任务

    Linux干货 2017-10-27