DB2:Python ibm_db2连接,使用哪个端口?

时间:2018-03-25 06:31:17

标签: python db2

我正在尝试连接到远程db2实例。我似乎有连接端口问题或协议问题。以下是示例连接设置。什么是使用TCPIP& amp;的默认连接端口蟒蛇?我到达服务器但无法创建与数据库的连接。数据库存在。

connection = ibm_db.connect("DATABASE=DATABASE_NAME;HOSTNAME=host;PORT=50000;PROTOCOL=TCPIP;UID=username;PWD=password;", "", "")

我收到以下错误:

  

异常:[IBM] [CLI驱动程序] SQL30061N在远程节点上找不到数据库别名或数据库名称“DATABASE_NAME”。 SQLSTATE = 08004 SQLCODE = -30061

1 个答案:

答案 0 :(得分:1)

错误消息似乎很清楚,但原因可能会有所不同。很可能数据库名称或端口号不正确。

如果Db2服务器响应,则表明Db2在侦听指定端口号的Db2实例中的HOSTNAME上找不到指定的数据库,则会收到该消息。

根据可用的硬件资源,Db2-LUW主机名可能同时运行多个Db2实例(每个实例侦听不同的端口号)。

Db2-Linux / Unix / Windows实例中可以包含许多物理数据库,每个物理数据库都有一个不同的名称和一个或多个别名。

向您的DBA或同事询问每个主机名的正确数据库名称和端口号。

或者ssh(或远程桌面)到该主机名,找到侦听端口50,000(或您正在使用的任何端口)的进程的所有者(userid),成为该用户ID(对于Linux) / Unix:使用su或sudo)并使用db2 list db directory命令显示该Db2实例中的本地数据库。对于Windows上的Db2服务器:启动> db2cwadmin.bat> db2 list db目录。在Linux / Unix上,使用ps -ef | grep db2sysc查看有多少Db2实例正在运行,您可以使用该信息(以及netstat)来发现他们正在侦听的端口。