用DB2创建连接字符串的疑惑。

问题描述 投票:0回答:1

我想知道有没有人有DB2数据库的连接字符串模型?

数据库位于Linux Centos 7服务器上。

我试过这样的方法。

db2 Database=SI;Hostname=VMCENTDB2;Protocol=TCPIP;Port=3700;Uid=db2inst1;Pwd=password;

但没有成功,返回了以下信息:

DB21034E 该命令被当作SQL语句处理 因为它不是有效的命令行处理器命令 在SQL处理过程中,它返回了以下信息。SQL1024N 一个数据库连接不存在。 SQLSTATE=08003

先谢谢你了。

sql linux database db2 database-administration
1个回答
2
投票

你的命令对 db2 命令,因为它不接受连接字符串。其他工具可以。

如果你想连接到一个Db2-数据库。从shell命令行 你有不同的工具提供的不同选择。

  • 使用 db2 命令(需要完成之前的目录操作)。
  • 使用CLPplus命令(接受连接字符串)
  • 使用一个类似于odbc iterface的 isql
  • 使用 db2cli 工具(更适合专家,也需要预先配置db2dsdriver.cfg和or db2cli.ini)。

不同的选项适用于不同的目的,以及不同的技能组合等。

你可以使用Db2命令行处理器=的? db2命令,通过使用 db2 connect to $DATABASENAME user $USER using $PASSWD (你为变量提供你自己的值)。 这不接受连接字符串。但是,在远程连接命令成功之前,你必须 节点目录 数据库所处的位置(使用 db2 catalog tcpip node .... remote ... server ... 命令),然后 数据库编目 在该节点上使用 db2 catalog database $DBNAME as $DBALIAS at node $NODENAME 命令,请参考在线Db2知识中心。 有关这些命令的详细信息,请参考在线Db2知识中心。 这是MS-Windows、Linux或Unix中最古老的Db2 shell接口形式,对脚本非常友好,适用于 cmd.exe 或bash或ksh等。 但是很多人不喜欢远程工作的前提条件的目录操作,虽然很容易脚本化。

需要注意的是,如果你通过ssh连接到centos服务器,并得到一个shell,那么你就不需要对本地数据库进行编目,你可以使用连接到它们的 db2 命令,只要你的登录shell点在正确的db2profile文件中。

不能 使用Db2-CLP(命令行处理器)的连接字符串,但你可以使用 可以 在基于java的 CLPPlus 工具,从而避免了对目录的需求。CLPlus对于熟悉Oracle SQLPlus语法而又不需要任何目录操作的人来说是很有用的。

CLPPlus命令与Db2-server一起,与Db2运行时客户端和Db2数据服务器客户端一起,但它不与占用空间很小的Db2 clidriver一起。 详细使用方法请参考文档。

© www.soinside.com 2019 - 2024. All rights reserved.