因为 plsql 不支持 64位 oracle 客户端,所以plsql 必须使用 oracle 的 32位 instanclient 包。  解压缩后放一个目录,例如: D:\Oracle\instantclient_10_2

ps: 用 10g 的32位 instantclient 包也可以连接 11g oracle 64位库

1、进 plsql 后,在首选项下设置  oracle home 的地址:D:\Oracle\instantclient_10_2, 同时设置 oci 的位置: D:\Oracle\instantclient_10_2\oci.dll

2、需要在系统的环境变量内设置 tns_admin, 值为 D:\Oracle\instantclient_10_2, 这让 plsql 启动时知道去哪找 tnsnames.ora 文件

3、环境变量还需要设置 nls_lang, 值为 SIMPLIFIED CHINESE_CHINA.ZHS16GBK, 当然这根据你自己的数据库来

一般情况下这样后, plsql 就可以用了

如果此时登陆发现提示 无法解析指定的连接标识符,或类似的语句, 那多半是因为监听程序没设置好了。  默认监听程序的监听列表中不指定具体的oracle 实例是哪个, 碰到这种情况就把具体的监听实例描述加上就好了(红色那段), 具体原因不知道...   配置完后,记得去重启 oracle 的listener 服务。

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = d:\oracle\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:d:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
   (SID_DESC =
      (GLOBAL_DBNAME = ORCL)
      (ORACLE_HOME = d:\oracle\product\11.2.0\dbhome_1)
      (SID_NAME = ORCL)
   )
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = Tyson-mac)(PORT = 1521))
(ADDRESS = (PROTOCOL = NMP)(SERVER = TYSON-MAC)(PIPE = ORAPIPE))
)
)

注意: 这个位于oracle 11g安装目录下的 listener.ora 文件, 例如:D:\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN

而不是 instantclient 下的, 因为oracle 的服务用的,指向的还是那边

==========================

接着再补充:

注意: 最好使用配套的32位 instant, 例如, 服务器是 11.2 64位,则下载 11.2 的 32位版本

另外, 为了让其他32位应用程序使用正常, 需要设置环境变量,具体设置如下:

ORACLE_HOME :是所有需要关联更多oracle 文件时去取的根目录, 如果你错误地设置为了 原先的 instant 的地址,那么你运行 sql plus 之类的程序就会提示错误。实验发现32位程序也需要指向 64 位的oracle根目录才正常(这点为什么没细想)

TNS_ADMIN: 这是取 oracle 服务列表的目录, 设置后,plsql 才能正确列表列出并链接服务器。 所以这可以设置 instant 目录,并把 tnsnames.ora 文件放此目录下

PATH: 这是其他32位应用程序找到 oci 等dll文件的搜索路径,如果不设置自然报错说没有找到组件啥的。所以,需要设置 32位的 instant 目录

NLS_LANG:  这决定了你应用程序所链接的数据库存储的数据是用的什么格式的数据。 一般可设置为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK   如果不设应该默认是的是 unicode, 也就是3位字节存储, 那你应用程序打开后看到的从数据库中调入的数据很可能是乱码

关于oracle 11g 64位与 32位的 plsql、及其他32位应用程序共存的问题的更多相关文章

  1. oracle 11g 64位安装32位客户端和PL/SQL

    转自:http://www.360doc.com/content/14/0602/10/4903283_382949382.shtml   这个你需要安装一个32位的oracle客户端才能使用plsq ...

  2. PLSQL Developer 不能连接 oracle 11g 64位 的解决办法

    http://blog.itpub.net/14184018/viewspace-760730 http://www.cnblogs.com/gulvzhe/archive/2012/08/27/26 ...

  3. c# Oracle 远程连接方式 plsql 连接oracle 11g 64位

    1.本地连接字符串:   string connect = "Data Source=orcl;user=XXX;password=XXX;Persist Security Info=Tru ...

  4. 安装ORACLE 11g 64位 pl/sql无法进入的问题。

    转载自网上的内容: 1)安装Oracle 11g 64位 2)安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0)下载地址:http://www ...

  5. oracle_安装_win7+64位+Oracle+11g+64位下使用PLSQL+Developer+的解决办法

    1)安装Oracle 11g 64位 2)安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0) 下载instantclient-basic-wi ...

  6. win8 64位+Oracle 11g 64位下使用PL/SQL Developer 的解决办法

    1)安装Oracle 11g 64位2)安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0)下载 instantclient-basic-win ...

  7. 解决PL/SQL Developer 连接oracle 11g 64位中的问题

    1.错误1:Initialization error could not initialize 电脑上原本就装有oracle 11g 64位,但是PL/SQL却怎么也连接不上,报出" Ini ...

  8. win7+64位+Oracle+11g+64位下使用P…

    1)安装Oracle 11g 64位   2)安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0)   下载instantclient-basi ...

  9. oracle 11g 64位安装sqldeveloper打开不了

    oracle 11g 64位安装sqldeveloper打开不了解决方法: 1.到官网下载对应版本的sqldeveloper. 2.找对应安装路径下的F:\app\Administrator\prod ...

随机推荐

  1. c#中匿名函数lamb表达式

    c#中匿名函数lamb表达式 实例一:(其实,这样都是些语法糖) using System; using System.Collections.Generic; using System.Linq; ...

  2. SQLServer DMV Query

    1.DMV Query to identify all active SQL Server Sessions The query below identifies all currently acti ...

  3. 微信小店分类ID列表

    一级分类 { , "errmsg": "ok", "cate_list": [ { ", "name": &q ...

  4. android framework浅析_转

    Android系统从底向上一共分了4层,每一层都把底层实现封装,并暴露调用接口给上一层. 1. Linux内核(Linux Kernel) 1)Android运行在linux kernel 2.6之上 ...

  5. MvvmLight 绑定

    添加MvvmLight引用,通过Nuget: 加载nuget以后会有ViewModelLocator.cs: 新建自己的ViewModel,继承ViewModelBase: View 通过资源引用Vi ...

  6. Xcode 6.x 添加Empty Application模板

    Xcode 6.x 添加Empty Application模板 在Apple最新的XCode6.x中没有了Empty Application模板,这对一个老人来说是不能别接受的,同时也可以看出Appl ...

  7. PAT 解题报告 1052. Linked List Sorting (25)

    1052. Linked List Sorting (25) A linked list consists of a series of structures, which are not neces ...

  8. 脚本:SQLServer 2008 生成某数据库中的所有索引创建脚本

    --1. get all indexes from current db, place in temp table select schemaName = s.name, tablename = ob ...

  9. ssh tunnel通道

    Secure SHell (SSH) 是一个通过网络登录其他计算机的程序,在远程服务器运行命令,和从一台机器移动文件到另一台.在不安全的网络中,它提供两台主机之间强大认证和安全加密的的通讯,被称为 S ...

  10. PostgreSQL Replication之第十一章 使用Skytools(1)

    向您介绍了 Slony 之后,我们将介绍另外一种流行的复制工作.Skytools 是一个最初有 Skype 开发的软件包,它有多种用途.Skytools 不只是一个单一的程序,而且是一个工具与服务的集 ...