Bug:plsql ora-12557(协议适配器不可加载,win8.1,64)
·
Bug:plsql ora-12557(协议适配器不可加载,win8.1,64)
报错详情
登陆plsql时报ora-12557,可是使用sqlplus登陆正常
报错分析
可能还是之前安装oracle,没有卸载干净。或则是工具-参数-OCI库路径错误
解决方法
在百度,csdn,博客园看到好多解决方法,但是有的有效,有的尝试无效。在此,本人先写上试了好久以后,对于本人电脑解决的方案,然后会附上其他一些主流方法。
- 方法(针对本机)
前提:监控和服务已打开, tnsping 127.0.0.1正常,sqlplus可以登录
工具:instantclient_11_2
a)下载instantclient_11_2,安装
b)打开pl/sql->工具->首选项
c)填写oracle主目录和OCI库(会自动弹出”下次自动生效”点确定即可)
本机目录:
D:\programme\Packagebag\Oracle\instantclient_11_2
D:\programme\Packagebag\Oracle\instantclient_11_2\oci.dll
e)应用->确定->重新打开plsql即可
- 主流方法
- a)删除ORACLE_HOME
电脑->属性->高级->环境变量->ORACLE_HOME
本机效果:
- b)新建Oracle_Home变量,
电脑->属性->高级->环境变量->ORACLE_HOME->重启
D:\app\admin\product\11.2.0\dbhome_1
本机效果:a)和b)反复试验,pl/sql没有任何反应==,头疼 - c)系统变量path里面把DB路径放前面,Client路径发后面
电脑->属性->高级->环境变量->path
D:\app\admin\product\11.2.0\dbhome_1\bin(前)
D:\app\admin\product\11.2.0\client_1\bin(后)
这个解决方法是上google搜的,有很多帖子证实有效
http://www.dba-oracle.com/t_ora_12577.htm - d)plsql->帮助->支持信息->Preferences中的OCI Library
(本机现在是D:\programme\Packagebag\Oracle\instantclient_11_2\oci.dll,但是之前看到这个帖子尝试的时候,本机OCI Library为空)
查找Default.ini文件->OCIFile改掉成9i的路径(OCIFile=D:\Oracle9i\ora90\BIN\oci.dll)
(打开Default.ini后,没有找到OCIFile,只好换一种方法,有看到的博主,知道怎么弄的,麻烦通知我一声)
http://blog.csdn.net/haiross/article/details/44077865 - e)Oracle的tnsnames.ora配置
本机地址:
D:\app\admin\product\11.2.0\dbhome_1/NETWORK/ADMIN/\tnsnames.ora
CONN_ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.144.191)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
登陆plsql
以上五种方法,本人都尝试过,唯有instantclient_11_2成功。但是电脑不同,可能问题不同,解决方案也不一样,需要对症下药。祝大家能够一次性解决plsql ora-12557问题。
更多推荐

所有评论(0)