目录
上次已成功变更数据库编码,这次接着解决数据库编码变更后遗症。
一、解决Navicat连接Oracle失败
Navicat(版本16.0.6.0 )无法连接Oracle。提示:
ORA-28547:connection to server failed,probable Oracle Net admin error
原因是Navicat自带的OCI.DLL(instantclient_11_2)不支持 Oracle的GBK编码,需要下载支持的版本,本文下载的是instantclient_21_12。
在Navicat菜单中选择“工具->选项->环境->OCI环境”选择oci.dll文件,点击“确定”,重启Navicat后测试连接正常。
按照如上步骤处理后,虽然Navicat能连接上Oracle,但打开导入的数据head表有错误提示:
ORA-29275:partial multibyte character
二、解决打开表ORA-29275
1.修改环境变量【失败-请跳过】
1)可能原因
①已导入的数据某个字段有中文、生僻字、或者整个字符集就不是GBK或者UTF-8等操作系统默认字符集,然后Oracle转码失败会报错。
②可能是数据库中的字符集变量应与操作系统环境变量所对应的字符集不一致。控制操作系统字符集与Oracle数据库字符集的是环境变量NLS_LANG,修改环境变量如下:
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
测试打开head表仍然失败,还是同样的报错提示。
2.删除数据表重新导入【解决】
Navicat打开head表正常,如下图所示。
三、参考资料
2. navicat连接Oracle失败问题_navicat oracle 改字符集(al32utf8)为(zhs16gbk)后 navicat -CSDN博客
3.navicat cannot load oci dll||oracle 改字符集为GBK后 navicat 连不上||Ora-28547 ora net错误-CSDN博客
4.select * 查询数据报:ORA-29275: partial multibyte character-CSDN博客