热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MySQLBinaryLog事件含义

为什么80%的码农都做不了架构师?binlog的主要用途是归档日志,二进制日志,也称二进制日志,记录对数据发生或潜在发

为什么80%的码农都做不了架构师?>>>   hot3.png

        binlog 的主要用途是归档日志,二进制日志,也称二进制日志,记录对数据发生或潜在发生更改的SQL语句,并以二进制的形式保存在磁盘中。

binlog 文件位置:默认存放位置为数据库文件所在目录下;

binary log 文件中各种事件含义,以下描述简单描述了每个事件类型的含义:

  • UNKNOWN_EVENT

    此事件类型从来都不应该发生。不会写入binary log。如果从二进制日志中读取到不能识别为其他任何的事件,则视为:UNKNOWN_EVENT

  • START_EVENT_V3

    A descriptor event that is written to the beginning of the each binary log file. (In MySQL 4.0 and 4.1, this event is written only to the first binary log file that the server creates after startup.) This event is used in MySQL 3.23 through 4.1 and superseded in MySQL 5.0 by FORMAT_DESCRIPTION_EVENT.

  • QUERY_EVENT

    当更新语句完成时写入。

  • STOP_EVENT

    当 mysqld 停止时写入。

  • ROTATE_EVENT

    当 mysqld 切换到一个新的binary log 文件时写入。switches to a new binary log file. This occurs when someone issues a FLUSH LOGS statement or the current binary log file becomes too large. The maximum size is determined by max_binlog_size.

  • INTVAR_EVENT

    Written every time a statement uses an AUTO_INCREMENT column or the LAST_INSERT_ID() function; precedes other events for the statement. This is written only before a QUERY_EVENT and is not used with row-based logging. An INTVAR_EVENT is written with a "subtype" in the event data part:

    • INSERT_ID_EVENT indicates the value to use for an AUTO_INCREMENT column in the next statement.

    • LAST_INSERT_ID_EVENT indicates the value to use for the LAST_INSERT_ID() function in the next statement.

  • LOAD_EVENT

    Used for LOAD DATA INFILE statements in MySQL 3.23. See LOAD DATA INFILE Events.

  • SLAVE_EVENT

    不曾使用。

  • CREATE_FILE_EVENT

    Used for LOAD DATA INFILE statements in MySQL 4.0 and 4.1. See LOAD DATA INFILE Events.

  • APPEND_BLOCK_EVENT

    Used for LOAD DATA INFILE statements as of MySQL 4.0. See LOAD DATA INFILE Events.

  • EXEC_LOAD_EVENT

    Used for LOAD DATA INFILE statements in 4.0 and 4.1. See LOAD DATA INFILE Events.

  • DELETE_FILE_EVENT

    Used for LOAD DATA INFILE statements as of MySQL 4.0. See LOAD DATA INFILE Events.

  • NEW_LOAD_EVENT

    Used for LOAD DATA INFILE statements in MySQL 4.0 and 4.1. See LOAD DATA INFILE Events.

  • RAND_EVENT

    Written every time a statement uses the RAND() function; precedes other events for the statement. Indicates the seed values to use for generating a random number with RAND() in the next statement. This is written only before a QUERY_EVENT and is not used with row-based logging.

  • USER_VAR_EVENT

    Written every time a statement uses a user variable; precedes other events for the statement. Indicates the value to use for the user variable in the next statement. This is written only before a QUERY_EVENT and is not used with row-based logging.

  • FORMAT_DESCRIPTION_EVENT

    A descriptor event that is written to the beginning of the each binary log file. This event is used as of MySQL 5.0; it supersedes START_EVENT_V3.

  • XID_EVENT

    Generated for a commit of a transaction that modifies one or more tables of an XA-capable storage engine. Normal transactions are implemented by sending aQUERY_EVENT containing a BEGIN statement and a QUERY_EVENT containing a COMMIT statement (or a ROLLBACK statement if the transaction is rolled back).

  • BEGIN_LOAD_QUERY_EVENT

    Used for LOAD DATA INFILE statements as of MySQL 5.0. See LOAD DATA INFILE Events.

  • EXECUTE_LOAD_QUERY_EVENT

    Used for LOAD DATA INFILE statements as of MySQL 5.0. See LOAD DATA INFILE Events.

  • TABLE_MAP_EVENT

    Used for row-based binary logging. This event precedes each row operation event. It maps a table definition to a number, where the table definition consists of database and table names and column definitions. The purpose of this event is to enable replication when a table has different definitions on the master and slave. Row operation events that belong to the same transaction may be grouped into sequences, in which case each such sequence of events begins with a sequence ofTABLE_MAP_EVENT events: one per table used by events in the sequence.

  • PRE_GA_WRITE_ROWS_EVENT

     WRITE_ROWS_EVENT 的过时版本。

  • PRE_GA_UPDATE_ROWS_EVENT

     UPDATE_ROWS_EVENT 的过时版本。

  • PRE_GA_DELETE_ROWS_EVENT

     DELETE_ROWS_EVENT 的过时版本。

  • WRITE_ROWS_EVENT

    用于基于行的binary logging。此事件记录在单表中的插入行。

  • UPDATE_ROWS_EVENT

    用于基于行的binary logging。此事件记录在单表中的更新行。

  • DELETE_ROWS_EVENT

    Used for row-based binary logging. This event logs deletions of rows in a single table.

  • INCIDENT_EVENT

    Used to log an out of the ordinary event that occurred on the master. It notifies the slave that something happened on the master that might cause data to be in an inconsistent state.

  • HEARTBEAT_LOG_EVENT

    master 发消息给 slave 并告知slave master 是存活的。不写入日志文件;


转:https://my.oschina.net/Rayn/blog/898261



推荐阅读
  • 如何撰写适应变化的高效代码:策略与实践
    编写高质量且适应变化的代码是每位程序员的追求。优质代码的关键在于其可维护性和可扩展性。本文将从面向对象编程的角度出发,探讨实现这一目标的具体策略与实践方法,帮助开发者提升代码效率和灵活性。 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 微信小程序实现类似微博的无限回复功能,内置云开发数据库支持
    本文详细介绍了如何利用微信小程序实现类似于微博的无限回复功能,并充分利用了微信云开发的数据库支持。文中不仅提供了关键代码片段,还包含了完整的页面代码,方便开发者按需使用。此外,HTML页面中包含了一些示例图片,开发者可以根据个人喜好进行替换。文章还将展示详细的数据库结构设计,帮助读者更好地理解和实现这一功能。 ... [详细]
  • 本文探讨了 Kafka 集群的高效部署与优化策略。首先介绍了 Kafka 的下载与安装步骤,包括从官方网站获取最新版本的压缩包并进行解压。随后详细讨论了集群配置的最佳实践,涵盖节点选择、网络优化和性能调优等方面,旨在提升系统的稳定性和处理能力。此外,还提供了常见的故障排查方法和监控方案,帮助运维人员更好地管理和维护 Kafka 集群。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 浏览器作为我们日常不可或缺的软件工具,其背后的运作机制却鲜为人知。本文将深入探讨浏览器内核及其版本的演变历程,帮助读者更好地理解这一关键技术组件,揭示其内部运作的奥秘。 ... [详细]
  • 在Linux系统中避免安装MySQL的简易指南
    在Linux系统中避免安装MySQL的简易指南 ... [详细]
  • 在使用 Cacti 进行监控时,发现已运行的转码机未产生流量,导致 Cacti 监控界面显示该转码机处于宕机状态。进一步检查 Cacti 日志,发现数据库中存在 SQL 查询失败的问题,错误代码为 145。此问题可能是由于数据库表损坏或索引失效所致,建议对相关表进行修复操作以恢复监控功能。 ... [详细]
  • Python错误重试让多少开发者头疼?高效解决方案出炉
    ### 优化后的摘要在处理 Python 开发中的错误重试问题时,许多开发者常常感到困扰。为了应对这一挑战,`tenacity` 库提供了一种高效的解决方案。首先,通过 `pip install tenacity` 安装该库。使用时,可以通过简单的规则配置重试策略。例如,可以设置多个重试条件,使用 `|`(或)和 `&`(与)操作符组合不同的参数,从而实现灵活的错误重试机制。此外,`tenacity` 还支持自定义等待时间、重试次数和异常处理,为开发者提供了强大的工具来提高代码的健壮性和可靠性。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 本文介绍了如何利用Struts1框架构建一个简易的四则运算计算器。通过采用DispatchAction来处理不同类型的计算请求,并使用动态Form来优化开发流程,确保代码的简洁性和可维护性。同时,系统提供了用户友好的错误提示,以增强用户体验。 ... [详细]
  • 利用ZFS和Gluster实现分布式存储系统的高效迁移与应用
    本文探讨了在Ubuntu 18.04系统中利用ZFS和Gluster文件系统实现分布式存储系统的高效迁移与应用。通过详细的技术分析和实践案例,展示了这两种文件系统在数据迁移、高可用性和性能优化方面的优势,为分布式存储系统的部署和管理提供了宝贵的参考。 ... [详细]
  • 阿里云MySQL与Oracle数据库的主从复制技术详解 ... [详细]
  • 本文介绍了如何在iOS平台上使用GLSL着色器将YV12格式的视频帧数据转换为RGB格式,并展示了转换后的图像效果。通过详细的技术实现步骤和代码示例,读者可以轻松掌握这一过程,适用于需要进行视频处理的应用开发。 ... [详细]
  • 在Android 4.4系统中,通过使用 `Intent` 对象并设置动作 `ACTION_GET_CONTENT` 或 `ACTION_OPEN_DOCUMENT`,可以从相册中选择图片并获取其路径。具体实现时,需要为 `Intent` 添加相应的类别,并处理返回的 Uri 以提取图片的文件路径。此方法适用于需要从用户相册中选择图片的应用场景,能够确保兼容性和用户体验。 ... [详细]
author-avatar
专业破解王_920
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有