今天在巡检服务器的时候,发现了如下异常信息:
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory
(Listener refused the connection with the following error:
ORA-12519, TNS:no appropriate service handler found
The Connection descriptor used by the client was:
10.10.84.236:1521:test
)
一开始我还认为是数据库的监听没有打开或连接数据库使用的实例名称错误,我检查了上述相关项后没有发现异常;最后在数据服务器上使用dba账号或相关用户账号信息登录都不能够登录成功。然后我查看了一下和数据库1521端口相连接的进程,命令如下:
netstat -ant | grep 1521
发现相关进程有140多个,应该是连接数达到了数据库的最大process数,最后关闭一些应用进程后,连接数开始释放。然后重启我的应用,ok服务正常启动,未见异常。特此记录一下。
顺便复习一下oracle的case when用法。
SELECT ename, sal,
(CASE
WHEN sal between 1000 AND 3000
THEN '合格'
WHEN sal < 1000
THEN '差'
WHEN sal > 3000
THEN '优秀'
ELSE
'其他'
END) xxx
FROM emp;
注:
1、以CASE开头,以END结尾
2、分支中WHEN 后跟条件,THEN为显示结果
3、ELSE 为除此之外的默认情况,类似于JAVA语言程序中switch case的default,可以不加
4、END 后跟别名
分享到:
相关推荐
在SQL Server 2005中,"Cannot create PoolableConnectionFactory (用户 'sa' 登录失败。该用户与可信 SQL Server 连接无)" 错误通常表明在尝试使用SQL Server的身份验证方式登录时遇到了问题。这篇博客文章可能详细...
用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联
在Java开发中,连接池是一种优化数据库访问性能的重要技术,它可以高效地管理和重用数据库连接,从而避免频繁创建和销毁连接带来的性能开销。本文将深入讲解如何在Java环境中,特别是Tomcat服务器中配置和使用连接池...
kettle常见问题kettle常见问题kettle常见问题kettle常见问题kettle常见问题
确认SQL Server 2000可以远程连接,除了开放1433端口外,还要升级数据库到SP3或SP4,否则连接会发出SQLNestedException:Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]...
在执行JDBC Request之后,我们可能会出现一个报错:java.sql.SQLException: Cannot create PoolableConnectionFactory (The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more...
该问题的错误信息为:Cannot create PoolableConnectionFactory (The server time zone value '???��������??��??' is unrecognized or represents more than one time zone. You must configure either ...
然后,创建一个`PoolableConnectionFactory`,将`ConnectionFactory`包装起来。接着,通过`ObjectPoolBuilder`创建一个连接池实例,并将其绑定到`PooledConnectionFactory`。最后,我们可以从连接池中获取和归还连接...
当连接池中的连接出现异常时,DBCP2有完善的异常处理机制。例如,如果一个连接在使用过程中抛出异常,`PoolableConnection.close()`会触发`AbandonedObjectPool`来移除并关闭这个连接,防止资源泄漏。 7. **公平...
`PoolableConnectionFactory`负责创建`PoolableConnection`对象,这些对象在连接池中被复用。 5. **连接池的借用与归还**:应用通过`BasicDataSource.getConnection()`方法从池中获取连接,实际返回的是一个包装过...
- **PoolableConnectionFactory**:核心组件,负责创建和管理连接对象。 - **ConnectionPoolDataSoure**:提供JDBC数据源接口,应用通过这个接口获取数据库连接。 - **PooledConnection**:连接池中的连接对象,...
3. **异常处理**:了解DBCP如何处理连接失败、超时和废弃连接等问题。 4. **性能优化**:研究如何通过调整连接池参数来提高性能,例如设置合适的连接最大值、最小值和超时时间。 5. **线程安全**:DBCP作为多线程...
错误的配置可能导致`PoolableConnectionFactory`无法创建,从而抛出`SQLNestedException`。检查`server.xml`文件中的DataSource配置,确保用户名、密码、URL等参数正确无误。 5. **网络问题**:除了上述软件配置,...
2. `PoolableConnectionFactory`: 它是连接工厂,负责将普通的数据库连接转化为可池化的连接,使得这些连接可以放入 Commons Pool 中管理。 3. `AbandonedConfig` 和 `AbandonedTrace`: 这两个组件用于处理废弃的...
5. **异常处理**:确保在出现异常时,能够正确地释放资源,防止资源泄露。 这个提供的"JDBC连接池"类很可能是一个封装好的数据源类,它简化了连接池的配置和使用过程,使得开发者可以更专注于业务逻辑。导入此类后...
6. **异常处理**:DBCP提供了一套完善的异常处理机制,包括`PoolManagers`、`Poolables`等,帮助开发者更好地处理和理解在连接池操作过程中可能出现的问题。 在使用`commons-dbcp-1.2.2`时,开发者需要注意以下几点...
7. **异常处理**:在实际应用中,必须处理可能出现的各种异常,如连接池已满、数据库连接失败等情况,确保程序的健壮性。 8. **监控与日志**:为了方便问题排查和性能优化,连接池通常会提供监控接口和日志功能,...
2. **异常处理**: 在获取和使用连接时,应妥善处理异常,确保资源正确释放。 3. **及时升级**: 关注c3p0的更新和安全修复,保持库版本的最新。 6. **性能优化**: 结合JMX监控,持续优化连接池配置,提高应用性能。...
- **创建PoolableConnectionFactory**:这是DBCP的核心,它将普通数据库连接转换为池化的连接,可以被对象池管理和回收。 - **注册PoolingDriver**:`PoolingDriver`是DBCP提供的JDBC驱动,它允许通过特定的URL...
1. **common-dbcp.jar**:这是DBCP的主要库文件,包含了DBCP的实现类和接口,如BasicDataSource、PoolableConnectionFactory等。它提供了数据源(DataSource)的实现,使得应用程序可以通过DataSource获取到数据库...