PL/SQL Developer远程连接Oracle数据库

时间:2021-11-29 21:02:31

修改数据库配置文件:tnsnames.ora  【我的数据库位置:D:\app\Icey-evil\product\11.2.0\dbhome_1\NETWORK\ADMIN】

根据服务器地址加入以下内容:

10.88.250.28 =
(DESCRIPTION
=
(ADDRESS_LIST
=
(ADDRESS
= (PROTOCOL = TCP)(HOST = 10.88.250.28)(PORT = 1521))
)
(CONNECT_DATA
=
(SERVICE_NAME
= ORCL)
)
)

说明:HOST = 10.88.250.28 是需要连接的oracle服务器 IP,SERVICE_NAME = ORCL是连接的数据库实例,PORT = 1521是oracle服务器监听端口。

配置完成,用PL/SQL Developer工具进行远程连接,database即为添加的tns服务名,这里是 10.88.250.28。

远程连接过程中出现的问题:

1.ORA-12638: 身份证明检索失败

 解决方法: 

  查阅相关资料,说是将本地文件sqlnet.ora中的SQLNET.AUTHENTICATION_SERVICES= (NTS)注释掉,或者将其改为SQLNET.AUTHENTICATION_SERVICES= (NONE)。

  按照以上方法将本地文件sqlnet.ora修改后,重新连接,依旧是ORA-12638。

  个人将服务器上的文件sqlnet.ora中的SQLNET.AUTHENTICATION_SERVICES= (NTS) 改为SQLNET.AUTHENTICATION_SERVICES= (NONE)后重新连接,连接成功。

  【SQLNET.AUTHENTICATION_SERVICES 表示oracle使用哪种验证方式,NTS表示采用本地操作系统认证,NONE表示将采用口令文件方式认证。设定了none后,本地的操作系统认证将不被许可,oracle将采用口令文件认证】

2.   PL/SQL Developer登陆后提示:

Database character set (AL32UTF8) and Client character set (ZHS16GBK) are different.
Character set conversion may cause unexpected results.

Note: you can set the client character set through the NLS_LANG environment variable or the NLS_LANG registry key
in
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1.

 解决方法:修改注册表

  win+r —> cmd —>regedit —>enter;

  找到KEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1

     【win 64位系统中在HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE\KEY_OraDb11g_home1,Wow64放的是64位操作系统下安装的32位程序】

  找到 NLS_LANG 键,原值是:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

  将其改为:SIMPLIFIED CHINESE_CHINA.AL32UTF8

  重新打开PL/SQL Developer ,登录,Ok.