欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

plsql11 x64 安装和配置 解决OCI: not initialized 博客分类: 数据库  

程序员文章站 2024-03-15 12:06:41
...



下载了instantclient-basic-windows.x64-12.1.0.2.0.zip和plsqldeveloper11x64.zip

配置instantclient
解压instantclient到d:\instantclient_12_1
配置以下环境变量
TNS_ADMIN=d:\instantclient_12_1
PATH变量最后加 ;%TNS_ADMIN%

安装plsql
设置PLSQL Developer中设置Oracle_Home和OCI Library,
在tools/preference里,oracle-connection选项配置oracle home和oci library。

例如我的是oracle home:d:\instantclient_12_1,oci library:d:\instantclient_12_1\oci.dll。

配置tnsnames.ora
新建文本文件d:\instantclient_12_1\tnsnames.ora
文件内容
orcl =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SID = orcl)
    )
  )


关闭plsql,重新打开plsql,发现配置的数据库连接无法使用,
tnsnames.ora没有生效,查看plsql的help--》support info
OCI Library: d:\instantclient_12_1\oci.dll
Use OCI7: False

DLL: d:\instantclient_12_1\oci.dll
OCI: not initialized


网上的贴子说,windows上有个什么文件没有,只能用32位的instantclient,
删除原来的64位的instantclient,换成32位的instantclient,
换完后,x64的plsql调不能x32的instantclient,卸载64位的plsql11
换32位的plsql8,结果,还是报错。

网上贴子又说,要同时装instantclient32位和instantclient64,还要装
oracle client,不敢想,这些人到底在干嘛,以前使用plsql从来没有
装过oracle client,装了oracle client,就不用装instantclient了,
多此一举。

去官网查看文档,提示可以试试下载sqlplus试试可以运行不可以
下载了instantclient-sqlplus-windows.x64-12.1.0.2.0.zip
解压后复制instantclient_12_1里的文件到d:\instantclient_12_1

打开命令行,执行sqlplus命令,提示msvcr100.dll missing

英文网站搜一下
http://answers.microsoft.com/en-us/windows/forum/windows_7-windows_programs/trying-to-open-computer-management-the-program/5c9d301a-2191-4edb-916e-5e4958558090?auth=1
提示需要microsoft visual c++ redistributable package支持

下载安装 microsoft visual c++ redistributable 2010 x64

安装后,重启plsql,熟悉的数据库连接出来了,由于受网贴误导,
安装一个必备工具,花费超过10个小时的工作时间。