日志分类:

一、错误日志。

1、在配置文件中的配置是:log-error="DESKTOP-igoodful.err",查看参数的键值对:show variables like 'log_error';

二、二进制日志。

1、记录了对数据库执行更改的所有操作,当然不包含select和show的操作。作用有两个:恢复和复制。

2、二进制日志开关。my.ini配置文件中的配置:log_bin=ON。二进制日志文件默认不开启。开启这个功能大概降低mysql性能的1%,但是提供了恢复和复制功能,值得。也可以直接配置log-bin这个键值对就可以开启二进制日志功能。

3、二进制日志文件名。log-bin=D:\MySQL\Data\igoodfulBinaryLog。其中D:\MySQL\Data路径为全局变量datadir的值,且该日志文件只能在datadir路径下面。这里设置的二进制文件名为igoodfulBinaryLog,服务器生成的第一个二进制日志文件为igoodfulBinaryLog.000001,以后依次递增,同时在该路径下面还会产生igoodfulBinaryLog.index文件来记录所有二进制日志文件名的全路径名。每次启动mysql服务都会生成一个二进制日志文件。如下图:

4、配置二进制日志文件的记录格式。my.ini配置文件中的配置:binlog-format=row/statement/mixed。基于行/语句/两者的混合。默认值是statement,建议mixed。statement形式则记录的是逻辑sql语句,而row则是以行记录,mixed则是两者的混合。

5、配置二进制日志文件大小的最大值。my.ini配置文件中的配置:max_binlog_size=512M。单位可以为K/M/G。查看:show variables like 'max_binlog_size';当二进制文件的大小达到这个最大值后会自动新建下一个二进制文件。限制单个二进制文件的大小。当记录的日志文件大小达到最大值后会新建一个日志文件;当重启mysql服务时也会新建一个日志;当运行flush logs也会新建一个日志文件。

6、二进制日志文件自动逾期清除功能。my.ini配置文件中的配置:expire_logs_days=2;

7、二进制日志文件的查看。mysqlbinlog  D:\MySQL\Data\igoodfulBinaryLog.000180 > a.txt

8、记录了对数据库执行更改的所有操作,当然不包含select和show的操作。

9、显示服务器的所有二进制文件名。show binary logs;

10、

三、慢查询日志。

1、慢查询开关。my.ini配置文件中的配置:slow-query-log=1。

1、慢查询时间限定。my.ini配置文件中的配置:long_query_time=10。查看参数:show variables like '%long_query_time%';

2、没有索引的SQL是否记录。my.ini配置文件中的配置:log_queries_not_using_indexes=1。查看参数:show variables like '%log_queries_not_using_indexes%'

四、查询日志。

1、记录了所有对mysql数据库请求的信息,不论这些请求的执行是否正确。

2、查询日志开关。my.ini配置文件中的配置:general-log=1。

3、查询日志文件名。my.ini配置文件中的配置:general_log_file="DESKTOP-igoodful.log"。

五、pid文件。

1、mysql服务的进程pid文件名。my.ini配置文件中的配置:pid_file=D:\MySQL\Data\igoodful.pid

六、表结构定义文件。

1、任何存储引擎中的一个表都有一个以frm结尾的表结构定义文件,该文件记录了表的结构。

七、重做日志文件。事务机制根源。

1、记录了针对innodb存储引擎的事务日志。

2、重做日志文件存放位置。my.ini配置文件中的配置为:innodb_log_group_home_dir=D:\MySQL\Data。默认值为datadir全局变量代表的路径。

2、文件名。有两个文件,分别是ib_logfile0和ib_logfile1。路径都是在datadir全局变量代表的路径。

3、重做日志文件大小。my.ini配置文件中的配置为:innodb_log_file_size=512M。如下面第5后面的图所示。

4、重做日志文件组的数量。默认为1,表示只有一个租

5、一个重做日志文件组中的重做日志文件的数量。my.ini配置文件中的配置为:innodb_log_files_in_group=3。默认值为2。如下为设置成3,表示三个文件。从0开始自增。

6、

八、表空间文件。(存放表的数据、索引、插入缓存信息、表的内部数据字典,其余信息放在默认表空间中)(针对innodb存储引擎)

1、独立表空间配置,即每个表一个独立的表空间,文件名=表名+ibd后缀,如user表,则user表的表空间文件名为user.ibd。my.ini配置文件中的配置:innodb_file_per_table=1。因此,任何一个表的信息存放在frm文件、ibd文件、ibdata1文件中。

2、innodb存储引擎有一个共享表空间文件。文件名是ibdata1。如果不设置innodb_file_per_table=1,则所有数据都会放在该文件。设置后就分担一部分数据到各自的ibd文件中去。就算启用了innodb_file_per_table=1,该文件还是不断地增加。

3、表空间结构图如下。一个表空间由分散的页和段组成,比如数据段,索引段、回滚段等,有的对象是由页组成;一个区由64个连续的页组成,一个页大小为16KB,即一个区为1M。innodb存储引擎每次最多能够申请到4个区。启用了innodb_file_per_table=1时,新建的一个表,如果不存放任何数据进去,那么该表的表空间文件(表名.ibd文件)默认大小是96K。因此空表看该文件大小是不是96K就可以判断。而在每个段开始位置处有32个页大小的碎片页来存放数据。只有当这些页使用完后才是64个连续页的申请,即1M的申请。innodb的页大小不可更改,只能是16KB大小。常见的页类型有数据页,事务数据页、系统页,undo页,插入缓冲位图页,插入缓冲空闲列表页,压缩的二进制大对象页,未压缩的二进制大对象页。行,数据库是面向行的,数据是按照按行来存储的,每一页存放的行是有限制的,最多能够存放16KB/2 - 200=7992行。一个页保存的是一行一行的记录。

4、

七、表空间文件。

七、表空间文件。

七、表空间文件。

七、表空间文件。

七、表空间文件。

mysql日志详解的更多相关文章

  1. MySQL 日志详解

    一.MySQL 日志分类 MySQL 日志主要包含:错误日志.查询日志.慢查询日志.事务日志.二进制日志. 错误日志: -log-err (记录启动.运行.停止 MySQL 服务时出现的信息) 查询日 ...

  2. MySQL日志文件之错误日志和慢查询日志详解

    今天天气又开始变得很热了,虽然很热很浮躁,但是不能不学习,我在北京向各位问好.今天给大家分享一点关于数据库日志方面的东西,因为日志不仅讨厌而且还很重要,在开发中时常免不了与它的亲密接触,就在前几天公司 ...

  3. MySQL配置文件详解

    MYSQL 配置文件详解 “全局缓存”.“线程缓存”,全局缓存是所有线程共享,线程缓存是每个线程连接上数据时创建一个线程(如果没有设置线程池),假如有200连接.那就是200个线程,如果参数设定值是1 ...

  4. MySQL权限详解

    MySQL权限级别介绍 MySQL权限级别 全局性的管理权限,作用于整个MySQL实例级别 数据库级别的权限,作用于某个指定的数据库上或者所有的数据库上 数据库对象级别的权限,作用于指定的数据库对象上 ...

  5. MySQL Binlog详解

    MySQL Binlog详解 Mysql的binlog日志作用是用来记录mysql内部增删改查等对mysql数据库有更新的内容的记录(对数据库的改动),对数据库的查询select或show等不会被bi ...

  6. MySQL状态变量详解

    MySQL状态变量详解 mysql的状态变量(status variables)记录的mysql服务器的运行状态信息.查看语法如下: SHOW [GLOBAL | SESSION] STATUS; S ...

  7. MySQL程序之mysql参数详解

    MySQL程序之mysql参数详解 mysql 是一个命令行客户程序,用于交互式或以批处理模式执行SQL语句 用法: mysql [OPTIONS] [database] 参数: 1.-? --hel ...

  8. springboot快速入门(二)——项目属性配置(日志详解)

    一.概述 application.properties就是springboot的属性配置文件 在使用spring boot过程中,可以发现项目中只需要极少的配置就能完成相应的功能,这归功于spring ...

  9. MySQL 数据类型 详解

    MySQL 数据类型 详解 MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数.许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小的数据,并且 My ...

随机推荐

  1. 服务器部署nginx报错 nginx: [warn] conflicting server name "localhost" on 0.0.0.0:80, ignored

    nginx: [warn] conflicting server name "localhost" on 0.0.0.0:80, ignored 修改nginx配置参数后,使用ng ...

  2. Java环境变量配置错误

    1,由于Java的环境变量配置错误,导致用到Java的编译过程中出现错误: 改正办法: wget http://download.oracle.com/otn-pub/java/jdk/8u181-b ...

  3. Linux性能监控命令——sar

    介绍 sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的 ...

  4. 【转】UTF16和UTF8什么区别?

    这是一篇程序员写给程序员的趣味读物.所谓趣味是指可以比较轻松地了解一些原来不清楚的概念,增进知识,类似于打RPG游戏的升级.整理这篇文章的动机是两个问题: 问题一: 使用Windows记事本的“另存为 ...

  5. JAVAORM框架之Mybatis (Ibatis) 详解

    目录 Mybatis基础概念 Mybatis开放方式演进 Mybatis框架核心要点 关联查询 延迟加载(懒加载) 动态SQL Mybatis缓存 Mybatis逆向工程 PageHelper分页插件 ...

  6. centos6.9环境下JDK安装部署

    1.准备jdk安装文件: 这里我使用的是 jdk-7u79-linux-x64.tar.gz 2.在 /usr/local 目录下创建 sotfware目录,并上传JDK文件: 解压文件并修改文件夹为 ...

  7. Python之shutil模块

    shutil 高级的 文件,文件夹,压缩包 处理模块 正常把一个文件的内容拷贝到另外一个文件 s = file("test.py")d = file("test_copy ...

  8. 2018牛客网暑期ACM多校训练营(第四场) A - Ternary String - [欧拉降幂公式][扩展欧拉定理]

    题目链接:https://www.nowcoder.com/acm/contest/142/A 题目描述 A ternary string is a sequence of digits, where ...

  9. CodeForces - 55C Pie or die 想法题(猜程序)

    http://codeforces.com/problemset/problem/55/C 题意:一个博弈. 题解:瞎猜,目前不清楚原理 #include<iostream> #inclu ...

  10. 从url到请求 再到页面生成

    百度面试 从url到请求 再到页面生成 - MartinDing - 博客园 https://www.cnblogs.com/martinding/p/7458723.html