用PL/SQL连接Oracle时会抛若干错误,如下:
1、ora-12154:TNS:无法解析指定的连接标识符
答:plsql在%Oracle_Home%\Network\Admin或者c:\instantclient下的tnsnames.ora中找不到对应的连接标识符。注意“orcl_192.168.0.1”前面一定要顶格,如果有多余的空格,也会解析错误。如果安装了Net Manager,尽量用这个工具添加,不容易出错。
2、ora-12541:TNS:无监听程序
答:在连接字符串指定的IP和端口如192.168.0.1:1521处找不到监听程序。在Server端首先要有名字为这个Oracle实例的服务,如果实例名为devdb,那么windows服务里应该有一个服务OracleServiceDevdb并且处于启动状态。如果没有,则会报ora-12541。其次会有供其他客户端访问的监听服务,比如OracleOraHome92TNSListener,这个服务也应该处于启动状态。如果没有,则报ora-12514。
3、ora-12514:TNS:监听程序当前无法识别连接描述符中请求的服务
答:有监听程序,但找不到oracle服务实例的时候,会抛这个异常。
4、查看当前plsql采用的tnsnames.ora文件
答:在plsql菜单->Help->About->Info页面里,能看到当前tns file和character sets的设置。
5、安装ODAC11.2存在多个ODAC后plsql乱码问题
答:设置HKLM.Software.Oracle.KEY_OraClient11g_home2.NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
作者:AlexanderYao
出处:http://alexanderyao.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。