关于PLSQL登陆Oracle11G无法读取Oracle数据库问题

由于楼主是新机子的WIN10系统,所以有些配置环境还没有配置好,所以有可能是配置环境问题,也或者在oracle工具的首选项中主目录没有配置好。

  原文地址:https://www.2cto.com/database/201503/386267.html

1、问题

Plsql到目前为止只有32位的程序,而大多数的桌面系统基本都是使用64位的windows操作系统,在64位的windows上,大多数情况下也是安装64位的ORACLE client程序,这种组合,导致plsql无法识别到ORACLE_HOME目录,读取不到tnsnames.ora文件中的连接串

2、解决方案

2.1 在windows上配置ORACLE_HOME环境变量

右击“我的电脑”点击”属性“菜单,进入”系统属性“对话框,选择”高级“标签,点击“环境变量”,在用户变量框区域,新建一个名为‘ORACLE_HOME的变量名,根据自己的ORACLE实际安装目录填写其值,例如,笔者的环境的ORACLE_HOME的值为” C:\oracle\product\12.1.0\dbhome_1”

2.2 引用instantclient-basic-win32-10.2.0.5

将instantclient-basic-win32-10.2.0.5.zip文件解压,压缩后的文件,复制到PLSQL Developer安装目录的product目下,如C:\oracle\product\,最终instantclient的目录为C:\oracle\product\C:\oracle\product\instantclient-basic-win32-10.2.0.5\instantclient_10_2

instantclient-basic-win32-10.2.0.5.zip文件,笔者已上传到“系统性能优化专业群”群共享中供各位下载。

2.3 在PLSQL中配置ORACLE_HOME与OCI库

2.3.1 配置ORACLE_HOME

在PLSQL主菜单上点击Tools,选择Preferences子菜单,进入“首选页”对话框,在“连接”选项卡的右侧,找到“Oracle主目录名(自动检测为空)”,在该框中填写ORACLE的HOME目录名,如:“C:\oracle\product\12.1.0\dbhome_1”

2.3.2 配置OCI库

在PLSQL主菜单上点击Tools,选择Preferences子菜单,进入“首选页”对话框,在“连接”选项卡的右侧,找到“OCI库(自动检测为空)”,在该框中填写oci.dll文件的绝对路径,如:“C:\oracle\product\instantclient-basic-win32-10.2.0.5\instantclient_10_2\oci.dll”

3、结果

上述四步配置完成后,重启PLSQL,就可以识别ORACLE_HOME,并能找到ORACLE客户端tnsnames.ora文件中的数据库连接串了。

  原文地址:http://blog.csdn.net/netdevgirl/article/details/27818709

  另外一种解决办法:

  

安装了64位的ORACLE 11g,使用PLSQL Developer配置好之后 ,读不到oracle的数据库。

现象如下图:

结合自己的分析和其它资料,总结了解决方法。

1 因为PLSQL Developer是32位的,所有需要下载oracle32位的客户端,

地址:http://www.oracle.com/technetwork/topics/winsoft-085727.html。

instantclient-basic-nt-11.2.0.4.0.zip。免安装版的,下载下来解压的本地就行了。

2 假设:oracle的安装home路径为D:\oracle\product\11.2.0;

客户端的解压地址为D:\oracle\instantclient_11_2。

3 配置环境变量:这一步和其它方法略有所不同,这里可以不复制tnsnames.ora文件到客户端目录中。

(相信这里就不用说怎么配置环境变量了吧):

TNS_ADMIN =D:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN

NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK

说明:TNS_ADMIN,是指tnsnames.ora文件所在的目录名。

如果指定到客户端目录,则必须把tnsnames.ora文件复制过来才可以。

NLS_LANG环境变量,要设置成和数据库端一致,可以在SQLPLUS查询字符集信息

SQL> select userenv(‘language‘) nls_lang from dual;
NLS_LANG
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

4 客户端的使用在这里:

设置Oracle Home 为oracle安装目录home

设置OCI Library为oracle客户端的oci.dll文件的全路径名。

Apply & Ok。

5 关掉plsql,重启。看一下,现在有了

这里主要就是两点,环境变量TNS_ADMIN配置成tnsnames.ora文件所在的目录名;

PLSQL中OCI Library设置成oracle客户端的oci.dll。

时间: 2024-11-04 21:00:50

关于PLSQL登陆Oracle11G无法读取Oracle数据库问题的相关文章

PLSQL Developer工具远程连接Oracle数据库的方法

Oracle数据库安装过程较为繁琐,而且卸载更加麻烦,如果卸载不干净,下次安装Oracle就不会成功.下面就为大家介绍一种不用安装Oracle客户端而利用PLSQL Developer工具远程连接Oracle数据库的方法. 首先需要在Oracle官网上下载这个软件:instantclient-basic-win32. 然后解压,打开这个文件,在里面新建一个文件:NETWORK,在NETWORK中新建一个文件夹:ADMIN,在ADMIN中新建一个文件:tnsnames.ora.在tnsnames.

Oracle客户端+PLSQL Developer实现远程登录Oracle数据库

Oracle数据库功能强大.性能卓越,在造就这些优点的同时,也导致Oracle占内存比较多.针对这个问题,我们如何做到取其精华去其糟粕呢? 解决方案:我们可以在局域网内的服务器上安装庞大的Oracle数据库,在开发人员的PC机上安装Oracle客户端,通过Oracle客户端远程登录Oracle数据库. 操作步骤: 1.我们可以从Oracle官网下载Oracle客户端软件,也可以从百度网盘下载,网盘推荐下载地址:http://pan.baidu.com/s/1kTyZdsz,下载完成后安装: 2.

JSP读取Oracle数据库里的图片Blob字段并显示在页面上<转>

java代码:首先定义一个读取Oracle数据库的Blob字段并把字节写入一个输出流的方法. 1 public static void writeImg(OutputStream os) { 2 Connection con; 3 try { 4 con = ConnectionFactory.getConnection(); 5 Statement stmt = con.createStatement(); 6 ResultSet rs = stmt.executeQuery("select

JAVA读取Oracle数据库BLOB字段数据文件并保存到本地文件

******JAVA读取Oracle数据库BLOB字段数据文件并保存到本地文件****** package com.bo.test; import java.io.FileOutputStream; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import

C#应用程序中读取Oracle数据库

前言 最近的任务就是开发了一个功能,要从供应商那边读取数据,然后拿过来,处理以后放到我们自己的数据库中.供应商那边是Oracle数据库,其实不管什么数据我想都差不多,于是我就开始了.由于在家里写的博客,那些截图都放在公司电脑了,希望能通过文字让大家明白,多有不周还请原谅. 过程 第一种方法:一开始我是用的.net里面自带的那个System.Data.OracleClient;引用.然后把Oracle客户端装了,结果不行.Oracle客户端装的是及时版本.执行后不断的报错,什么无法标示了,版本得多

使用PLSQL Developer和DbVisualizer查询oracle数据库时出现乱码

使用PLSQL Developer和DbVisualizer查询oracle数据库时,出现查询数据中文乱码情况. 查看了一下数据库编码格式select * from v$nls_parameters; 查看编码值为WE8ISO8859P1.而电脑环境变量NLS_LANG的值为AMERICAN_AMERICA.ZHS16GBK.更改为AMERICAN_AMERICA.WE8ISO8859P1之后重启工具就好了.如果没有此环境变量,可以新建一个,将编码值更改为一致. 我的机器到此就好使了,据说有的需

cx_Oracle读取Oracle数据库中文乱码问题解决

在使用cx_Oracle模块读取Oracle数据库中的中文记录时,返回值皆为?,后google得此佳文,遂问题得以解决,特此记之. Oracle数据库版本是10g,字符集是AL32UTF8. 编写的python脚本中需要加入如下几句: import os os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8' 这样可以保证select出来的中文显示没有问题. 要能够正常的insert和update中文,还需要指定python源文件的字符集

plsql无法连接64位oracle数据库的解决方法

今儿个重装了个系统,win8 64位.接着装了个64位的oracle11g,oracle11g下载页面:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html,找到适合自己系统的数据库,需要将file1和file2都下载下来,压缩到同一个文件夹下才能进行安装,否则安装不了. 接着用免安装的plsql连接数据库试了试,发现没有连接的权限可选,如图 直接输入用户名.密码和数据库名,提示如下:

plsql无法连接64位oracle数据库的解决方法(图文解说)

oracle11g下载页面:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html,找到适合自己系统的数据库,需要将file1和file2都下载下来,压缩到同一个文件夹下才能进行安装,否则安装不了. 接着用免安装的plsql连接数据库试了试,发现没有连接的权限可选,如图 直接输入用户名.密码和数据库名,提示如下: 说明plsql是不可以直接连接64位oracle数据库,只能连接32位.既

Oracleclient+PLSQL Developer实现远程登录Oracle数据库

Oracle数据库功能强大.性能卓越,在造就这些长处的同一时候,也导致Oracle占内存比較多.针对这个问题,我们怎样做到取其精华去其糟粕呢? 解决方式:我们能够在局域网内的server上安装庞大的Oracle数据库,在开发者的PC机上安装Oracleclient,通过Oracleclient远程登录Oracle数据库. 操作步骤: 1.我们能够从Oracle官网下载Oracleclient软件,也能够从百度网盘下载,网盘推荐下载地址:http://pan.baidu.com/s/1kTyZds