好象来将,connection在db端有大的空闲时间的限制。如:mysql默认connection在8个小时少有使用(即有线程用connection正在发送了sql),变会自动已断开。而此时,你本地配置的数据库再连接池,却还可不知道该连接早被数据库连接断开了。那样的话就出现了,虽说怀中掏出了connection却在在用时,一抛巳经关掉的异样。该怎么解决是为再连接池加测定connection有效性的配置。这个我就不大好提出具体看的配置了,毕竟得看你用的是什么数据库连接上池利用。
db右击属性-》文件-》添加一个log文件,下面就应该不会异常,只不过以免以后异样还需需要收索下log日志文件
1、并且对的的维护操作
很多的数据库无做出反应故障是由于不对的的维护不能操作过多的。应尽量减少在业务高峰期做快的以维护操作,例如像move、加主外键管理和约束等会长时间锁表的操作。要是确实是不需要,注意建议使用真确的操作方法。诸如用online重建索引;建主键、同样键加以约束时先建索引,后再待建强制力时委托新建的索引等等。也就是只要系统的并发性、可伸缩性,尽量减少系统串行操作的出现。
2、优化应用设计、优化数据库性能
为尽量避免性能问题导致在业务高峰期数据库肯定不能赶快管用一次性处理依附业务的请求,以至于完全hang住。对于数据库中存在的串行访问网络的部分通过系统优化,比如latch、enqueue,还除了不合理的sequence设计等。特别是在rac数据库中,严重串行不能访问等待并不一定更很难紊乱十分严重的性能问题。优化系统应用设计,使数据库具备更合适的可伸缩性和并行处理能力,也能比较有效地以免性能问题影起的数据库hang住。
3、凭借监控系统时刻远程监控系统负载端
遇见系统负载过低,内存不足,os中虚拟内存自动换行很很频繁等情况时,及时采取措施;监控oracle数据库的核心进程,如pmon、smon等,看有无有异常,如过热的cpu消耗。又出现十分应立玄一次性处理;监控归档空间的日志直接切换;监控数据库中的静静的等待事件,例如是否有大量的enqueue、logfileswitch(archivingneeded)、resmgr:becomeactive静静的等待事件等。
4、为数据库打上补丁
很多的无做出反应故障是因此oracle的bug引起的,数据库dba应参与当前版本中有哪些bug会可能导致数据库hang住,最好不要为数据库打上解决这些bug的补丁。