从Linux命令行连接到远程DB2

时间:2017-03-10 12:48:04

标签: linux db2 debian

我想连接到运行DB2 for I的远程DB2实例。基本上我想从DB2批量加载数据并将其传输到本地postgres中。

我的机器有Debian Jessie,我下载并安装了 IBM Data Server Runtime Client(Linux AMD64和Intel EM64T)

我通过数据库管理工具(dbeaver)测试了连接,它可以工作。但是,我无法让CLI在任何模式下工作。我尝试遵循IBM指南(如https://www.ibm.com/support/knowledgecenter/en/SSEPEK_10.0.0/comref/src/tpc/db2z_clpconnectsyntax.html),但无济于事。

以上指南建议:

db2 => CONNECT TO myIP:myPort/myDB USER myid01 USING mypw01

但是我得到了

SQL0104N  An unexpected token "myIP:myPort/myDB" was found following 
"TO".  Expected tokens may include:  "<database-alias>".  SQLSTATE=42601

我无法找到IBM纪录片中的任何内容。

1 个答案:

答案 0 :(得分:1)

错误说明:

update myTable set ColumnA = SUBSTRING(ColumnA, 0, CHARINDEX('/',ColumnA)), ColumnB= SUBSTRING(ColumnA, CHARINDEX('/',ColumnA)+1, len(ColumnA))

您需要在命令中添加它,例如:

Expected tokens may include:  "<database-alias>"

可以通过编目连接(https://www.ibm.com/support/knowledgecenter/SSSNY3_10.1.0/com.ibm.db2.luw.qb.client.doc/doc/t0005621.html)来创建database_alias。您可能需要运行以下命令:

db2 => CONNECT TO myIP:myPort/DB_ALIAS.myDB USER myid01 USING mypw01