Exception loading sessions from persistent storage

本文解决在启动Tomcat时,因工作目录中存在损坏文件而导致的异常问题,通过删除特定目录下的所有文件,可有效解决此启动失败问题。
严重: Exception loading sessions from persistent storage
java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2228)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2694)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:761)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:277)
at org.apache.catalina.util.CustomObjectInputStream.<init>(CustomObjectInputStream.java:56)
at org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:384)
at org.apache.catalina.session.StandardManager.load(StandardManager.java:343)
at org.apache.catalina.session.StandardManager.start(StandardManager.java:657)
at org.apache.catalina.core.ContainerBase.setManager(ContainerBase.java:499)
at org.apache.catalina.startup.ContextConfig.managerConfig(ContextConfig.java:315)
at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:635)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:216)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4290)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:277)
at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:701)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:432)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
at org.apache.catalina.core.StandardService.start(StandardService.java:480)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)

遇到上述异常,删除Tomcat里面的work\Catalina\localhost下的所有文件夹删除即可解决
在达梦数据库(DM)中,查询当前会话信息可以通过系统视图 `V$SESSIONS` 来实现。该视图提供了数据库当前所有会话的详细信息,包括会话 ID、用户名、客户端 IP 地址、会话状态、SQL 语句等[^2]。通过这些信息,数据库管理员可以对数据库的活动情况进行监控和分析,例如识别长时间运行的会话或查找特定用户的会话。 ### 查询当前会话信息 以下是一个基本的 SQL 查询语句,用于从 `V$SESSIONS` 视图中获取当前会话信息: ```sql SELECT sess_id, username, client_ip, status, sql_text FROM v$sessions; ``` - **sess_id**:会话标识符,用于唯一标识一个会话。 - **username**:连接数据库的用户名。 - **client_ip**:客户端的 IP 地址。 - **status**:会话的当前状态,例如是否正在执行 SQL 语句。 - **sql_text**:当前会话正在执行的 SQL 语句。 ### 关闭特定会话 如果需要关闭某个特定的会话,可以使用 `SP_CLOSE_SESSION` 存储过程,并传入会话 ID 作为参数。例如,假设要关闭会话 ID 为 `12345` 的会话,可以使用以下命令: ```sql CALL SP_CLOSE_SESSION(12345); ``` ### 查询阻塞会话 除了查询当前会话信息外,还可以结合 `V$TRXWAIT` 视图来查找阻塞会话。通过以下 SQL 语句可以查询当前阻塞的会话: ```sql SELECT a.sess_id FROM v$trxwait a, v$sessions b WHERE a.id = b.trx_id; ``` 该查询将返回当前被阻塞的会话 ID,以便进行后续处理[^3]。 ### 相关问题 1. 如何在达梦数据库中监控长时间运行的会话? 2. 如何通过 `V$TRXWAIT` 和 `V$SESSIONS` 视图查找阻塞会话? 3. 达梦数据库中有哪些系统视图可用于监控数据库性能? 4. 如何通过 `V$SQL_NODE_NAME` 和 `V$SQL_NODE_HISTORY` 视图进行 SQL 语句调优? 5. 达梦数据库中如何使用 `SP_CLOSE_SESSION` 存储过程关闭会话?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值