问题描述: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor The Connection descriptor used by the client was: 10.12.162.84:1521:xxxx oracle数据的tnsnames.ora中配置的是:SERVICE_NAME =xxxx.经过查询发现,是jdbc中的连接串使用的不正确.Java JDBC Thin Dri…
背景:之前一直分不清plsql和程序中配置文件url之间的连接,想当然的认为service_name 和jdburl后面的实例相对应,直到出错的这一天,通过这篇博客,彻底扫除了盲点. 1 问题 1.1 问题描述 plsql的tnsnames.org中的数据源是这么配置的 应用程序中的配置文件是这么配置的: 启动程序,报错: Caused by: oracle.net.ns.NetException: Listener refused the connection with the followi…
  先来讲一个小故事,2015年6月份,有个客户迁移了数据库,由单实例数据库变成了RAC.JAVA应用程序出现了无法连接数据库的情况,但是PL/SQL能连接上数据库.由于项目比较庞大,虽然在半夜切换的,但是也不能接受长时间的业务停顿.当时,我对ORACLE技术也只是略知皮毛.在咨询过公司研发后,他们给我的建议是:参考PL/SQL的连接参数,将spring中jdbc连接的url由jdbc:oracle:thin:@10.2.0.2:1521:orcl改为jdbc:oracle:thin:@(DES…
可以简单的这样理解:一个公司比喻成一台服务器,数据库是这个公司中的一个部门.1.SID:一个数据库可以有多个实例(如RAC),SID是用来标识这个数据库内部每个实例的名字,就好像一个部门里,每个人都有一个自己的名字.2.SERVICE_NAME:是这个数据库对外宣称的名字,外面的人要想连接我这个数据库,你就在客户端的连接串里写上service_name.它就像一个部门的名字,这个部门的名称在看门大爷(listener)那里有登记,看门大爷一看你是要找SERVICE_NAME这个部门,就告诉你我们…
监听配置问题,SID与Service_Name区别 1.数据库实例名SID 概念:数据库实例名用于和操作系统进行联系的标识,是数据库和操作系统之间的交互用的书数据库实例名.实例名也被写入参数文件中,该参数为instance_name,在winnt平台中,实例名同时也被写入注册表中.   数据库名和实例名可以相同也可以不通过.   一般情况下,数据库和实例名是以一对应的关系,但是如果Oracle并行服务器架构(Oracle实时应用集群)中,数据库和实例名是一对多的关系.   2.Service_N…
一. JNDI 1. tomcat环境 找到X:\xxx\......\apache-tomcat-6.0.39\conf\server.xml,在<Host>节点中配置如下: <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNames…
tomcat中配置servlet.xml的JNDI或JDBC连接数据库 一. JNDI 1. tomcat环境 找到X:\xxx\......\apache-tomcat-6.0.39\conf\server.xml,在<Host>节点中配置如下: <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlV…
Java数据库连接(JDBC)由一组用 Java 编程语言编写的类和接口组成.JDBC 为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库应用程序.然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化.本文主要集合了不同数据库的连接方式. 一.连接各种数据库方式速查表 下面罗列了各种数据库使用JDBC连接的方式,可以作为一个手册使用. 1.Oracle8/8i/9i数据库(thin模式) Class.forName("oracle.j…
一.前言: 做网站开发,要求有多种搭配方式,前台技术可以使用PHP.ASP.JSP.ASP.NET.CGI等任何一种: 需要用到的基础语言用的最多的就是HTML/CSS.JS.JAVA.XML这些了,HTML/CSS+JS可以实现对界面的描绘渲染,而JAVA则可以做后台数据处理,XML也是可以当作传输数据的介质(思考:XML比HTML强大这么多,为什么它没能替代HTML?): 这篇文章通过简单的JSP文件实现登陆界面,所以只用到了以下技术: HTML/CSS,简单演示就不做CSS样式了,可自行学…
一.前言: 做网站开发,要求有多种搭配方式,前台技术可以使用PHP.ASP.JSP.ASP.NET.CGI等任何一种: 需要用到的基础语言用的最多的就是HTML/CSS.JS.JAVA.XML这些了,HTML/CSS+JS可以实现对界面的描绘渲染,而JAVA则可以做后台数据处理,XML也是可以当作传输数据的介质(思考:XML比HTML强大这么多,为什么它没能替代HTML?): 这篇文章通过简单的JSP文件实现登陆界面,所以只用到了以下技术: HTML/CSS,简单演示就不做CSS样式了,可自行学…