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

相关推荐

  • 马哥网络教育班21期-第一周课程练习

      一、计算机的组成及其功能 1.1计算机的组成      1946年美籍匈牙利科学家冯·诺依曼提出存储程序原理,把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式存储,并确定了存储程序计算机的五大组成部分,分别为运算器、控制器、存储器、输入设备和输出设备。 1.2计算机的组成 控制器(Contro…

    Linux干货 2016-07-12
  • N28-第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
    2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
    3、请使用命令行展开功能来完成以下练习:
    (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
    (2)、创建/tmp/mylinux目录下的:
    mylinux/
    ├── bin
    ├── boot
    │   └── grub
    ├── dev
    ├── etc
    │   ├── rc.d
    │   │   └── init.d
    │   └── sysconfig
    │   └── network-scripts
    ├── lib
    │   └── modules
    ├── lib64
    ├── proc
    ├── sbin
    ├── sys
    ├── tmp
    ├── usr
    │   └── local
    │   ├── bin
    │   └── sbin
    └── var
    ├── lock
    ├── log
    └── run
    4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
    5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
    6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
    7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
    8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
    9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
    10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
    11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
    12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

    Linux干货 2017-12-11
  • 解决线上服务器httpd无法反向代理resin的解决方法

    一、简述   前两天有后端的小伙伴跟我反映说使用httpd反向代理resin时遇到的问题,在做网站管理后台的时候,发起的http的put,delete的请求无法经由resin传递到后面的dbserver。当时的第一反应就是httpd的反向代理设置出现的问题,但是关于httpd反代resin的内容在网上机会搜索不到。于是,查看httpd反代tomca…

    Linux干货 2017-01-11
  • grep 整理

    grep: Linux上文本处理三剑客 grep:文本过滤(模式:pattern)工具;  grep: Global search REgular expression and Print out the line. 作用:文本搜索工具,根据用户指定的“模式”…

    Linux干货 2016-10-09
  • 计算机基础

    一,计算机的组成        计算机由硬件(hardware)系统和软件(software)系统两大部分组成的         硬件系统是由主机和外部设备 二,计算机硬件 计算机: 是一种能接受和存储信息,并按照存储在其内部的程序对海量数据进行自动,高速地 处理, 然后把 处理的结果输出的现代化智能电子设备  发展历史       第一代计算机(1946-…

    Linux干货 2018-03-26
  • 程序包管理:rpm、yum以及(make)源代码编译安装

    程序包管理:rpm、yum以及(make)源代码编译安装 在Linux上安装程序一般都有三种方法:源代码编译安装,rpm包安装和rpm包的前端安装yum, (rpm,和yum程序包管理器是针对CentOS6平台的) 程序包管理方式都大同小异:  源代码–>目标二进制格式(二进制程序、库文件、配置文件、帮助文件)–&gt…

    Linux干货 2017-01-10