`

关于事务死锁问题的解决(jdbc:事务(进程ID)与另一个进程已被死锁在lock资源上)

    博客分类:
  • SQL
阅读更多
数据库sql 2000
使用jdbc连接
问题描述:
事务(进程ID)与另一个进程已被死锁在lock资源上,且该事务已被选作死锁牺牲品,请重新运行该事务。
原因:
由于后台采用同步程序对数据库中的资源进行同步(并使用事务),
此操作造成数据库中表的锁定,是其它客户程序不能对该表进行查询。
解决办法:
将jdbc创建的连接中设置隔离级别
conn.setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED);
2
1
分享到:
评论
1 楼 llying 2009-10-14  
补充一下
sql 里面执行之前可以加入这样一句话
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

相关推荐

    解决SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded_runtimeerror怎么修复

    7. **死锁检测与处理**:MySQL提供自动死锁检测,当检测到死锁时会回滚一个事务以打破循环。也可以在应用层面上实现死锁的检测和处理。 综上所述,解决"Lock wait timeout exceeded"问题需要从多方面入手,包括优化...

    java开发常遇问题和解决

    - 解决方案:使用`Objects.requireNonNull()`方法进行非空检查,或者在访问对象前确保其已被正确初始化。 3. **线程安全(Concurrency Issues)** - 原因:多线程环境下对共享资源的不恰当访问。 - 解决方案:...

    table琐行\锁列,已经在项目上大量用上了(只要修改ID就能套上你项目)

    当一个事务对某一行进行读取、更新或删除操作时,会锁定该行,其他事务则不能进行相同级别的修改操作,直到这行被解锁。例如,在MySQL的InnoDB存储引擎中,支持行级锁定,包括共享锁(读锁)和排他锁(写锁)。 ...

    JAVA学习要点总结.pdf

    例如,一个事务持有ID为1的记录并尝试获取ID为20的记录,而另一个事务持有ID为20的记录并尝试获取ID为1的记录,这样就会形成死锁。数据库系统通常有检测和解决死锁的机制,但作为开发者,我们需要理解和避免设计可能...

    mysql报错:Deadlock found when trying to get lock; try restarting transaction的解决方法

    发现问题 最近在补以前数据的时候程序突然报如下错误: [2017-02-10 13:12:06.678] [INFO] mysqlLog - update tbl_playerdata_error: { [Error: ER_LOCK_...一看就是mysql出现了死锁问题,其实上面跑的程序在测试服跑

    惠普 HP笔试题/口试题

    20. 资源分配问题:银行家算法可以解决这个问题,避免死锁的发生。 21. ACID 属性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。DBMS 可以通过事务、锁机制、回滚...

    面试必备之乐观锁与悲观锁.rar

    4. **缓存与分布式锁**:在分布式系统中,如何在多个节点间协调并发操作是另一个挑战。面试中可能涉及Redis或Memcached等缓存服务提供的分布式锁机制。 5. **数据库的行级锁、表级锁和页级锁**:面试官可能要求你...

    sql 查询慢的48个原因分析.txt

    - **问题**:多个事务同时访问同一资源时产生的锁竞争现象,严重时会导致死锁。 - **解决方案**: - 通过调整锁定粒度或更改事务隔离级别来减少锁竞争。 - 使用存储过程中的显式锁定机制,并尽量减少锁定时间。 #...

    java资源总汇

    同步机制(如synchronized关键字、Lock接口)用于解决线程间的竞态条件和死锁问题。 Java网络编程: Java提供了丰富的API进行网络编程,如Socket和ServerSocket用于TCP通信,DatagramSocket和DatagramPacket用于UDP...

    JAVA面试 jdbc jaee mvc设计模式

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。本文将深入探讨在Java面试中经常出现的一些核心知识点,包括JDBC、J2EE、MVC设计模式、Servlet、XML、线程以及面试技巧。 首先,JDBC...

    多线程对数据库操作

    总结,这个项目是关于如何在Java中使用多线程安全地操作MySQL数据库,涉及到了Java的并发编程、JDBC、MySQL数据库连接以及线程安全问题。理解和掌握这些知识点对于开发高效且可靠的Java数据库应用至关重要。

    java中级面试题整理

    1. 线程与进程:线程是程序执行的最小单元,进程是资源分配的最小单元。 2. 创建线程:实现Runnable接口、继承Thread类、使用ExecutorService和Future、Callable和FutureTask。 3. as-if-serial规则:并发执行的线程...

    Java 最常见 200+ 面试题全解析:面试必备

    - 死锁与活锁:理解并能避免线程并发中的死锁问题。 - 线程池:ExecutorService的理解和使用。 5. **异常处理**: - 异常分类:检查型异常与运行时异常。 - try-catch-finally语句块:异常的捕获和处理。 - ...

    Java面试问题 TXT格式

    死锁是指两个或多个线程在执行过程中因争夺资源而造成的一种僵局现象,若无外力作用,它们都将无法推进下去。例如,线程A持有资源X,等待获取资源Y;线程B持有资源Y,等待获取资源X。为了避免死锁,可以通过以下几种...

    java学习路线.docx

    - **内部类:** 内部类是一种特殊类,它定义在另一个类的内部。学习匿名内部类、静态内部类等不同类型的内部类及其应用场景。 4. **异常处理:** - **try-catch-finally:** 学习如何使用try-catch-finally语句块...

    mysql服务检测并自动重启

    3. **死锁检测**:在MySQL中,死锁是两个或更多事务相互等待对方释放资源导致的一种僵局。检测死锁通常涉及解析事务的状态和锁定信息。项目可能自定义了算法或者使用MySQL提供的INFORMATION_SCHEMA.INNODB_LOCK_...

    多线程和ppt

    - "socket_JDBC.ppt"则可能涉及到网络通信(Socket)和数据库访问(JDBC)的内容,这两者在多线程环境中也经常用到,比如在一个线程处理网络请求,另一个线程处理数据库操作。 在实际开发中,理解和掌握这些多线程...

    Java并发面试题总结

    它们都是为了解决多个线程对共享资源的竞争问题,防止数据的不一致性。 5. **死锁**:死锁是两个或多个线程互相等待对方释放资源而造成的僵局。避免死锁的关键是避免循环等待,可以使用银行家算法或死锁预防/避免...

    Java面试宝典2018

    这份《Java面试宝典2018》不仅涵盖了Java核心技术,还强调了实际应用中的问题解决能力和面试策略,是Java开发者准备面试的宝贵资源。通过深入学习这些知识点,求职者可以更好地应对面试挑战,提升自己的竞争力。

    java程序员面试题大全

    Java程序员面试题大全涵盖了许多核心知识点,旨在帮助求职者准备面试,提高成功几率。下面将对这些面试题涉及的...在准备面试时,不仅要掌握理论知识,还要有解决实际问题的经验,这样才能在竞争激烈的市场中脱颖而出。

Global site tag (gtag.js) - Google Analytics