我有一个连接到 Sybase 数据库的 java 应用程序。
我想在应用程序级别记录挂起的数据库连接。
我不确定这是否可能,如果可以,请帮助我解决这个问题。
最佳答案
如果连接实际上“挂起”,则通常是死锁。数据库是详细诊断和记录这些问题的最佳场所。
但是,我知道 MS SQL Server 驱动程序会在选择死锁受害者后抛出一个非常具体的异常,并且根据我(非常有限)的 Java 经验,我想 Sybase 驱动程序也会做同样的事情。您可以从您的应用程序中捕获该异常。即使这是一般异常,您也可以检查堆栈跟踪或描述并确定它与锁定问题有关。
This post提到了 Java/Sybase 的 LockAcquisitionException
。
关于java - 日志数据库连接挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8591486/