- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
完全错误:
Warning: Unsafe statement written to the binary log using statement format
since BINLOG_FORMAT = STATEMENT. Statements writing to a table with an
auto-increment column after selecting from another table are unsafe because
the order in which rows are retrieved determines what (if any) rows will be
written. This order cannot be predicted and may differ on master and the
slave.
我似乎只在尝试从 Django 运行原始 SQL 时收到此错误。如果我从 MySQL CLI 客户端运行 SQL,我不会收到相同的错误。这是 SQL:
UPDATE picture p
JOIN (
SELECT @inc := @inc + 1 AS new_weight, id
FROM (SELECT @inc := 0) temp, (
SELECT id FROM picture
WHERE album_id = 5
ORDER BY taken_date ASC
) AS pw
) AS pw
ON p.id = pw.id
SET p.weight = pw.new_weight;
这样做的目的是对记录进行排序,并将序号应用于权重,以便将此排序保留在数据库中。
我已尝试在客户端中运行此命令以查看是否可以复制该问题,但它仍然可以成功运行:
mysql> SET GLOBAL binlog_format = 'STATEMENT';
此外,解决或重写 SQL 以处理此约束也很重要,因为最终应用程序几乎肯定会跨主从数据库设置运行。
*编辑:在阅读了更多 binlog_format
之后,似乎 ROW 或 MIXED 完全可以接受,但我主要担心的是无法在 MySQL CLI 中按顺序复制此问题测试 MIXED/ROW 是否能解决这个问题?
最佳答案
没有办法重写 sql 以不抛出该错误消息。任何类型的订单都会抛出该消息,因为从服务器可能具有与主服务器不同的行。 mixed
将解决它,因为它只会在使用 statement
复制语句不安全时切换到基于 row
的复制。
关于mysql - 警告 : Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17057593/
我正在使用 SAF(存储访问框架)将文件写入 SD 卡。在 Marshmallow 上,文件的写入和更新实际上有很大的延迟(大约 10 秒)。 当我使用例如: android.support.v4.p
我不明白的意思 The original Java AWT was implemented by having widgets written in Java which delegated to p
我的 ASP.NET Core 应用程序使用“开箱即用”的外部登录身份验证。我想要实现的 - 在 facebook 挑战中,我想包装重定向 url 并将其作为 json 返回以在 jquery 前端使
我正在尝试安装 MySql Workbench 并下载 mysql-installer-web-community-5.7.13.0.msi。当我运行此文件时出现以下错误: "The instruct
考虑以下代码: #include int main() { int i = 0; printf("hello%n%d\n", &i, i); } 为什么打印hello0而不是hello5?
我是一名 Java/C++ 程序员,Ruby 是我的第一门脚本语言。有时我发现我在某些领域没有尽可能高效地使用它,例如: 目标:仅解析文件中的某些行。我要使用的模式是有一条非常大的线,尺寸大于 15,
尝试执行命令“vagrant up”时收到以下错误: --------------------------- VBoxHeadless.exe - Application Error --------
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 7 年前。 Improve th
我正在创建一个程序,需要从仍在写入的文件中读取。 主要问题是:如果使用在单独线程上运行的 InputStream 和 OutputStream 类执行读取和写入,有什么问题和问题为了防止数据损坏,我需
问题 我有一个 HTML5/JavaScript 应用程序。我想将它提交给苹果商店。 有没有办法将它嵌入到 Safari/Webkit 中,并让 apple 接受它作为应用程序? 上下文 这个项目最初
我正在文件 btree.h 中编写一个 btree 实现类“btree”,并在文件 btree_iterator.h 中使用外部迭代器类“btree_iterator”在 btree.tem 中实现,
我正在使用 Python 3.4 将 unicode 字符串写入文件。文件写入后,打开一看,完全是另外一组字符。 代码:- # -*- coding: utf-8 -*- with open('tes
我们编写的应用程序在 XP 中运行良好,但在迁移到 Vista 和 Windows 7 时遇到了严重的问题,这可能是由于用户数据的写入位置。 用例是这样的:个人用户需要登录机器并使用它来获取数据。主管
假设我有一个名为“REVIEWS”的表 此表包含客户为各种产品撰写的评论。 我希望能够对每个客户撰写的所有评论进行“计数”,所以我写: SELECT count(*) AS counter FROM
我正在使用一个应用程序创建一个 csv 文件,然后我想导出并在手机上阅读。但是,我将其保存到的位置不可见,并且难以传输。 有没有办法将其保存到更容易访问的位置,例如电话上的/documents ? (
我写了一个小工具,用于将给定目录下的所有目录和文件名打印到文件中。程序编译正常,但运行程序后,文件未写入。这对我来说看起来很奇怪。程序代码如下所示。 在代码的第49行,当我仅使用file作为方法的参数
所以我在 c 中有以下枚举方法: enum enum_type GetInfo (int socket, unsigned char *data) { } 在 api 中我可以找到这个: 接收到的数据
我不明白下面的 C 转换函数是如何工作的(以及为什么要这样写);我相当确定原作者知道他在做什么: typedef union TValue { uint64_t u64; double n;
这个问题已经有答案了: Node.js - Find home directory in platform agnostic way (6 个回答) 已关闭 3 年前。 我正在使用fs文件系统 JS
我正在构建一个 rest api,它从其他 api 收集数据,用它做一些逻辑并发送回客户端: 我的主课: public class Main { public static void main(Str
我是一名优秀的程序员,十分优秀!