spring 事务没有回滚与mysql数据库引擎

今天自己弄了一个单元测试, 测试一下 spring + mybatis, 结果在插入数据时, 故意抛了一个异常, 发现数据库仍然插入成功, 没有回滚, 找了半天, 发现配置没有什么错误, spring 事务没有回滚与mysql数据库引擎_第1张图片spring 事务没有回滚与mysql数据库引擎_第2张图片


最后突然想起来, 好像 mysql 只有 InnoDB 引擎支持事务, 赶紧插一下, 果然, 数据库默认引擎竟然是 MyISAM , 赶紧修改, 重启服务后就好了. 具体查询和修改方法如下"


查询数据库引擎:  SHOW ENGINES; 结果如下

spring 事务没有回滚与mysql数据库引擎_第3张图片

修改数据库默认引擎方法: 

linux 下在 etc/my.cnf 最下面加上 default-storage-engine=InnoDB,  windows 下修改 my.ini, 加上上面那句话

查看某个表的语句:  show table create ***(表名); 

修改已创建的表的引擎: alter talbe *** type = InnoDB;

你可能感兴趣的:(mysql,数据库,事务)