java-检测应用服务器与oracle服务连接是否正常

问题描述

检测应用服务器与oracle服务连接是否正常

上个月客户那里更换了oracle服务器,这个月跑了两年的应用总是出现问题,每次都需要重启服务才可以恢复生产系统,此时用工具连接数据库正常,有时候重启时明显感觉到从数据库中读取数据很慢,估计应用出问题也跟这个有关。由于数据库另一个公司做管理,我们没有权限来排查问题。现在想请教有没有什么方法可以检测应用服务器访问数据库的情况?不是只显示能否正常连接,因为数据量比较大,访问数据库较慢也会造成请求超时引发问题。

解决方案

  1. 在应用服务器上持续观测与数据库连接是否存在泄漏,例如每隔20秒一次,持续记录各种状态的连接数。
  2. 检查应用侧是否有数据库相关异常日志,通过异常初步分析问题在哪边。
    3.要求oracle维护人员检查数据库服务器的性能情况,如CPU、内存占用等,收集数据库的AWR报告,检查报告中耗时较长的SQL等。
    4.可以简单通过ping命令看下应用和数据库之间网络是否通畅,网速如何。

解决方案二:

你的应用出了哪些错误,记入客户端日志。
汇总一下给维护数据库的公司,让他们解决啊。
既然是换服务器出的问题,谁负责谁解决咯。

解决方案三:

用专业工具做oracle性能测试,如果有问题,就可以直接告诉客户,原因是在数据库上

可参考
http://blog.itpub.net/25105315/viewspace-694261/

解决方案四:

只是检查连接的话。。。我有思路是用Ping来测试 不管怎么说 服务器到服务器之前还是通过网络来通信的。。ping能过的话 物理链路上就没有问题,如果不通再检查设置就行了

时间: 2024-10-18 11:18:47

java-检测应用服务器与oracle服务连接是否正常的相关文章

java频繁连接、调用oracle数据库的某存储过程,且存储过程返回游标在JAVA中遍历,使用什么连接,或什么方式效率比较好??

问题描述 java频繁连接.调用oracle数据库的某存储过程,且存储过程返回游标在JAVA中遍历,使用什么连接,或什么方式效率比较好??

使用C#通过Oracle.DataAccess连接Oracle,部署时需要注意版本问题

平时我们开发使用的是32位的PC机,所以安装的也是Oracle32位的客户端.但是一般服务器都是64位的,安装的也是64位的Oracle客户端,如果要部署使用Oracle.DataAccess连接Oracle的应用程序时,可能会遇到版本上的问题. 主要版本问题有两种,一种是32位版和64位版的问题,如果我们开发出来的应用是32位的,那么就必须使用32位的客户端,如果是64位的应用程序当然对应64位的客户端.这里需要注意:在64位的环境中使用VS开发Web程序,其运行的Web服务"WebDev.W

mysql-怎么通过java代码实现对数据库的连接

问题描述 怎么通过java代码实现对数据库的连接 通过java代码如何实现对数据库的增删改查,怎么理解Driver?具体的实现过程请求大神解答-jdbc 解决方案 public class DBTool { //sql 2005 protected static String dbClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; protected static String dbUrl = "jdbc:s

Java微服务开发指南 -- Java环境下的微服务

Java环境下的微服务 本文涉及的内容,能让你学到什么?     本书适用于开发微服务的Java开发人员和架构师.我们在开始介绍微服务架构前,先讲述一些抽象的基本概念.不幸的是,使用新技术并不能神奇地解决分布式系统问题.但是我们通过一些做的很好的公司,它们是如何使用微服务来进行构建的,包括文化.组织结构和市场压力.然后我们深入了解几个Java微服务框架,附带的源代码反馈可以在GitHub上找到.我们会讨论有关部署.集群.故障转移以及Docker和Kubernetes在这些领域是如何解决这些问题.

java 通过sslengine 用普通的socket连接sslserversocket

问题描述 java 通过sslengine 用普通的socket连接sslserversocket 最近在研究ssl时,发现使用普通socket 也可以去连接sslServerSocket,但是想要通信的话 ,必须要先握手, 所以使用了sslEngine来模拟握手, 只是在 握手结束的时候出现了问题,一直无法读取到服务端的Finished 握手消息 网上看到的都是nio 使用sslEngine来 手动的握手, 不知道可不可以使用普通socket来 握手呢, 请各位赐教 解决方案 java Soc

oracle client 连接oracle 出错:ora-12170如何解决?

问题描述 oracle client 连接oracle 出错:ora-12170如何解决? ping ip是通的,telnet ip 1521是通的,tnsping ip也是通的,就是连接的时候报:ora-12170连接超时错误,有哪位大神帮我解决下这个问题啊 解决方案 oracle client tnsnames.ora configORA-12170 TNS 连接超时 oracle 解决方案二: 首先进入sqlplus命令界面输入lsnrctl status检查监听是否启动. 如果没启就再启

Oracle RAC 连接到指定实例

        在某些特定的情形下,有时候需要从客户端连接到RAC中指定的实例,而不是由客户端Load_balance来动态选择或者是通过服务器端的监听器根据负载情形来转发.对此我们可以通过为tnsnames.ora中特定的网络服务名添加instance_name子项,或者是单独建立一个指向所需实例的网络服务名,下面描述这两种情形.   一.测试环境 -->Oracle 版本 SQL> select * from v$version where rownum<2; BANNER ----

oracle连接eclipse-myeclipse连接oracle时连接不上,没有任何错误提示

问题描述 myeclipse连接oracle时连接不上,没有任何错误提示 运行java application时,控制台里面没有错误提示,就是一直在连接中,郁闷啊 java如下: String url ="jdbc:oracle:thin:@127.0.0.1:1521:ORCL" String userName="scott"; String pwd="tiger"; con = DriverManager.getConnection(url,

在防火墙上开放Oracle服务端口的方法

Oracle服务端口方面会有很多的问题,下面就将为您介绍在防火墙上开放Oracle服务端口的方法,希望对您学习Oracle服务端口方面能有所帮助. 要使Oracle客户端能正常连接到设置有防火墙的安装在windows上的Oracle服务器,单开放一个1521或自定义的监听端口是不够的. 我们有的时候需要映射端口远程去访问Oracle数据库,这里有个防火墙的问题,在unix上没有问题,但是在win 平台上却无法正确访问,下面的可以解决这个问题,: 近来由于工作需要,在Windows XP平台上安装