问题标签 [mysqlbinlog]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 添加具有默认值的非空列时,是否会在 MySQL 中记录行级 binlog 条目
我想验证我在 MySQL 基于行的复制中注意到的以下行为,以防我们的设置或配置出现特殊情况。打开基于行的复制,并给出名为pets的下表:
任何更新、删除或插入都记录在binlog中。但是,如果我要添加一个具有默认值的非空列,例如
记录更新如下:
我最初期望的行为是每行都会记录一次更新(因为每一行都会发生变化),并且这些更新会出现在binlog中。但是,当添加新列和默认值时,实际上似乎根本没有将行级事件写入binlog。
无论如何,我的问题是:
- 这种行为是预期的,还是表明我们的设置(或我的观察技能)存在一些问题?
- 这种行为是否可以以任何方式配置?
任何信息、链接、资源等将不胜感激。
谢谢,
php - 在不使用 mysqlbinlog 工具的情况下将 mysql binlogs 转换为文本格式
我需要将 mysql binlogs 转换为 PHP 脚本中的文本格式。我知道使用mysqlbinlog
工具将其转换为文本。但我不应该在我的脚本中运行任何系统命令(或任何 shell 命令)。
有没有其他方法可以使用 PHP 来做到这一点?
感谢您的任何帮助。
mysql - 当 log_bin 为 OFF 时删除 log-bin 文件
我在服务器上有很多 mysql-bin 文件(mysql-bin.0001、mysql-bin.0002…),它们占用了很多空间。在我的服务器(MySQL 5.5 Percona)上,log_bin 选项为 OFF。
从 log-bin 目录中删除日志文件是否保存?
mysql - MySql 函数创建语句在 mysql cli 上失败,错误 1418
我有函数 nextval 可以从实时 oracle 数据库到 mysql 获取正确的序列最后一个数字,函数就像这样。
相同的功能在我的带有 mysql 版本 5.7.16 的 Windows 机器上编译得很好,但在我的带有相同 mysql 版本 5.7.16 的 Linux 机器上同样失败。
在这种情况下,我犯了什么男生错误?
PS:我是 MySql 数据库的新手。谢谢
mysql - pt-query-digest:什么是“查询大小”?
我正在使用 pt-query-digest 来分析 mysql binlog。不幸的是,我在 pt-query-digest 文档中找不到关于报告中“查询大小”行的任何描述。我想,这个特性与查询输出大小有关,但它是一个 UPDATE 语句,而不是 SELECT。
它的目的是什么?
mysql - MySQL - 二进制日志文件大小增长超过最大限制
我有一个在 Centos 6 上运行的 MySQL 5.7。我启用了二进制日志,并且没有在我的配置文件中为二进制日志的最大大小提供任何自定义值。默认情况下,参数max_binlog_size = 1073741824相当于 1GB。这意味着,一旦二进制日志达到 1GB 的大小,就应该创建一个新文件。
我在我的服务器中观察到所有二进制日志文件的大小都不同,并且有很多对比,如 200GB、165GB、4GB 等......
当二进制日志文件的最大大小为 1GB 时,为什么会发生这种情况?是否有必要在配置文件中明确提及默认的最大大小?
mysql - master 和 slave 的 sync_binlog 不同
如果 master 和 slave 的 sync_binlog 不同,是否可以。对于我的系统,我可以看到 master 有 sync_binlog=1 和 slave 有 sync_binlog=0
mysql - 为什么 mysqlbinlog 实用程序显示两个值而不是一个?
我正在尝试通过mysqlbinlog
实用程序调查 binlog 中的某些内容。当我添加详细参数时-vv
,我看到INSERT
这部分的查询
@2=-27170 (38366) /* SHORTINT meta=0 nullable=0 is_null=0 */
有谁知道为什么有两个数字?什么数字是真正INSERT
发送到 MySQL 的一部分?
mysql - mysql 复制中断 - binlog 显示 event_type 68
我有一个主/从 MySQL 复制在生产级别上工作一天,但是每天,复制都停止工作。但每件事都说没关系:
显示从属状态;显示 Slave_IO_Running 和 Slave_SQL_Running 为是。
如果我执行:
复制再次工作,“master 后面的秒数”开始下降到零。但我需要找出是什么破坏了复制。
深入挖掘,我发现mysql.log
:
2017-06-17 00:19:48 3084 [注意] 'SQL_SLAVE_SKIP_COUNTER=1' 在 relay_log_file='./mysqld-relay-bin.000055' 执行,relay_log_pos='632837719',master_log_name='mysql-bin.000046' , master_log_pos='632837556' 和新位置在 relay_log_file='./mysqld-relay-bin.000055', relay_log_pos='638878870', master_log_name='mysql-bin.000046', master_log_pos='638878707'
所以我执行了:
结果是:
这是什么"event_type: 68"
?任何线索?
mysql - binlog旋转时mysql查询变得很慢
Mysql版本是5.7.13。
每次 binlog 文件轮换时,所有查询和 dml 都会变得非常缓慢。
服务器“冻结”大约 40 秒。
在慢查询日志中,我只看到提交和系统/会话变量查询(如 select @@session.tx_read_only; )大约需要 20 秒。
==============主服务器my.cnf============ [mysqld]
==============binlog 文件=============
==============mysql慢日志==============