`

32位PLSQL用不了Oracle64位的解决方法

阅读更多

系统安装了Oracle 11g R2 64位的服务端数据库,想用32位PLSQL来连接。

1 解压下载下来的客户端压缩包,存放到一个自己想要的路径。

2 把oracle服务端下NETWORK\ADMIN的tnsnames.ora文件复制到刚才下载下来客户端的NETWORK\ADMIN下,如果没有这个路径,请自行创建。

3 打开我的电脑->属性->系统属性->环境变量。在这里添加以下几个变量:(在命令行下查看变量值,echo %ORACLE_HOME%)

ORACLE_HOME:指向oracle服务端安装路径,没有这个变量的话,Oracle的Listener服务没法启动,如果没用到本地数据库的话,可以不添加。

TNS_ADMIN:用于指定tnsping下系统要到哪个路径下去找tnsnames.ora数据源文件。

NLS_LANG:变量值跟服务器查询到的值一致即可。(查询语句:select userenv('language') from dual;

4 打开PLSQL工具,点击cancel,进入界面,打开Tools->Preferences->Connections下

设置oracle的路径(指向下载下来的客户端路径,如:F:\app\bin\product\11.2.0\instantclient_11_2)

设置oci.dll路径(指向客户端下的ori.dll,如F:\app\bin\product\11.2.0\instantclient_11_2\oci.dll)

在客户端下的tnsnames.ora添加远程数据库源。重启PLSQL,打开连接。

tnsping命令:就是从TNS(tnsnames.ora文件)中读取HOST和POST参数,然后打开一个套接字连接,向监听发送一个ping,监听则以pong来响应。其他参数并不会生效,所以不能确定数据库实例和数据库服务是否可用,也不能确定如SID,SERVICE_NAME,INSTANCE_NAME等参数。

(所以可以用telnet <HOST> <POST>来代替,测试成功后再断开即可。)

sqlplus命令:用于远程登录数据库,有两种方式:

sqlplus <用户名>/<密码>@"(DESCRIPTION= (ADDRESS= (PROTOCOL=TCP)(HOST=<ip>)(PORT=<port>)) (CONNECT_DATA= (SID=<别名>) (SERVER=<数据库名>)))"

 或

sqlplus <用户名>/<密码>@<别名> 

 

由于上传文件不能超过10MB,就不添加oracle 11g r2 32位的客户端了,如需要请自行百度,或联系我要。

 

资料来自于:

http://blog.csdn.net/qtyl1988/article/details/37655295

http://orafaq.com/wiki/Tnsnames.ora

http://orafaq.com/wiki/ORACLE_HOME

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics