关于Oracle 的url 连接 最后一个orcl的理解

今天生产上项目启动访问 一个数据库的时候,出现了

ORA-12505, TNS:listener does not currently know of SID given in connect desc .

后面看了下,我的数据库配置为:

driverClassName=oracle.jdbc.driver.OracleDriver

url=jdbc:oracle:thin:@158.58.88.102:1521:eskdb

username=root

password=aaa111

然后看了下oracle的 tnsnames.ora配置

eskdb=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 158.58.88.102)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = eskdb)))

按网上所说的道理,

1、最后的orcl是数据库名称,我数据库名称就是eskdb,但是不对

2、最后的orcl是 service_name  但是配置的SERVICE_NAME  也是 eskdb

最后纠结无语,找数据库DBA帮忙, DBA帮忙找到SID为 eskdb1  , 而且异常提示SID不对,于是更改url为

url=jdbc:oracle:thin:@158.58.88.102:1521:eskdb1

然后重启项目,OK了

得出结论:数据库url连接最后一个 orcl代表的是配置的数据库 SID,而不是数据库名  或者  SERVICE_NAME

时间: 2024-08-01 22:45:15

关于Oracle 的url 连接 最后一个orcl的理解的相关文章

oracle的jdbc连接

原本一直在用mysql,最近改用oracle了,oracle的第一步就是jdbc的连接 第一步:下载jar包,我用的是oracle11g 下的是oracle6.jar 第二步:加载jar包 然后找到下载的jar位置即可. 第三步:代码部分 package com.lc.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql

ORA-12541:TNS:无监听程序 配置Oracle Myeclipse无法连接上 花费一天时间解决掉的

背景:自己机子做oracle服务器,其他机子可以ping得通我的机子,但是jdbc就是连不上,后来用plsql连出现无监听程序.... 我昨天重新安装Oracle后,用PL/SQL Developer连接oracle时出现ORA-12541:TNS:无监听程序的错误,如下图: 在王鹏师兄的帮助下,发现原来是oracle的监听没有启动,重启监听后就连接成功了,下面跟大家分享一下如何启动oracle的监听. 1.打开Net Configuration Assistant 2.选择监听程序配置,下一步

C#中oracle数据库的连接方法

C#中oracle数据库的连接方法 一.关于数据库的操作 1.数据库连接      有2种:      第一种:古老的方法(较为死板,不利于灵活操作),即用OracleConnection的类来连接              string mysqlstr ="user id = xal;data source = xal;password = xal";              OracleConnection mycnn = new OracleConnection(mysqls

Oracle Sql Developer 连接oracle

PL/Sql 初次使用需要配置文件内容,对于我这种Oracle新手来说各种配置有点凌乱,所以果断选择Sql Developer. 选择它是因为初次使用的时候它不用想PL/Sql那样配置文件,而只需要添加一个连接即可.如图 Sql Developer除了能连接Oracle还可以连接SqlServer

[转]Oracle DB 使用连接显示多个表中的数据

? 编写SELECT语句,以使用等值联接和非等值联接访问多个表中的数据 ? 使用自联接将表联接到自身 ? 使用OUTER联接查看通常不满足联接条件的数据 ? 生成两个或多个表中所有行的笛卡尔积 ? JOIN的类型及其语法 ? 自然联接: – USING子句 – ON子句 ? 自联接 ? 非等值联接 ? OUTER联接: – LEFT OUTER联接 – RIGHT OUTER联接 – FULL OUTER联接 ? 笛卡尔积 – 交叉联接 获取多个表中的数据 有时需要使用多个表中的数据.如两个独立

JAVA中三种URL连接方法

Java的网络类可以让你通过网络或者远程连接来实现应用.而且,这个平台现在已经可以对国际互联网以及URL资源进行访问了.Java的URL类可以让访问网络资源就像是访问你本地的文件夹一样方便快捷.我们通过使用Java的URL类就可以经由URL完成读取和修改数据的操作.现在,我们来看一看,如何才能发挥出URL类的效力. 通过URL进行工作 通过一个URL连接,我们就可以确定资源的位置,比如网络文件.网络页面以及网络应用程序等.其中包含了许多的语法元素.举个例子来说,请看下面这个URL连接: http

Oracle数据库的连接模式connection Mode、连接connection与会话session

数据库的连接模式Connection Mode: Dedicated Server Mode(专有模式) 当用户发出请求时,如远程的client端通过监听器连接数据库上,ORACLE的服务器端会启用一个进程来响应,ORACLE端进程和Client端进程通信组成一个会话,ORACLE进程帮用户发出SQL语句,将结果返回给用户. 一对一,一个用户进程对应一个服务器进程,响应很快,但如果用户比较多,数据库压力比较大. Share Server Mode 共享服务模式,通过一个分发起,把用户的请求发给服

sqoop测试oracle数据库的连接使用

测试oracle数据库的连接使用 ①连接oracle数据库,列出所有的数据库 [[email protected] sqoop]$sqoop list-databases--connect jdbc 10.1.69.173:1521:ORCLBI --username huangq -P或者sqoop list-databases--connect jdbc racle:thin10.1.69.173:1521:ORCLBI --username huangq--password 123456

vCenter6.0错误提示:无法连接到一个或多个vCenter Server系统

vCenter6.0错误提示:无法连接到一个或多个vCenter Server系统 1.记录一下: 昨天连接还没有任何问题,今天用vSphere Web Client连接vCenter6.0忽然提示如下错误: 后来重启vCenter和数据库再次测试还是一样的提示.检查vCenter各种服务都是ok的,日志都是正常的.经过检查发现oracle数据库密码策略问题,默认的策略是半年要修改一次密码,oracle数据库密码过期,导致此问题.修改数据库密码策略,重新连接vCenter成功,没有出现此提示.