java代码在开始事务后,先做了一个查询,再insert,此时会报: java.sql.SQLException: could not retrieve transation read-only status server

摘要:
解决过程:查看mysql的事物隔离级别SHOWVARIABLESLIKE'%iso%';返回结果:REPEATABLE-READ把这个改成:READ-COMMITTED就好了:SETGLOBALtx_isolation='READ-COMMITTED';(记得java重启应用,要永久生效的就改my.ini配置文件)问题分析:当数据库隔离级别为REPEATABLE-READ时,查询一个select语

解决过程:

查看mysql的事物隔离级别 SHOW VARIABLES LIKE '%iso%';

返回结果: REPEATABLE-READ

把这个改成:READ-COMMITTED 就好了: SET GLOBAL tx_isolation='READ-COMMITTED';

(记得java重启应用,要永久生效的就改my.ini配置文件)

问题分析:

当数据库隔离级别为REPEATABLE-READ时,查询一个select语句也算是事物的开始,而且在hibernate里会把以select语句开头的事务标记为只读事务,此时在这个事务里再执行insert、update、delete等DML语句就会报错。

免责声明:文章转载自《java代码在开始事务后,先做了一个查询,再insert,此时会报: java.sql.SQLException: could not retrieve transation read-only status server》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇CentOs7.5安装配置NFS文件挂载静态代码块下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Innodb buffer pool/redo log_buffer 相关

InnoDB存储引擎是基于磁盘存储的,并将其中的记录按照页的方式进行管理。在数据库系统中,由于CPU速度和磁盘速度之前的鸿沟,通常使用缓冲池技术来提高数据库的整体性能。 1. Innodb_buffer_pool 缓冲池(buffer pool)简单来说就是一块内存区域。缓冲池中缓存的数据页类型有:索引页、数据页、undo页、插入缓冲、自适应哈希索引、I...

sql中关于锁的相关知识【转】

锁表是最简单的自己操作是,上锁,操作完之后解锁参考==============================锁定数据库的一个表SELECT * FROM table WITH (HOLDLOCK)注意: 锁定数据库的一个表的区别SELECT * FROM table WITH (HOLDLOCK)其他事务可以读取表,但不能更新删除SELECT * FRO...

MySql数据库优化、备份和恢复

一、数据库优化 1、为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 优化原则:减少系统瓶颈,减少资源占用,增加系统的反应速度。 2、数据库结构优化 需要考虑数据冗余、查询和更新的速度、字段的数据类型是否合理等多方面的内容。 将...

[Spring] 学习Spring Boot之二:整合MyBatis并使用@Trasactional管理事务

一、配置及准备工作 1、在 Maven 的 pom 文件中新增以下依赖: <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>r...

SQLServer数据库(二)

数据库设计:就是将数据库中的数据库实体及这些数据库实体之间的关系,进行规划和结构化的过程。 项目开发过程: 需求分析 概要设计 详细设计 代码编写 运行测试 打包发行 数据库的系统分析基本步骤:收集信息、标识实体、标识每个实体需要存储的详细信息、标识实体之间的关系。 实体,就是指现实世界中具有区分其它事物的特征或属性,并与其他实体有联系的实体。实体一般是名...

oracle事务和锁

数据库事务概括 1. 说明   一组SQL,一个逻辑工作单位,执行时整体修改或者整体回退。 2.事务相关概念   1)事务的提交和回滚:COMMIT/ROLLBACK   2)事务的开始和结束     开始事务:连接到数据库,执行DML、DCL、DDL语句     结束事务: 1. 执行DDL(例如CREATE TABLE),DCL(例如GRANT),系统...