今天遇到了@Transactional失效问题,检查了很多地方,查到的一些方案都是类似的几步:

首先确认数据库支持事务。即为InnoDB。MyISAM不支持事务。

方案1.@Transactional(rollbackFor=Exception.class)

方案2.异常处理要继承RuntimeException的异常。并且在service上层要继续捕获这个异常并处理

方案3.在service层方法的catch语句中增加:TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();语句,手动回滚,这样上层就无需去处理异常

三种方案都走完了,还不行、、、

然后开始了我的思考、、、mysql引擎在5.1之前默认是MyISAM,之后是InnoDB,我用的5.5,不放心检查了一下数据库

1.show engines;

2.show variables like '%storage_engine%';

都是InnoDB,但是我的@Transactional就是不起作用,emmmmmmm

最后看了一下我的表,

show create table table_name;

表的引擎居然是MyISAM,此时内心、、、、、、、、、、、、、、、、、、、、、、、、、、

把表的引擎改成InnoDB后就正常了。

alter table table_name engine=innodb;

错误原因:用JPA生成表时,给我把表的引擎改成MyISAM了,懒没偷到位、、、、、、、、、、、

结束!

mysql数据库引擎问题相关推荐

  1. mysql数据库引擎介绍

    mysql数据库引擎介绍 你能用的数据库引擎取决于mysql在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HE ...

  2. mysql 数据库引擎

    一.数据库引擎 数据库引擎是用于存储.处理和保护数据的核心服务.利用数据库引擎可控制访问权限并快速处理事务,从而满足企业内大多数需要处理大量数据的应用程序的要求. 使用数据库引擎创建用于联机事务处理或 ...

  3. MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    深入理解MySQL的数据库引擎的类型 作者: 字体:[增加 减小] 类型:转载 本篇文章是对MySQL的数据库引擎的类型进行了详细的分析介绍,需要的朋友参考下   你能用的数据库引擎取决于mysql在 ...

  4. 如何查看mysql数据库的引擎/MySQL数据库引擎详解

    一般情况下,mysql会默认提供多种存储引擎,你可以通过下面的查看: 看你的mysql现在已提供什么存储引擎: mysql> show engines; 看你的mysql当前默认的存储引擎: m ...

  5. MySQL数据库引擎、数据事务与隔离级别

    MySQL数据库引擎 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HEA ...

  6. 几种MySQL数据库引擎优缺点对比

    MySQL数据库引擎 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建.查询.更新和删除数据.不同的存储引擎提供不同的存储机制.索引技巧.锁定水平等功能,使用不同的存 ...

  7. mysql数据库引擎常用面试总结

    一次面试被问到了MySQL的相关问题,一个是对mysql了解多少,引擎有什么,主要区别是什么?第二个被问的更多,给你一个百万级别的表怎么查询优化: 今天整理了一些资料回答第一个问题: 总的思想: My ...

  8. mysql数据库引擎博客_2、MySQL常见数据库引擎及比较?

    摘自: https://www.cnblogs.com/zhuifeng-mayi/p/9265075.html MySQL存储引擎简介 MySQL支持数个存储引擎作为对不同表的类型的处理器.MySQ ...

  9. 阿里云mysql数据库引擎_在阿里云RDS数据库服务器中将MySQL InnoDB引擎表转为压缩格式...

    今年以来将我们以前托管或者租用的服务器全面转向阿里云,除了采用ECS服务器以外,还有一项重要的是采用了RDS数据库服务器,这对于服务的稳定性.各项指标的监控.调优等都有帮助. 不过随着近期更多数据库转 ...

  10. MySQL 数据库 引擎

    MySQL数 据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引 擎:ISAM.MYISAM和HEAP.另外两种类型I ...

最新文章

  1. Centos 7 解压文件
  2. 一键生成表结构说明文档的参考,数据字典生成方式参考
  3. 在JAVA中使用MongoDB
  4. 扒一扒搜索引擎是如何工作的?
  5. 【求推荐】优化SAP使用效率的RPA工具推荐
  6. 深入浅出Mybatis系列(一)---Mybatis入门
  7. html语言head里面的link示例,Html之head部分详解(示例代码)
  8. Spring Integration Java DSL示例
  9. Mvc 学习笔记(一)
  10. 【学习笔记】第二章——进程的定义、组成、组织方式、特征、状态 转换
  11. DT时代释放金融数据价值,驱动金融商业裂变
  12. MFC对话框程序如何添加菜单
  13. Single-Shot Calibration:基于全景基础设施的多相机和多激光雷达之间的外参标定(ICRA2021)...
  14. java根据数据库自动生成代码
  15. 【学习】在Windows10平台使用Docker ToolBox安装docker(一)
  16. WPS(Word)中图注、域的使用基础
  17. vue实现连接打印机功能
  18. VScode全大写快捷键_iPad OS 键盘鼠标深度体验,最全快捷键整理。
  19. 基于CORBA规范的中间件——CORBA基本原理
  20. Javascript 在循环中使用Promise对象

热门文章

  1. 【阅读笔记】《创京东:刘强东亲述创业之路》
  2. 小区停车管理系统(SQL,JDBC)
  3. 原生JS打印插件之jQuery.EasyPrint.js使用文档
  4. 【图像识别】基于人工蜂群算法优化卷积神经网络CNN实现图像分类附matlab代码
  5. 三调 图斑地类面积_国土三调APP-GIS,地理信息,综合管网,地下空间,给水排水,通信管网,燃气管网,智慧旅游,...
  6. OpenPose人体姿态识别项目
  7. 计算机未来职业人生规划目标与行动措施,计算机职业规划书1500字
  8. 怎么用odbc连接mysql数据库连接_怎么用odbc连接mysql数据库
  9. 临时邮件、临时接收手机验证码等好用工具
  10. 织梦dedecms怎么改模板