Mysql日志管理讲析-创新互联

下文内容主要给大家带来Mysql日志管理讲析,这里所讲到的知识,与书籍略有不同,都是创新互联专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。

10年积累的成都做网站、网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站后付款的网站建设流程,更有阜宁免费网站建设让你可以放心的选择与我们合作。

一、简介

由MySQL AB公司开发,是最流行的开放源码SQL数据库管理系统,主要特点:

  • 1、是一种数据库管理系统

  • 2、是一种关联数据库管理系统

  • 3、是一种开放源码软件,且有大量可用的共享MySQL软件

  • 4、MySQL数据库云服务器具有快速、可靠和易于使用的特点

  • 5、MySQL服务器工作在客户端/服务器模式下,或嵌入式系统中

  • Mysql日志管理讲析

  • InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建。这样,表的大小就能超过单独文件的大容量。表空间可包括原始磁盘分区,从而使得很大的表成为可能。表空间的大容量为64TB。

二、MySQL日志管理

 2.1.日志全局变量

mysql> SHOW GLOBAL VARIABLES LIKE '%log%';  #查看关于log的全局变量

+--------------------------+-------------------------+

| Variable_name    | Value   |

+--------------------------+-------------------------+

| back_log      | 50  |

| binlog_cache_size    | 32768  | 二进制日志1

| binlog_direct_non_transactional_updates | OFF |

| binlog_format     | MIXED  | 二进制日志2

| binlog_stmt_cache_size  | 32768  | 二进制日志3

| expire_logs_days     | 0  | 二进制日志4

| general_log  一般查询日志1 | OFF |

| general_log_file 一般查询日志2 | /mydata/data/lamp.log |

| innodb_flush_log_at_trx_commit | 1  |

| innodb_locks_unsafe_for_binlog | OFF  |

| innodb_log_buffer_size    | 8388608 |

| innodb_log_file_size    | 5242880 |

| innodb_log_files_in_group   | 2  |

| innodb_log_group_home_dir   | ./  |

| innodb_mirrored_log_groups  | 1  |

| log    一般查询日志3   | OFF  |

| log_bin         | ON  | 二进制日志5

| log_bin_trust_function_creators | OFF  | 二进制日志6

| log_error   错误日志1  | /mydata/data/lamp.err |

| log_output  一般查询日志4  慢查询日志1 | FILE |

| log_queries_not_using_indexes  慢查询日志2| OFF |

| log_slave_updates     | OFF  |

| log_slow_queries     | OFF  |

| log_warnings  错误日志2  | 1  |

| max_binlog_cache_size |18446744073709547520 | 二进制日志7

| max_binlog_size      | 1073741824 | 二进制日志8

| max_binlog_stmt_cache_size|18446744073709547520 | 二进制日志9

| max_relay_log_size     | 0  | 中继日志1

| relay_log        |  | 中继日志2

| relay_log_index      |  | 中继日志3

| relay_log_info_file    | relay-log.info | 中继日志4

| relay_log_purge     | ON  | 中继日志5

| relay_log_recovery    | OFF  | 中继日志6

| relay_log_space_limit    |  0  | 中继日志7

| slow_query_log   慢查询日志3 |  OFF  |

| slow_query_log_file 慢查询日志4|/mydata/data/lamp-slow.log |

| sql_log_bin      | ON  | 二进制日志10

| sql_log_off      | OFF | 二进制日志11

| sync_binlog      | 0  | 二进制日志12

| sync_relay_log     | 0  | 中继日志8

| sync_relay_log_info   | 0  | 中继日志9

+------------------------+-------------------+

41 rows in set (0.00 sec)

 2.2. 日志分类

 MySQL有几个不同的日志文件,可以帮助你找出mysqld内部发生的事情:

  1. 错误日志   记录启动、运行或停止时出现的问题

  2. 一般查询日志  记录建立的客户端连接和执行的语句

  3. 慢查询日志   记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询

  4. 二进制日志   记录所有更改数据的语句。主要用于复制和即时点恢复

  5. 中继日志

  6. 事务日志   记录InnoDB等支持事务的存储引擎执行事务时产生的日志

  7. 滚动日志

  默认情况下,所有日志创建于mysqld数据目录中。通过刷新日志,你可以强制 mysqld来关闭和重新打开日志文件(或者在某些情况下切换到一个新的日志)。当你执行一个FLUSH LOGS语句或执行mysqladmin flush-logs或mysqladmin refresh时,出现日志刷新。如果你正使用MySQL复制功能,从复制服务器将维护更多日志文件,被称为接替日志。

 2.3. 日志详解

  2.3.1. 错误日志 (默认是开启)

 在对应的数据目录中,以主机名+.err命名的文件,错误日志记录的信息类型:

  •  2.3.1.1. 记录服务器运行中产生的错误信息

  •  2.3.1.2. 记录服务在启动和停止是所产生的信息

  •  2.3.1.3. 在从服务器上启动复制进程时,复制进程的信息也会被记录

  •  2.3.1.4. 记录event事件错误日志警告信息

配置mysql的主配置文件:

log_error =/mydata/data/mysql.test.com.err

#指定错误日志的位置,默认是在数据目录下,这个位置mysql用户必须有写权限

log_warning = {0|1}

#默认开启,服务器运行中的警告日志也会记录在错误日志中

  2.3.2. 一般查询日志 (默认是关闭)

        对除慢查日志中记录的查询信息外,将都记录下来,这将对服务器产生大量压力,

    故繁忙的服务器应关闭这个日志与查询日志相关的变量。

log = {ON|OFF}#是否启用查询日志,该指令在mysq5.6中已废弃

general_log = {ON|OFF}#启动或关闭查询日志,默认是关闭的

general_log_file =/mydata/data/mysql.log#指定日志位置,默认在数据目录下

log_output = {TABLE|FILE|NONE}

   #指定存放查询日志的位置,可以放在文件中,也可以放在数据库的表中,放在表中比放在文件中更容易查看。如果组合中出现了NONE,那么其它设定都将失效,且无论是否启用日志功能,也不会记录任何相关的日志信息

  2.3.3. 慢查询日志(默认是关闭)

 默认关闭状态,记录下来查询时间超过设定时长的查询,这些查询日志将被慢查日志记录下来

slow_query_log = {ON | OFF}#开启慢慢查询日志,默认是关闭的

slow_query_log_file =/mydata/data/mysql-slow.log

          #慢查询日志的存放位置,默认在数据目录下

log_query_time = 10#定义默认的时长,默认时长为10秒

log_query_not_using_indexes = {ON|OFF}

         #是否将没有使用索引的查询操作记录到慢查询日志

log_output = {TABLE|FILE|NONE}   

#定义一般查询日志和慢查询日志的保存方式,默认为FILE,也可以TABLE及FILE的组合(用逗号隔开),若组合中出现了NONE,那其它设定都将失效,且无论是否启用日志功能,也不会记录任何相关日志信息

  2.3.4. 二进制日志 (默认是开启)

  精确记录用户对数据库中的数据进行操作的命令操作的数据对象,及任何引起或可能引起数据库变化的操作。

2.3.4.1. 二进制日志文件的作用:

  • 1)提供增量备份的功能;

  • 2)提供数据基于时间点的恢复,这个恢复的时间点可以由用户控制;

  • 3)为mysql的复制架构提供基础,将主服务器的二进制日志复制到从服务器上并执行同样的操作,即可实现数据进行同步;

2.3.4.2. 二进制日志格式:

  • 基于语句  statement

  • 基于行   row

  • 混合方式  mixed

2.3.4.3. 二进制日志事件:

  • position 基于位置

  • datetime 基于时间

2.3.4.4. 二进制日志的查看与删除方式:

mysql>show master status;   #查看当前正在使用的二进制日志

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:Mysql日志管理讲析-创新互联
文章地址:http://pwwzsj.com/article/ecejs.html