plsql怎么连接本地oracle数据库(plsql连接本地oracle配置)

plsql怎么连接本地oracle数据库(plsql连接本地oracle配置),第1张

通过OracleNetAssistant(oracle网络配置助手),配置本地网络服务名,从而实现连接oracle数据库

方法:

按Windows徽标键,进入开始界面,找到NetAssistant,单击运行之

进入OracleNetAssistant配置向导,勾选本地网络服务名配置,单击下一步;

在网络服务名配置中,勾选添加,单击下一步

输入服务名:dbname(oracle数据库的服务名通常是全局数据库名,即输入创建的数据库名称)

选择访问数据库的协议:TCP,单击下一步;

输入数据库所在的计算机主机名:dream(也可以输入主机IP地址),勾选使用标准端口1521,单击下一步

测试,进行连接数据库的测试,勾选是,进行测试,单击下一步,选择更改登录,输入数据库的用户名、口令,单击确定,显示正在连接,测试成功

配置网络服务名,单击下一步;

是否配置另一个网络服务名,勾选否,单击下一步,显示网络服务名配置完毕,单击下一步,单击完成

运行plsql,输入用户名、口令,选择数据库,连接

实时数据库系统是开发实时控制系统、数据采集系统、CIMS系统等的支撑软件。在流程行业中,大量使用实时数据库系统进行控制系统监控,系统先进控制和优化控制,并为企业的生产管理和调度、数据分析、决策支持及远程在线浏览提供实时数据服务和多种数据管理功能。实时数据库已经成为企业信息化的基础数据平台,可直接实时采集、获取企业运行过程中的各种数据,并将其转化为对各类业务有效的公共信息,满足企业生产管理、企业过程监控、企业经营管理之间对实时信息完整性、一致性、安全共享的需求,可为企业自动化系统与管理信息系统间建立起信息沟通的桥梁。帮助企业的各专业管理部门利用这些关键的实时信息,提高生产销售的营运效率。

jdbc是数据库中间代理商为了是java连接数据库而定的一个协议 或者说是方法,通过jdbc-odbc的方法进行数据库连接,是连接一次创建一次的做法 1,由数据库驱动和协议组成连接数据的方法,调用中间商提供的类包,进行创建连接 2再由连接去调用3种状态 3由状态来提供对数据库的 *** 作 jndi是一种命名树的方式,把需要的类都列成目录的样式,需要哪个只要根据命名直接去 调用,是一种比较快洁的思想和行为 当你要 *** 作数据库的用jdbc *** 作命名服务用jndi Java Database Connectivity (JDBC)是一个标准的Java API,它由一组类和接口组成,Java应用程序开发人员使用它来访问数据库和执行SQL语句 JNDI(Java Name Directory Interface),可不仅仅是进行数据库定位的, 它是给当前应用服务器所管理的所有资源一个唯一的标识,包括数据库,网页,文件, 连接池等等。

配置 JNDI绑定

此处绑定的数据源是以 DBCP 为实现。首先必须将数据库驱动(这里用了MYSQL数据库)和DBCP所需要的 Jar 包复制到 Jetty 根目录的 lib 目录下。DBCP主要需要以下3个文件:

Commons-dbcpjar

Commons-pooljar

Commons-collectionsjar

jdbc和jndi区别

Connection conn = null;

try{

ClassforName("commysqljdbcDriver",true,ThreadcurrentThread()getContextClassLoader());

conn = DriverManagergetConnection("jdbc:mysql://MyDBServeruser=&password=");

connclose();

}

catch(){}finally{

if(conn!=null){

try{

connclose();

}

catch(){}

}

}

存在的问题?

1、数据库服务器名称MyDBServer 用户名和口令可能需要修改,由此引发JDBC URL修要修改;

2、数据库可能该用别的产品;

3、随着实际终端的增加,原配置的连接池参数可能需要调整;

解决办法

程序员不必关心数据库级别的事情,只需要知道如何引用即可

JNDI出现了。

定义数据源,也就是JDBC引用参数,给这个数据源设置一个名称;

在程序中通过数据源名称引用数据源,从而访问数据库;

//jndi连接

Context initCtx = new InitialContext();

Context envCtx = (Context)initCtxlookup("java:comp/env");

DataSource ds = (DataSource)envCtxlookup("jdbc/webtest");

conn = dsgetConnection();

//jdbc连接

ClassforName("commysqljdbcDriver",true,ThreadcurrentThread()getContextClassLoader());

conn = DriverManagergetConnection("jdbc:mysql://localhost/mismainuser=root&autoReconnect=true");

程序员开发时,知道要开发访问MySQL数据库的应用,于是将一个对 MySQL JDBC 驱动程序类的引用进行了编码,并通过使用适当的 JDBC URL 连接到数据库。

就像以下代码这样:

Connection conn=null;

try {

ClassforName("commysqljdbcDriver", true, ThreadcurrentThread()getContextClassLoader());

conn=DriverManagergetConnection("jdbc:mysql://MyDBServeruser=qingfeng&password=mingyue");

connclose();

} catch(Exception e) {

eprintStackTrace();

} finally {

if(conn!=null) {

try {

connclose();

} catch(SQLException e) {}

}

}

这是传统的做法,也是以前非Java程序员(如Delphi、VB等)常见的做法。这种做法一般在小规模的开发过程中不会产生问题,只要程序员熟悉Java语言、了解JDBC技术和MySQL,可以很快开发出相应的应用程序。

没有JNDI的做法存在的问题:1、数据库服务器名称MyDBServer 、用户名和口令都可能需要改变,由此引发JDBC URL需要修改;2、数据库可能改用别的产品,如改用DB2或者Oracle,引发JDBC驱动程序包和类名需要修改;3、随着实际使用终端的增加,原配 置的连接池参数可能需要调整;4、……

解决办法:程序员应该不需要关心“具体的数据库后台是什么?JDBC驱动程序是什么?JDBC URL格式是什么?访问数据库的用户名和口令是什么?”等等这些问题,程序员编写的程序应该没有对 JDBC 驱动程序的引用,没有服务器名称,没有用户名称或口令 —— 甚至没有数据库池或连接管理。而是把这些问题交给J2EE容器来配置和管理,程序员只需要对这些配置和管理进行引用即可。

由此,就有了JNDI

用了JNDI之后的做法:首先,在在J2EE容器中配置JNDI参数,定义一个数据源,也就是JDBC引用参数,给这个数据源设置一个名称;然后,在程序中,通过数据源名称引用数据源从而访问后台数据库。

具体 *** 作如下(以JBoss为例):

1、配置数据源

在JBoss 的 D:\jboss420GA\docs\examples\jca 文件夹下面,有很多不同数据库引用的数据源定义模板。将其中的 mysql-dsxml 文件Copy到你使用的服务器下,如 D:\jboss420GA\server\default\deploy。

修改 mysql-dsxml 文件的内容,使之能通过JDBC正确访问你的MySQL数据库,

如下:

Connection conn=null;

try {

ClassforName("commysqljdbcDriver", true, ThreadcurrentThread()getContextClassLoader());

conn=DriverManagergetConnection("jdbc:mysql://MyDBServeruser=qingfeng&password=mingyue");

connclose();

} catch(Exception e) {

eprintStackTrace();

} finally {

if(conn!=null) {

try {

connclose();

} catch(SQLException e) {}

}

}

<xml version="10" encoding="UTF-8">

<datasources>

<local-tx-datasource>

<jndi-name>MySqlDS</jndi-name>

<connection-url>jdbc:mysql://localhost:3306/lw</connection-url>

<driver-class>commysqljdbcDriver</driver-class>

<user-name>root</user-name>

<password>rootpassword</password>

<exception-sorter-class-name>orgjbossresourceadapterjdbcvendorMySQLExceptionSorter</exception-sorter-class-name>

<metadata>

<type-mapping>mySQL</type-mapping>

</metadata>

</local-tx-datasource>

</datasources>

这里,定义了一个名为MySqlDS的数据源,其参数包括JDBC的URL,驱动类名,用户名及密码等。

2、在程序中引用数据源:

Connection conn=null;try {

Context ctx=new InitialContext();

Object datasourceRef=ctxlookup("java:MySqlDS"); //引用数据源 DataSource ds=(Datasource)datasourceRef; conn=dsgetConnection();

cclose();

} catch(Exception e) {

eprintStackTrace();

} finally {

if(conn!=null) {

try {

connclose();

} catch(SQLException e) { }

}

}

直接使用JDBC或者通过JNDI引用数据源的编程代码量相差无几,但是现在的程序可以不用关心具体JDBC参数了。

在系统部署后,如果数据库的相关参数变更,只需要重新配置 mysql-dsxml 修改其中的JDBC参数,只要保证数据源的名称不变,那么程序源代码就无需修改。

由此可见,JNDI避免了程序与数据库之间的紧耦合,使应用更加易于配置、易于部署。

1、ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分。

2、ODBC技术。ODBC的基本思想是为用户提供简单、标准、透明的数据库连接的公共编程接口,开发厂商根据ODBC的标准去实现底层的驱动程序,这个驱动对用户是透明的,并允许根据不同的DBMS采用不同的技术加以优化实现,这就利于不断吸收新的技术而趋完善。

3、一种动态链接库 (DLL),支持 ODBC 的应用程序(如 Excel)可以用它来访问 ODBC 数据源。每个 ODBC 驱动程序针对一个数据库管理系统 (DBMS),如 SQL Server、Access 等等。

4、MyODBC是提供标准ODBC界面存取的程序,用VB、VC、BCB、Access等等透过ODBC直接存取数据库,减少Web Server更新MySQL数据库。

5、unixodbc是一个来连接数据库的组件。该版本主要是支持 64 位的 SQLLEN,修复了一些bug;另外驱动部分和图形化设置工具分开为两个独立的项目。它能让你在Unix/Linux系统下使用ODBC。

参考资料来源:百度百科—unixodbc

百度百科—myodbc

百度百科—ODBC驱动程序

百度百科—ODBC技术

百度百科—ODBC数据源

以上就是关于plsql怎么连接本地oracle数据库(plsql连接本地oracle配置)全部的内容,包括:plsql怎么连接本地oracle数据库(plsql连接本地oracle配置)、实时数据库采集的主要协议有哪些、JDBC与JNDI这两种连接方式有什么区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9668788.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存