一切都始于我尝试将 11g db dump 导入 12c R2 oracle。
数据库转储 - 11.02.0 服务器 - 12.2.0.1.0
我收到 tns 错误“无法解析指定的连接标识符”。经过一番研究,我通过将 oracle home 添加到系统变量来修复它。
然后导入命令开始给出“协议适配器不可加载错误”(与 Toad(11.5)相同),我通过将 Oracle 主路径放在客户端路径变量之前的路径变量中来修复此问题。
之后,使用 IMP 命令的导入开始工作,但是当我启动 toad(在添加 oracle home 之前可以工作,但在添加 oracle home 之后就不行了),输入数据库详细信息并点击连接时,它一直失败并弹出一个窗口显示“协议适配器无法加载”。
请帮忙。
答案1
Oracle 文章 ORA-12557: TNS: 协议适配器不可加载 建议:
此问题有两种解决方案:
将 Oracle DB Home 放在 PATH 环境变量中其他路径的前面。
从环境变量中删除 ORACLE_HOME 并重新启动 PC
解决方案 1 似乎表明 PATH 变量中项目的顺序在这里确实很重要。要求将 Oracle DB Home 放在 Oracle Client Home 前面。
答案2
感谢您的所有回复。
我删除了 ORACLE_HOME,并将路径变量中的服务器路径移到了 oracle 客户端路径上方。现在,我必须添加 oracle_home 来修复侦听器问题,为此我刚刚删除了该侦听器,并使用 oracle 附带的网络配置实用程序在 1521 上创建了新侦听器(我在 tnsnames.ora 中也有一个条目)。现在一切正常。