ORA-21561 OID generation failed [Ubuntu 16.04下Oracle客户端连接服务器]

来源:这里教程网 时间:2026-03-03 14:40:52 作者:

前文( http://blog.itpub.net/81227/viewspace-2668066/ ) 已经讲述了Ubuntu 16.04系统下Oracle客户端和SQLPLUS工具的安装。

本文记录了在Ubuntu 16.04下Oracle客户端连接远程服务器时遇到的ORA-21561 OID generation failed 问题的解决办法。

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返回的主机名,二者相符后,问题排除。

相关推荐