PLSQL 乱码&TNS-12557: protocol adapter not loadable

1.乱码是字符集问题。

GBK:

set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

(或者set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)

或者

UTF8:

set NLS_LANG=AMERICAN_AMERICA.UTF8

可以解决。

不知道可以查询一下:select userenv('language') from dual;

若字符集不错在会出现:ORA-12705: invalid or unknown NLS parameter value specified,那就再换个。 

2.我遇到链接时报TNS-12557: protocol adapter not loadable

启动监听器时报ORA-27101: shared memory realm does not exist

导致这个原因是我在环境变量里加了ORACLE_HOME,指向的路径是另一个oracle版本,两个客户端和服务器都是在一台机器上,导致oracle找不到部分文件。

解决方法不要设置ORACLE_HOME到全局环境变量,或者要设置的话必须指向oracle服务器的路径。

bat脚本启动plsql如:

set ORACLE_HOME=E:\oracle\client9.0\ora90
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
plsqldev.exe

 preferences里面Oracle Home指向你希望的客户端路径。

我的客户端是从其他机器上整个文件夹拷贝过来的。

猜你喜欢

转载自bnmnba.iteye.com/blog/1902165