tnsping是否可以证明Oracle数据库可用?

监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求。Oracle官方对其的定义为:A process that listens for incoming client connection requests and manages network traffic to the database.?
?本地服务名是Oracle客户端网络配置的一种,另外还有Oracle名字服务器(Oracle Names Server)等。??

??客户端可以通过监听来和数据库服务器进行交互,如果我们是用tnsping来测试,并且返回正常,是否意味着数据库可用?答案是否定的。

1. 如下监听是正常启动:

??

2. 此时关闭数据库:

3. 从客户端执行tnsping,显示是连接正常。

由此我们可以看到,tnsping只是验证了客户端和数据库服务器的监听端口之间的通路是好的,但并未意味着数据库服务是可用的,因为客户端和Oracle服务器交互是通过Oracle server服务器进程来进行的,私有内存空间即是PGA,所以有时候我们做运维检测,tnsping不能代表Oracle数据库可用,可以用sqlplus真正执行一条语句(select sysdate from dual)才行。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-11 09:43:50

tnsping是否可以证明Oracle数据库可用?的相关文章

Oracle数据库案例整理-Oracle系统执行失败-sql_trace至TRUE导致Oracle在根文件夹中缺乏可用空间

1.1       述 在"$ORACLE_BASE/diag/rdbms/$ORACLE_SID/$ORACLE_SID/trace"文件夹下产生大量"oracle_w000_9708.trc"和"oracle_w000_9708.trm"文件. 产生这些文件的速度太快.导致Oracle根文件夹可用空间不足. 1.2       可能原因 导致"$ORACLE_BASE/diag/rdbms/$ORACLE_SID/$ORACLE_S

关于vs2008使用oracleclient链接oracle数据库报报错OCIEnvCreate 失败,返回代码为 -1,但错误消息文本不可用

用vs2008链接oracle数据库出现问题,报错OCIEnvCreate 失败,返回代码为 -1,但错误消息文本不可用,从网上找了好久方法,有两种oracle客户端文件权限,和运行vs2008以管理员身份,这些都试过了没有用,查了好久还是没有解决问题,只好换一种方式链接oracle数据了. 我使用的是ODAC方式链接oracle数据库,这样就不需要安装oracle客户端了,我的操作步骤如下: 1.从[url=http://download.oracle.com/otn/other/ole-oo

oracle数据库迁移主从复制ADG(分享十四)

前面章节说到mysql主从复制问题,本章节说说oracle的主从复制技术adg,这个也是业内大家用的最多的解决方案. Data Gurad通过冗余数据来提供数据保护,Data Gurad 通过日志同步机制保证冗余数据和主数据之前的同步,这种同步可以是实时,延时,同步,异步多种形式.Data Gurad常用于异地容灾和小企业的高可用性方案,虽然可以在Standby机器上执行只读查询,从而分散Primary数据库的性能压力,但是Data Gurad决不是性能解决方案. 分类: 逻辑Standby接收

Oracle数据库中心双活之道:ASM vs VPLEX (转)

双活方案对比:ASM vs V-PLEX 作者:王文杰 Oracle公司 Principle system analyst Oracle高级服务部 Oracle数据库中心的灾备的演变,经历了多年的演变从最初的冷备份,到热备份,到存储复制,到DG,ADG,RAC one node, RAC,最终演变到了目前最炙手可热的双活双中心构架,也就是我们常说的远程RAC(Extended RAC). 一般售前工程师口中实现双活的方案有很多种,但我认为真正RTO,RPO趋近于0,且双中心可用(读写)的方案,才

JAVA连接ACCESS、MYSQL、SQLSEVER、ORACLE数据库

. 概述 1.1 JDBC概念 JDBC(Java Database Connectivity)是Java语言为了支持SQL功能而提供的与数据库连接的用户的接口,JDBC中包括了一组由(Java)语言书写的接口和类,它们都是独立于特定的DBMS,或者说他们可以和各种数据库相关联. 1.2 JDBC用途 JDBC由一组Java语言编写的类和接口组成,使用内嵌式的SQL,主要实现三方面功能:建立于数据库的链接,执行SQL声明以及处理SQL执行结果:JDBC支持基本的SQL功能,使用它可以方便地与不同

Oracle数据库导入导出命令总结

分类: Linux Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中.利用这个功能我们可以从生产库中导出数据库,再导入数据库到测试库中. 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行是由于在oracle中,安装目录\ora9i\bin被设置为全局路径(也可直接在系统环境变量中设置),该目录下有EXP.EXE与IMP

Linux 下安装oracle数据库

原文出处       http://www.linuxidc.com/Linux/2015-02/113222.html 需要安装Oracle DataGuard,所以先要安装单台Oracle11g,下面是Linux下单台Oracle11g的详细安装过程. 1,安装环境 硬件环境:2台linux虚拟机,CentOS6.4 ,4G ,4核,磁盘50G Oracle软件版本: linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of

应用偶发性连接不上Oracle数据库的排查案例

问题描述 有一个应用,偶尔会出现访问不了的情况.具体表现为,当其它应用调用它的接口时,可能会出现超时,过一段时间后,再调用它的接口可能又正常了.观察应用日志发现,这个被调用的应用会偶发性地连接不上数据库.因为该应用没有办法及时地查询到数据库,应用返回数据时间过长,也就导致调用该应用接口的其它应用超时.这种情况比较偶发,一天大概几次,没什么特别规律. 应用日志中只能大概看出,出现问题时该应用查询不了数据库,与数据库的连接丢失,没有太多其它的信息: 2017-06-05 23:23:44,941 I

利用SHELL脚本来验证Oracle数据库RMAN备份集的有效性

利用SHELL脚本来验证Oracle数据库RMAN备份集的有效性 作者:赵全文  网名:guestart 我们生产环境的Oracle数据库都做了RMAN备份,是采用了一周的RMAN备份保留策略:除了使用RMAN备份以外,我们还使用了爱数(Eisoo)备份软件来进行备份,可以说是做到了有备无患.可是,如果有一天,Oracle数据库由于主机层面硬件原因或是数据库层面的原因不能对外提供高可用服务的时候,假设数据丢了一大部分,我们只有用RMAN备份来进行恢复,再如果发现,RMAN备份失效了,那就往地缝里