解决中64位Win7系统上PLSQL无法连接ORACLE的方法(PLSQL无法识别ORACLE_HOME的配置)
最近新安装了64位的Win7系统,工作中需要用oracle数据库,而数据库是公司IT的DBA进行管理和维护的。
我们只需要连接上去进行使用就可以了,于是我就在自己的机器上安装了oracle client x64和PL/SQL程序,oracle client也设置了环境变量等配置,但打开plsql的时候无法显示数据库,效果如下图:

于是,我自己到网上查了一下,网上说法很多,如下说明。
1、问题
Plsql到目前为止只有32位的程序,而大多数的桌面系统基本都是使用64位的windows操作系统,在64位的windows上,大多数情况下也是安装64位的ORACLE client程序,这种组合,导致plsql无法识别到ORACLE_HOME目录,读取不到tnsnames.ora文件中的连接串
2、解决方案
2.1使用instantclient-basic-win32-10.2.0.5
去官方网站下载,将instantclient-basic-win32-10.2.0.5.zip文件解压,压缩后的文件,复制到指定的目下,如C:\oracle\instantclient_10_2\,最终instantclient的目录为C:\oracle\product\instantclient_10_2
2.2 在windows上配置环境变量
右击“我的电脑”点击”属性“菜单,进入”系统属性“对话框,选择”高级“标签,点击“环境变量”,在用户变量框区域,新建一个名为‘ORACLE_HOME的变量名,根据自己的ORACLE实际安装目录填写其值,例如,笔者的环境的ORACLE_HOME的值为” C:\oracle\product\instantclient_10_2”
参考出处:http://www.2cto.com/database/201503/386267.html
===============================================================
安装了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。
参考出处:http://blog.csdn.net/netdevgirl/article/details/27818709
==============================================================
另外,也可以编写一个bat文件设置下环境变量;
打开PLSQL Developer的安装目录C:\Program Files\PLSQL Developer
编写一个a.bat,文件内容如下:
@echo off
set path=D:\Program Files\instantclient_11_2
set ORACLE_HOME=D:\Program Files\instantclient_11_2
set TNS_ADMIN=D:\Program Files\instantclient_11_2
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
start plsqldev.exe
注意:set NLS_LANG=AMERICAN_AMERICA.AL32UTF8(为英文)
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK(中文的)
我这里oracle11g有可能数据库是中文所以我用了16gbk的,保存txt文本并且修改后缀名为bat,然后双击bat文件,作为PLSQL Developer的启动快捷方式替换PLSQL Developer传统启动方式
5,关闭PLSQL Developer重新打开连接成功,我这里所有的都用管理员身份运行的;
6,注意:以后Oracle的监听每次有修改过都要双击a.bat重新指向!要不然就会报ora-12154 tns:could not resolve the connect identifier specified错误
出处:http://blog.csdn.net/tang745163962/article/details/47419501
解决中64位Win7系统上PLSQL无法连接ORACLE的方法(PLSQL无法识别ORACLE_HOME的配置)的更多相关文章
- 64位Win7下Asp.net项目连接Oracle时报ORA-6413:连线未打开异常
当时小弟碰到这个问题的时候,也找了挺久的回答,但是回答都是模棱两可的说是因为()的问题,但是没有给出具体的解决方案,这里小弟就用一个比较笨的方法来解决这个问题. 第一种:就是使用本地IISWeb服务器 ...
- 64位Win7系统下vs2010调试无法连接oracle解决办法
具体的解决办法如下: 1.先将WebDev.WebServer20.EXE和WebDev.WebServer40.EXE文件从Program Files (x86)目录中拷贝出来放到c:\dev目录中 ...
- 解决Tomcat6解压版在64位windows系统上无法启动服务的问题
解决Tomcat6解压版在64位windows系统上无法启动服务的问题 由于客户环境为64位windows系统,开发环境一直用32位.tomcat使用6.0.20非安装版.部署时发现在 ...
- 64位Win7系统下vs2010调试无法连接oracle
64位win7系统的Program Files (x86)路径中有括号,oracle不认识这样的路径,所以就出现不能连接数据库的问题.所以我们可以将vs2010的内部调试web服务器WebDev.We ...
- 64位Win7系统nbtstat 问题
64位Win7系统nbtstat 问题 姜糖水 2015-02-02 195 阅读http://ju.outofmemory.cn/entry/114353 在32位系统写:"cmd / ...
- 在64位Ubuntu系统上安装32位程序包
在64位Ubuntu系统上安装32位的程序包 $sudo apt-get install package_name:i386 例如: $sudo apt-get install openjdk-7-j ...
- 萝卜家园32位和64位Win7系统Ghost版
新萝卜家园32位Win7系统Ghost版Sp1,官方旗舰版采用Windows7 SP1简体中文旗舰版32位(MSDN官方发布正式版原版ios镜像)制作,并能够完美自动激活,采用自由天空驱动包,解决部分 ...
- 解决64位win7系统IIS7[ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序
从网上下载了一个asp系统,数据库是Access类型的,运行环境为 64位Windows 7系统,IIS7,运行系统后,报如下错误: Microsoft OLE DB Provider for ODB ...
- SQL Server 2008可以安装在win7 64位的系统上吗?
可以安装的.SQL 支持32和64位.安装时它自动选择的.下载时注意是完整安装包. SQLFULL_CHS 2008.iso大小:3.28G 已经过百度安全检测,放心下载
随机推荐
- 高频交易策略[z]
Market Order以最高速下市价单(market order)是买方最基本的策略 Looking for Price Discrepancies 这个就是高频统计套利(high frequenc ...
- SAS文档:简单的随机点名器
本次实验,我们设计了一个简单的随机点名系统,下面我来介绍一下它的SRS文档. 1.功能需求: 1.1 模块1 在此模块中,我们设置了RandomName类,创建一个随机点名器,里面加入了所在课程的名单 ...
- Daily Scrum 12.11
今日完成任务: 解决了类型同时存在于两个自动生成的DLL中导致编译不通过的问题:修复了主页标签显示的BUG:修复异常,网站可以在服务器端正常运行. 明日任务: 黎柱金 解决上传文档时建立文档和标签联系 ...
- [MongoDB]Mongodb攻略
-------------------------------------------------------------------------------------------- [基础] 1. ...
- 20145225唐振远 实验二 "Java面向对象程序设计"
20145225<Java程序设计> 实验二 Java面向对象程序设计 实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S ...
- ORA-01653:表空间扩展失败的问题以及增加表空间
一.脚本修改方式: ----查询表空间使用情况---使用DBA权限登陆SELECT UPPER(F.TABLESPACE_NAME) "表空间名",D.TOT_GROOTTE_MB ...
- ansible 2.2的源码编译安装
ansible代码下载地址:http://releases.ansible.com/ansible/ # git clone git://github.com/ansible/ansible.git ...
- XproerIM产品使用手册
1. 产品介绍 版权所有:(c)2009-2016 荆门泽优软件有限公司 保留所有权利. 产品官网:http://www.ncmem.com/apps/xproerim/index.asp 安装 ...
- 7.1 Java中的堆和栈
栈与堆都是Java用来在Ram中存放数据的地方.Java自动管理栈和堆,程序员不能直接地设置栈或堆. Java的堆是一个运行时数据区,类的对象从中分配空间.这些对象通过new.newarray.ane ...
- 封装getElementsByClassName()
function getElementsByClassName(node,classname){ if(node.getElementsByClassName){ ...