这篇文章主要介绍“怎么解决Oracle客户端连接远程服务器时遇到的ORA-21561问题”,在日常操作中,相信很多人在怎么解决Oracle客户端连接远程服务器时遇到的ORA-21561问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么解决Oracle客户端连接远程服务器时遇到的ORA-21561问题”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
Ubuntu 16.04系统下,安装了Oracle客户端和SQLPLUS工具后,通过sqlplus连接数据库,遇到问题:“ORA-21561: OID generation failed”。
root@SvrInterface: ~# sqlplus mandala_ods@ods
SQL*Plus: Release 11.2.0.4.0 Production on Mon Dec 9 14:23:24 2019
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Enter password:
ERROR:
ORA-21561: OID generation failed
查了Oracle文档,讲了问题的原因与环境变量有关。
ORA-21561: OID generation failed
Cause: The handles passed in may not be valid
Action: Check the validity of the env, svc handles
上网查了一下,查到讲是主机名的问题,具体讲就是:
在/etc/hosts文件中,127.0.0.1对应的主机名与hostname返回的主机名不符。
root@SvrInterface: ~# hostname
SvrInterface
root@SvrInterface: ~# cat /etc/hosts
127.0.0.1 localhost
192.168.84.153 SvrNursePDA
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
修改/etc/hosts文件,把127.0.0.1对应的主机名改成hostname返回的主机名,二者相符后,问题排除。
到此,关于“怎么解决Oracle客户端连接远程服务器时遇到的ORA-21561问题”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!