MySQL升5.6引发的问题

昨天项目MySQL数据库从5.5升级到5.6,导致部分表无法进行更新操作,报如下错误:

When @@GLOBAL.ENFORCE_GTID_CONSISTENCY = 1, updates to non-transactional tables can only be done in either autocommitted statements or single-statement transactions, and never in the same statement as updates to transactional tables.

MySQL官方给出的解决办法:

“updates to tables using nontransactional storage engines such as MyISAM cannot be made in the same statement or transaction as updates to tables using transactional storage engines such as InnoDB.”

https://dev.mysql.com/doc/refman/5.6/en/replication-gtids-restrictions.html

参考文章:

http://blog.webyog.com/2014/05/12/suddenly-myisam-became-transaction-aware

时间: 2025-02-01 14:54:29

MySQL升5.6引发的问题的相关文章

MySQL 事务RUNNING状态引发的Transaction timed out: deadline问题

前言:    朋友说简单的查询导致Transaction timed out: deadline问题,怀疑是数据库表锁了,1,应用故障描述Deadline问题: --- The error occurred in META-INF/ibatis/ITEM_sqlmap.xml.  --- The error occurred while executing query.  --- Check the      SELECT      I.ID,        I.SHOP_ID,        

由MySQL登录不了引发的一些问题

经手的项目按照老板的意思,想搞一个类似于个人学习版的版本给客户试用.计划通过网络将安装包发布出去,让客户自行下载安装使用,碰到个问题:数据库的安装.因为后台使用了MS SQLServer 2008/2000数据库存储文件.图片等数据,但是MS SQLServer的安装包较大,让客户下载也是件麻烦的事. 1. 试过用MSDE2000, 按微软给的说法是Windows Vista操作系统不提供兼容支持了(不知道只是Vista不支持,还是说从Vista开始后续高版本的操作系统都不支持?)而现在基本上是

MySQL GROUP_CONCAT长度限制引发的一场灾难

GROUP_CONCAT函数是对查处的分组数据对于分组列相同的数据合并成一列用逗号隔开的函数. 但是该函数的长度有个默认限制,默认是1024个字符,超过就会截断,从而导致用count统计GROUP_CONCAT的数量与实际打印GROUP_CONCAT具体值得数量不一致. 在代码排查的过程中Mybatis从数据库拿出来的值始终小于1024个字符,最终解决方法如下: 修改MySQL的一直参数GLOBAL group_concat_max_len: set GLOBAL group_concat_ma

mysql开启skip-name-resolve 导致[email protected](localhost)访问引发的ERROR 1045 (28000)错误解决方案

为什么配置skip-name-resolve? 由于mysql -h${ip} 远程访问速度过慢, mysql -h172.16.66.171 -uroot -p123456 根据网友经验(https://www.cnblogs.com/yjf512/p/3803762.html), vi /etc/my.cnf [mysqld] skip-name-resolve 重启mysql,发现远程访问msyql速度上来了,解决问题. 然而引发了新的问题: 但是却发现msyql(mysql -h127.

极客时间-MySQL实战45讲(实践篇)2

20 | 幻读是什么,幻读有什么问题? InnoDB 的默认事务隔离级别是可重复读--rr 快照读(snapshot read) 单纯的select操作,不包括上述 select ... lock in share mode, select ... for update. Read Committed隔离级别:每次select都生成一个快照读. Read Repeatable隔离级别:开启事务后第一个select语句才是快照读的地方,而不是一开启事务就快照读. 快照读的实现方式:undolog和

LFI & RFI & PHP封装协议之安全问题研究

目录 1. 文件包含的基本概念 2. LFI(Local File Include) 3. RFI(Remote File Include) 4. PHP中的封装协议(伪协议).PHP的流式文件操作模式所带来的问题 1. 文件包含的基本概念 严格来说,文件包含漏洞是"代码注入"的一种."代码注入"这种攻击,其原理就是注入一段用户能控制的脚本或代码,并让服务器端执行."代码注入"的典型代码就是文件包含(File Inclusion),我的理解是叫&

红色警戒2修改器原理百科(五)

都第五篇了,好长,这是个坑,没多少人看为什么要写这个,我就当是为了部落--还有什么没写?选中单位3星,随处建造(优雅),科技全开,转移单位所属(优雅),立即胜利(这个这个不怎么好意思发,我自己没找到).还有地图其他玩家数据,当然还有我还没试过也可以写的出售建筑CALL,自动修理,枚举地图上全部单位(然后可以配合出售建筑,卖掉全部不属于自己的)还要写几篇才能完结呢..还还有心灵探测(从来不想实现,造个心灵探测器会死),奶牛总统等特殊兵种(红警全能王谷子猫绿色珍藏版中的自定义函数好长好复杂,红色警戒

mysql外键引发的锁等待

有这样两条sql: insert table_a (bId) value(1); -- sql-1  update table_b set b.xx=123 where b.id =1; -- sql-2 其中,table_a的字段bId是个外键:外键关联的正是table_b的id字段. 在mysql上执行这两条数据时,sql-1会锁住sql-2.我们的系统中,为这一个锁,发生了不知道多少的锁等待,更引发了不知道多少的死锁. 特此备忘.

Navicat连接mysql出现2003——can't connect to mysql server on localhost(10061)引发的思考)

一:起因 (0)最近由于病了一场,闲暇时间(即生病期间)一直思考如下问题: 思考一:如何做一名合格的程序猿,怎么才能成为一名名副其实的程序猿? 思考二:还有就是到底,值不值得熬夜加班去搞研发(或转型或做相对轻松的其它IT岗位~~~对于这个问题,我一时无法给出答案,希望各位帮我分析一下,不胜感激!!!) (1)如果没有做到这一点你怎么能说,你是一名合格的程序猿 —— 安装程序或者运行开发程序... http://d.dxy.cn/detail/7870458http://d.dxy.cn/deta