MySQL日志:

  查询日志:query log

  慢查询日志: 查询执行时长超过指定时长的查询操作所记录的日志 slow query log

  错误日志:包含了服务器启动和关闭的正常信息

  二进制日志:包含了所有更新了数据或者已经潜在更新了数据(比如没有匹配任何行的一个DELETE),主要目的是尽可能的将数据库

恢复到数据库故障点,因为二进制日志包含备份后进行的所有更新

  中继日志:relay log 复制架构中,从服务器用于保存从主服务器的二进制日志文件读取到的数据

  事物日志:transaction log(事务型存储引擎自行管理和使用 如Inodb引擎)

查看各项日志是否开启:

general_log = {ON|OFF}: 是否启用查询日志

general_log_file: 当log_output有FILE类型时,日志信息的记录位置

log_output = {TABLE|FILE|NONE} 日志记录类型为表,文件,或者不记录

补充:一般不会记录,因为记录它的价值不大

slow_query_log 慢查询日志是否启用(为了排查问题,必须启动它)

slow_query_log_file 记录慢查询的文件路径

log_slow_query 慢查询是否开启跟slow_query_log没有本质区别

log_error 记录错误日志的文件路径

log_warnings = {1|0}:是否记录警告信息于错误日志中

log_bin 记录二进制日志是否开启

binlog_format 记录二进制日志的格式

max_binlog_size 单个二进制日志文件的大小默认单位为字节(当到达最大值,日志文件就会滚动)

sync_binlog 是否启用:一旦内存中的事务一提交,就将内存中的二进制日志同步到磁盘上,对于高并发事务的系统来

说,“sync_binlog”设置为0和设置为1的系统写入性能差距可能高达5倍甚至更多

查看慢查询日志的指定超时时长,也可以使用select @@global.long_query_time命令查看 两个@@代表服务器级别的变量,单个@

代表用户级别的变量

默认为10秒,使用set global long_query_time= 对此参数设定(临时有效,永久有效要在配置文件中修改)

SHOW {BINARY | MASTER} LOGS:查看主服务器端处于由mysqld维护状态中的二进制日志文件(centos 下yum 安装的mysql

默认没有开启二进制日志,须在/etc/my.cnf配置文件中[mysqld]下添加log_bin=HELLO 开启二进制日志)

vim /etc/my.cnf   service mysqld restart

SHOW BINLOG EVENTS [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]:显示指定的二进制日志文件中的相关事件

Pos 事件开始的位置  End_log_pos下一个事件开始的位置或此事件的结束位置

查看mysql正在使用的二进制日志文件

二进制日志的功能:用于重放日志文件中的事件来生成数据副本

日志记录格式:
基于语句记录;statement

基于行记录;row

混合模式:mixed

查看二进制日志的客户端工具: mysqlbinlog  --start-position=#:从指定的事件位置查看  --stop-position=#:只显示到指定的

事件位置

用法: #mysqlbinlog --start-position=4 HELLO.000001

二进制日志的格式事例:

  # at 19364

  #140829 15:50:07 server id 1  end_log_pos 19486 Query thread_id=13 exec_time=0

  error_code=0

  SET TIMESTAMP=1409298607/*!*/;

  GRANT SELECT ON tdb.* TO tuser@localhost

  /*!*/;

  # at 19486

事件发生的日期和时间;(140829 15:50:07)

事件发生在服务器的标识(server id)

事件的结束位置:(end_log_pos 19486)

事件的类型:(Query)

事件发生时所在的服务器执行此事件的线程的ID:(thread_id=13)

语句的时间戳与将其写入二进制文件中的时间差:(exec_time=0)

错误代码:(error_code=0)

事件内容:(SET TIMESTAMP=1409298607/*!*/;

       GRANT SELECT ON tdb.* TO tuser@localhost)

mariadb日志学习笔记的更多相关文章

  1. java日志学习笔记

    一.日志家族 Log4j一开始就很强大,在jdk自带日志系统之前,apache就曾经尝试把log4j划为java的一部分,不知为何没能成功,sun还是用了自己很弱的日志系统.为了兼容各个日志系统,ap ...

  2. 四、CentOS 安装mariadb——Linux学习笔记

    A)安装及配置 下载mariadb: yum -y install mariadb-server mariadb 开启mariadb服务: systemctl start mariadb.servic ...

  3. centos下防火墙iptables日志学习笔记

    一直找不到日志方面怎么弄,问了同事,同事给了个网址: http://www.thegeekstuff.com/2012/08/iptables-log-packets/ 下面就是我根据这个网址里面的设 ...

  4. Log4j,Log4j2,logback,slf4j日志学习

    日志学习笔记 Log4j Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.数据库等:我们也可以控制每一条日志的输出格式:通过定义每一条 ...

  5. Log4j,Log4j2,logback,slf4j日志学习(转)

    日志学习笔记Log4jLog4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.数据库等:我们也可以控制每一条日志的输出格式:通过定义每一条日志 ...

  6. Hadoop学习笔记—5.自定义类型处理手机上网日志

    转载自http://www.cnblogs.com/edisonchou/p/4288737.html Hadoop学习笔记—5.自定义类型处理手机上网日志 一.测试数据:手机上网日志 1.1 关于这 ...

  7. Andorid:日常学习笔记(3)——掌握日志工具的使用

    Andorid:日常学习笔记(3)——掌握日志工具的使用 使用Android的日志工具Log 方法: Android中的日志工具类为Log,这个类提供了如下方法来供我们打印日志: 使用方法: Log. ...

  8. SpringBoot学习笔记(13):日志框架

    SpringBoot学习笔记(13):日志框架——SL4J 快速开始 说明 SpringBoot底层选用SLF4J和LogBack日志框架. SLF4J的使用 SpringBoot的底层依赖关系 1. ...

  9. ELK日志分析 学习笔记

    (贴一篇之前工作期间整理的elk学习笔记) ELK官网 https://www.elastic.co   ELK日志分析系统 学习笔记 概念:ELK = elasticsearch + logstas ...

随机推荐

  1. eclips中增加对jar包的引用

    http://jingyan.baidu.com/article/ca41422fc76c4a1eae99ed9f.html

  2. oracle 游标笔记

    declare v_x number; v_y number; v_geo clob; cursor cur is select c_x, c_y from t_map_data where c_ty ...

  3. 项目管理: Maven 让事情变得简单

    http://maven.apache.org/,  Maven其实就是为java实现的一个构建工具.他比Ant更高端. 目前,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具.遗 ...

  4. JQuery上传插件uploadify整理(Options)

    下载  现在有两个版本了,我此次使用的依然是Flash版本的,虽然现在绝大部分浏览器都兼容HTMKL5,目前位置,除了做手机项目外,一般我们项目中不允许使用HTML5标签. 属性介绍(Options) ...

  5. python 字典实现类似c的switch case

    #python 字典实现类似c的switch def print_hi(): print('hi') def print_hello(): print('hello') def print_goodb ...

  6. Codeforces Round #218 (Div. 2) D. Vessels

    D. Vessels time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...

  7. Flash图表控件FusionCharts如何自定义图表上的垂直线

    什么是垂直分割线 垂直(或条形图中的水平)分隔线是用来帮助用户分隔数据块的.可以被放置在任何两个数据点,即使是不规则的间隔也可以. <chart caption='Monthly Revenue ...

  8. 慕课网-安卓工程师初养成-3-6 Java中的逻辑运算符

    来源: http://www.imooc.com/code/1301 逻辑运算符主要用于进行逻辑运算.Java 中常用的逻辑运算符如下表所示: 我们可以从“投票选举”的角度理解逻辑运算符: 1. 与: ...

  9. nginx 代理配置文件实例

    安装NGINX前要先安装PCRE正则表达式库: ./configure --prefix=/usr/local/pcre 出现以下错误  (一般./configure即可, 笔者这里是直接./conf ...

  10. epoll在socket通信中的应用

    当服务器需要服务多个客户时,需要使用并发通信,实现并发通信有以下几种方法: 1.在服务器中fork子进程来为每个客户服务  具体可参考http://www.cnblogs.com/ggjucheng/ ...