python cx_Oracle连接远程错误
我想用python连接到远程oracle数据库,并尝试创建一个数据帧:python cx_Oracle连接远程错误,python,oracle,Python,Oracle,我想用python连接到远程oracle数据库,并尝试创建一个数据帧: con = ora.connect('user/pass@remote_ip/XE') query = "select * from my_table" df = pd.read_sql(query, con) 我使用的是macOS high siera,我的主机文件如下所示: ## # Host Database # # localhost is used to configure the loopback inter
con = ora.connect('user/pass@remote_ip/XE')
query = "select * from my_table"
df = pd.read_sql(query, con)
我使用的是macOS high siera,我的主机文件如下所示:
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost local
127.0.0.1 localhost localhost.localdomain local lynx
255.255.255.255 broadcasthost
::1 localhost
127.0.0.1 activate.adobe.com
127.0.0.1 practivate.adobe.com
127.0.0.1 hlrcv.stage.adobe.com
127.0.0.1 na1r.services.adobe.com
127.0.0.1 quickplayer.tvgo.hu
80.211.194.173 anton
10.2.94.217 lynx
我得到了cx_Oracle.DatabaseError:ORA-21561:OID生成失败错误
如果我在Ubuntu上尝试,它会工作的
我的数据库版本:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for Linux: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production
我应该尝试什么?评论摘要: 运行hostname以获取操作系统认为您的名称 在本例中,主机名返回QGMAC.local 将此行添加到主机文件: 127.0.0.1 QGMAC.本地 来自Don Burleson的网站:
…问题最有可能出现在客户端计算机主机文件中。检查客户机主机文件中是否有客户机完全限定名和短名称。使用数据库verison更新了我的问题,并且它不在运行macOS的同一台机器上。数据库在Ubuntu机器上。我的主机文件是这样的:127.0.0.1 localhost localhost.localdomain 10.2.94.217 lynx,因为我的oracle服务器ip是10.2.94.217,运行oracle服务器的Ubuntu机器的主机名是lynx。仍然不工作在Mac终端中键入主机名会得到什么?QGMAC:~gabor_dev$hostname QGMAC.localDuplicate也提供了解决方案。