关于spring中使用mysql数据库明明配置了事务管理却失效的原因及解决方法

直接点一针见血:你mysql数据库是否使用的MyISAM存储引擎?是的话,恭喜你:原因就是因为MyISAM引擎是不支持事务的

有人跟我说Spring+mybatis事务回滚无效。刚刚开始我以为是他事务配置或者AOP切面定义有问题!谁知道,查了很久原因,最后才知道,居然是因为他使用的mysql而且还用的Mysql的MyISAM引擎。

所以,以后如果还有人问你无法管理事务的问题,如果他还是用的Mysql,就先问他用的数据库存储引擎是什么吧,谢谢,使用mysql,只有InnoDB存储引擎支持事务处理


    

-- 查看mysql安装了哪些插件及是否安装了innodb插件。
show plugins;
-- 查看mysql现在已提供什么存储引擎:
show engines;
-- 查看mysql当前默认的存储引擎:
show variables like '%storage_engine%';
-- 看某个表用了什么引擎(在显示结果里参数engine后面的就表示该表当前用的存储引擎),及建表语句:
show create table s_dic;

解决方法:将MyISAM存储引擎转成InnoDB即可,这个很简单,网上一堆教程

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值