plsql连接不了oracle的解决办法

PLSQL developer 连接不上64位Oracle 的解决方法 

 Windows 64位下装Oracle 11g 64位,PLSQL Developer使用出现以下问题:

1、Database下拉框为空:

2、强制输入用户名、密码及Database,登录弹出:

引用
Initialzation error
Could not initialize
"...."
Make sure you have the 32 bits Oracle Client installed.

OracleHomeKey:
OracleHomeDir:...
Found:oci.dll
Using:
...
Loadlibrary(...)
returned 0

说明PLSQL Developer并不支持Oracle 64位客户端连接。

解决办法:

1、下载32位Oracle客户端
其实可以下载免安装版的,http://www.oracle.com/technetwork/topics/winsoft-085727.html
我下载的是第一个: http://download.oracle.com/otn/nt/instantclient/112030/instantclient-basic-nt-11.2.0.3.0.zip
下载需要登录,得先在Oracle注册账号才能下载!

2、解压
将下载到的将其解压,如我解压到了 d:\app\instantclient_11_2

3、设置PLSQL Developer
在工具-首选项,连接,OCI库输入
d:\app\instantclient_11_2\oci.dll

4、添加环境变量
系统变量中添加2个:
第一个是指向TNS文件所在目录的,这个目录是你安装的64位版本Oracle的TNS文件所在目录。
TNS文件就是保存了连接信息的文件。
TNS_ADMIN  值: E:\app\OYK\product\11.2.0\dbhome_1\NETWORK\ADMIN

如果没有安装Oracle,在instantclient_11_2目录下新建NETWORK\ADMIN目录,在ADMIN目录下新建tnsnames.ora文件,添加数据库TNS。
ORCL =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
 )

第二个是指定数据库使用的编码。如果不设置成以下值,那么连接上数据库后,你看到的所有中文的内容将会是乱码,都是一堆问号。
NLS_LANG  值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

注意:设定了环境变量之后,一定要注销或者重启一下电脑才生效!

以上在Win7X64下测试通过。通过4步设置,可以正常连接本机和其它机器的Oracle数据库了。

你可能感兴趣的:(database)