mariadb日志学习笔记
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日志学习笔记的更多相关文章
- java日志学习笔记
一.日志家族 Log4j一开始就很强大,在jdk自带日志系统之前,apache就曾经尝试把log4j划为java的一部分,不知为何没能成功,sun还是用了自己很弱的日志系统.为了兼容各个日志系统,ap ...
- 四、CentOS 安装mariadb——Linux学习笔记
A)安装及配置 下载mariadb: yum -y install mariadb-server mariadb 开启mariadb服务: systemctl start mariadb.servic ...
- centos下防火墙iptables日志学习笔记
一直找不到日志方面怎么弄,问了同事,同事给了个网址: http://www.thegeekstuff.com/2012/08/iptables-log-packets/ 下面就是我根据这个网址里面的设 ...
- Log4j,Log4j2,logback,slf4j日志学习
日志学习笔记 Log4j Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.数据库等:我们也可以控制每一条日志的输出格式:通过定义每一条 ...
- Log4j,Log4j2,logback,slf4j日志学习(转)
日志学习笔记Log4jLog4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.数据库等:我们也可以控制每一条日志的输出格式:通过定义每一条日志 ...
- Hadoop学习笔记—5.自定义类型处理手机上网日志
转载自http://www.cnblogs.com/edisonchou/p/4288737.html Hadoop学习笔记—5.自定义类型处理手机上网日志 一.测试数据:手机上网日志 1.1 关于这 ...
- Andorid:日常学习笔记(3)——掌握日志工具的使用
Andorid:日常学习笔记(3)——掌握日志工具的使用 使用Android的日志工具Log 方法: Android中的日志工具类为Log,这个类提供了如下方法来供我们打印日志: 使用方法: Log. ...
- SpringBoot学习笔记(13):日志框架
SpringBoot学习笔记(13):日志框架——SL4J 快速开始 说明 SpringBoot底层选用SLF4J和LogBack日志框架. SLF4J的使用 SpringBoot的底层依赖关系 1. ...
- ELK日志分析 学习笔记
(贴一篇之前工作期间整理的elk学习笔记) ELK官网 https://www.elastic.co ELK日志分析系统 学习笔记 概念:ELK = elasticsearch + logstas ...
随机推荐
- try-catch中的finally块
finally块定义在catch的最后,只能出现一次. 无论程序是否出错都会执行的快板!无条件执行
- (easy)LeetCode 202.Happy Number
Write an algorithm to determine if a number is "happy". A happy number is a number defined ...
- (转)adb shell am 的用法
原文地址:http://blog.csdn.net/fulinwsuafcie/article/details/8092459 adb shell am 的功能 adb shell am 使用此命 ...
- 菜鸟-手把手教你把Acegi应用到实际项目中(12)-Run-As认证服务
有这样一些场合,系统用户必须以其他角色身份去操作某些资源.例如,用户A要访问资源B,而用户A拥有的角色为AUTH_USER,资源B访问的角色必须为AUTH_RUN_AS_DATE,那么此时就必须使用户 ...
- 你不知道的JavaScript 二
词法作用域 上次说到作用域,将其定义为一套规则,这套规则用来管理引擎如何在当前作用 域以及嵌套的子作用域中根据标识符名称进行变量查找. 作用域共有两种主要的工作模型.第一种是最为普遍的,被大多数编程语 ...
- DP最长递增字符串
对于最简单DP问题,比如7 9 1 10 3中最长的递增字符串就是7 9 10,所以长度是3. 对于这个问题,就是从第二个开始,让后面的每一个字符都假设作为咱们要找的最长的字符串的最后一个字符,然后从 ...
- Android开发中,那些让你相见恨晚的方法、类或接口
1.getParent().requestDisallowInterceptTouchEvent(true);剥夺父view 对touch 事件的处理权,谁用谁知道. 2.ArgbEvaluator. ...
- 浅谈Java的包装类
一.什么是Java包装类 所谓Java包装类,就是将Java中的8种基本数据类型分别包装成为类的形式.包装类与基本数据类型的对应关系如下表所示. 基本数据类型 包装类 byte Byte short ...
- SASS使用总结
简单用法: 变量 sass中可以定义变量,方便统一修改和维护. //sass style $fontStack: Helvetica, sans-serif; $primaryColor: #333; ...
- SQL基本语句(3) LOAD DATA INFILE
使用LOAD语句批量录入数据 语法: LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name' [REPLACE | IGNOR ...