为了快速同步数据的需要,我分段执行了两次python脚本,即开启了两个进程同步数据,结果服务器不时报出数据库死锁异常,通过排查代码和数据库日志发现,是由长事务并发引起的。代码中有入账和出账两个方法,里面涉及操作较多,都为其加了事务,抛出异常时可自动回滚,采用数据库(mysql)默认的隔离级别(Rep... ...
分类:
其他好文 时间:
2016-05-22 06:10:16
阅读次数:
281
为了快速同步数据的需要,我分段执行了两次python脚本,即开启了两个进程同步数据,结果服务器不时报出数据库死锁异常,通过排查代码和数据库日志发现,是由长事务并发引起的。代码中有入账和出账两个方法,里面涉及操作较多,都为其加了事务,抛出异常时可自动回滚,采用数据库(mysql)默认的隔离级别(Rep... ...
分类:
数据库 时间:
2016-05-21 23:13:54
阅读次数:
633
什么是事物 事物是访问数据库的一个操作序列,数据库应用系统通过事物集来完成对数据库的存取。事物的正确执行使得数据库从一种状态转换为另一种状态。 事物必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久 ...
分类:
其他好文 时间:
2016-05-20 19:15:21
阅读次数:
185
注明: 本文转载自http://www.hollischuang.com/archives/898 数据库的读现象浅析中介绍过,在并发访问情况下,可能会出现脏读、不可重复读和幻读等读现象,为了应对这些问题,主流数据库都提供了锁机制,并引入了事务隔离级别的概念。 并发控制 在计算机科学,特别是程序设计 ...
分类:
数据库 时间:
2016-05-18 23:49:58
阅读次数:
273
注明: 本文转载自http://www.hollischuang.com/archives/943 本文详细介绍四种事务隔离级别,并通过举例的方式说明不同的级别能解决什么样的读现象。并且介绍了在关系型数据库中不同的隔离级别的实现原理。 在DBMS中,事务保证了一个操作序列可以全部都执行或者全部都不执 ...
分类:
数据库 时间:
2016-05-18 23:47:39
阅读次数:
268
注明: 本文转载自http://www.hollischuang.com/archives/900 “读现象”是多个事务并发执行时,在读取数据方面可能碰到的状况。先了解它们有助于理解各隔离级别的含义。其中包括脏读、不可重复读和幻读。 脏读 脏读又称无效数据的读出,是指在数据库访问中,事务T1将某一值 ...
分类:
数据库 时间:
2016-05-18 23:29:15
阅读次数:
141
基本概念和性能剖析schema和数据类型优化索引查询性能优化
基本概念和性能剖析
1、设置隔离级别
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED
2、显示表的相关信息
SHOW...
分类:
数据库 时间:
2016-05-18 18:31:54
阅读次数:
225
事务的几种传播特性1. PROPAGATION_REQUIRED: 如果存在一个事务,则支持当前事务。如果没有事务则开启2. PROPAGATION_SUPPORTS: 如果存在一个事务,支持当前事务。如果没有事务,则非事务的执行3. PROPAGATION_MANDATORY: 如果已经存在一个事 ...
分类:
编程语言 时间:
2016-05-17 17:45:50
阅读次数:
179
数据库隔离级别有四种,应用《高性能mysql》一书中的说明:
然后说说修改事务隔离级别的方法:
1.全局修改,修改mysql.ini配置文件,在最后加上
1 #可选参数有:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE.
2 [mysqld]
3 transactio...
分类:
数据库 时间:
2016-05-17 09:59:01
阅读次数:
163
事务的概念
MySQL下操作事物
JDBC下操作事物
事务特性(重点) ACID
事务的隔离级别
隔离级别方案演示
bcUtils中使用ThreadLocal
丢失更新
解决丢失更新可以采用两种方式
连接池
数据库连接池编写原理分析
自定义连接池
DBCP数据源(了解)
dbcp连接池使用
C3P0数据源(必会)
配置Tomcat数据源
JNDI技术简介...
分类:
编程语言 时间:
2016-05-16 13:01:16
阅读次数:
371